В настоящее время я отключаю аутентификацию по паролю на всех своих ssh-серверах (хорошая идея дня!). Некоторые из моих серверов используются совместно с другими людьми, и я хочу заставить их использовать ключ ssh с парольной фразой. Можно ли запретить вход по ssh для ключей ssh без парольной фразы?
Как упоминалось в других ответах, вы не можете принудительно использовать парольную фразу для ключа. Однако для обеспечения двухфакторной аутентификации (то, что у вас есть, ключ и что-то, что вы знаете, пароль), вы можете использовать другой вариант.
В более новых версиях OpenSSH вы можете установить RequiredAuthentications2 pubkey,password
параметр в /etc/ssh/sshd_config
. Это заставит пользователя использовать как открытый ключ, так и аутентификацию по паролю, что фактически даст вам двухфакторную аутентификацию.
К сожалению, вы не можете этого сделать, поскольку все это управляется на стороне клиента. Возможно, сейчас самое время познакомить людей с ssh-агент или конкурс, если вы используете замазку / котенок или что-то подобное. Парольную фразу необходимо указать только один раз, когда ключ добавляется к агенту с помощью этого метода.
Нет, это невозможно, так как это 100% обрабатывается на стороне клиента SSH.