Назад | Перейти на главную страницу

Как автоматизировать отправку пользователям нового открытого ключа SSH-сервера?

Когда пара ключей SSH-сервера, то есть ключи на

/etc/ssh/ssh_host_(rsa|dsa|ecdsa|etc)_key

и в

/etc/ssh/ssh_host_(rsa|dsa|ecdsa|etc)_key.pub

обновляются, пользователи SSH должны быть уведомлены о новом открытом ключе сервера.

Предполагая, что адрес электронной почты используется в качестве комментария к общему ключу для каждого пользователя, есть ли способ автоматически уведомить каждого пользователя SSH об изменении пары ключей сервера?

Есть ли инструмент, который может это сделать, или мне стоит свернуть свой собственный (shell|python|etc) сценарий?

Было бы интересно отметить, что ваш DNS-сервер может включать SSHFP записи. Это точно не ответит на ваш вопрос, хотя может быть частью вашего решения:

Всякий раз, когда пары ключей вашего сервера меняются, у вас может быть способ обновить эти записи DNS (я делаю это с помощью марионетки). Хотя в последний раз я проверял, интеграция клиентов все еще ограничена.

Открытые ключи - это всего лишь общедоступные. Если вы публикуете информацию об открытом ключе каким-либо альтернативным способом (веб-страница, o отправка электронного письма, как вы предлагаете), все они действительны. Но ... другой партнер может заподозрить это изменение. Есть ли способ подтвердить, что отправленное вами электронное письмо является законным? (возможно, если вы используете PGP). Если вы публикуете свой открытый ключ на «официальной» веб-странице, это значит, что открытый ключ настоящий? (возможно, если ваша домашняя страница не была взломана).

Когда клиент ssh пытается подключиться при изменении открытого ключа, он знает об этом. Может быть, достаточно просто отправить письмо с уведомлением о смене ключа.