С введением Google Authenticator и возможность используйте его с ssh Мне было интересно, прошел ли кто-нибудь настройку sshd_config, которая
Идея состоит в том, чтобы обычно легко подключаться с помощью ключа и, как правило, в менее дружественной среде, подключаться с помощью двухфакторного механизма.
Да, у меня есть настройки, в которых я могу ssh
на мой сервер с использованием аутентификации с открытым ключом, с откатом к двухфакторной аутентификации с помощью Google Authenticator + пароль, когда мой закрытый ключ недоступен. Вот шаги, которые вы можете использовать для его настройки.
На моем сервере работает Ubuntu Bionic Beaver (18.04.1). Вы можете установить Google Authenticator, используя apt
:
$ sudo apt install libpam-google-authenticator
открыто /etc/pam.d/sshd
и добавьте следующую строку вверху:
auth optional pam_google_authenticator.so
открыто /etc/ssh/sshd_config
и измените одну строку. Существующая линия
ChallengeResponseAuthentication no
и вы должны изменить его на
ChallengeResponseAuthentication yes
Следующим шагом будет включение Google Authenticator для вашей учетной записи. Вы делаете это, просто выполняя:
$ google-authenticator
Убедитесь, что вы запускаете это как пользователь, который будет устанавливать ssh-соединения, не корень. Запишите свой новый секретный ключ и свои аварийные скретч-коды. Мастер задаст вам несколько вопросов, чтобы настроить параметры безопасности для вашей учетной записи.
Я использую приложение Google Authenticator для iPhone. В этом приложении есть кнопка [+], которая позволяет мне добавить новый токен на основе времени, используя секретный ключ, полученный из google-authenticator
команда на моем сервере. Это было тривиально. Я не могу помочь вам с приложениями на любой другой платформе, но полагаю, что процесс такой же простой.
Последнее, что вам нужно сделать, это перезапустить sshd
.
$ sudo /etc/init.d/ssh restart
На этом этапе, когда вы пытаетесь подключиться к серверу, когда ваш закрытый ключ доступен, аутентификация просто работает. Если ваш закрытый ключ недоступен, вам будет предложено ввести код подтверждения, а затем пароль вашей учетной записи.