Вот вопрос, на который я не нашел абсолютно никаких ответов: как можно настроить sshd, чтобы любой мог свободно подключаться по SSH к ящику без пароля или аутентификации с помощью ключа? Цель состоит в том, чтобы позволить кому угодно запустить "ssh user @ host" и войти в ящик без необходимости вводить пароль или настраивать какие-либо ключи. Это вообще возможно?
Прежде чем кто-либо спросит, я прекрасно понимаю, что на практике это плохая идея, однако это чисто для сервера песочницы, который я использую в учебных целях.
Отказ от ответственности: Я бы никогда не рекомендовал это делать.
Я предполагаю, что это для локальной сети, надеюсь, не для интернет-системы, но вы можете создать пользователя без пароля и включить следующую опцию в конфигурации OpenSSHd:
PermitEmptyPasswords yes
Чтобы удалить пароль от пользователя, вы можете использовать -d
с passwd.
passwd -d username
Правильный способ использования ключей SSH
Вы генерируете пару ключей SSH для себя, способ ее создания зависит от вашего клиента. Для Linux это ssh-keygen
. Вы можете использовать пустой пароль при генерации ключа, чтобы вам не приходилось вводить его при входе в систему.
На своем сервере вы можете сохранить открытый ключ (id_rsa.pub) в строке файла authorized_keys, который обычно находится в пользовательском .ssh
каталог. Этот файл может потребоваться создать. (Для одного ключа достаточно скопировать id_rsa.pub на сервер как ~ / .ssh / authorized_keys).
Файл закрытого ключа никогда не должен публиковаться, но может быть предоставлен любому, кому вы хотите иметь доступ к этому user @ machine.