У нас есть централизованный сервер, на котором настроен беспарольный SSH для доступа к другим серверам Linux в нашей среде. Проблема, с которой мы сталкиваемся, заключается в том, что когда мы отключаем прямой доступ к консоли root на серверах Linux, беспарольный SSH не работает. Он запрашивает пароль.
Есть ли обходной путь для этого, чтобы наш SSH без пароля работал с отключенным прямым входом root в консоль? В следующем файле я добавляю опцию no.
/etc/ssh/sshd_config:
PermitRootLogin no
решение1
Полностью переписал ответ, так как, по-моему, я неправильно понял, что вы хотите сделать.
Если вы хотите разрешить пользователю root аутентификацию с открытым ключом, но не аутентификацию на основе пароля, вам необходимо установить:
PermitRootLogin prohibit-password
Установка этого значения no
полностью запрещает все входы в систему.
решение2
Я обычно использую такую конфигурацию:
PermitRootLogin yes
PasswordAuthentication no
Также с:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
ChallengeResponseAuthentication no
GSSAPIAuthentication no
Затем у .ssh/authorized_keys
меня есть список открытых SSH-ключей клиентов, которым должен быть разрешен доступ, и пароль запрашиваться не будет.