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

ssh с парольной фразой, возврат к Google Authenticator

С введением Google Authenticator и возможность используйте его с ssh Мне было интересно, прошел ли кто-нибудь настройку sshd_config, которая

Идея состоит в том, чтобы обычно легко подключаться с помощью ключа и, как правило, в менее дружественной среде, подключаться с помощью двухфакторного механизма.

Да, у меня есть настройки, в которых я могу ssh на мой сервер с использованием аутентификации с открытым ключом, с откатом к двухфакторной аутентификации с помощью Google Authenticator + пароль, когда мой закрытый ключ недоступен. Вот шаги, которые вы можете использовать для его настройки.

Установка Google Authenticator

На моем сервере работает Ubuntu Bionic Beaver (18.04.1). Вы можете установить Google Authenticator, используя apt:

$ sudo apt install libpam-google-authenticator

Настройка sshd

открыто /etc/pam.d/sshd и добавьте следующую строку вверху:

auth optional pam_google_authenticator.so

открыто /etc/ssh/sshd_config и измените одну строку. Существующая линия

ChallengeResponseAuthentication no

и вы должны изменить его на

ChallengeResponseAuthentication yes

Настройка Google Authenticator для вашей учетной записи

Следующим шагом будет включение Google Authenticator для вашей учетной записи. Вы делаете это, просто выполняя:

$ google-authenticator

Убедитесь, что вы запускаете это как пользователь, который будет устанавливать ssh-соединения, не корень. Запишите свой новый секретный ключ и свои аварийные скретч-коды. Мастер задаст вам несколько вопросов, чтобы настроить параметры безопасности для вашей учетной записи.

Настройка вашего мобильного приложения

Я использую приложение Google Authenticator для iPhone. В этом приложении есть кнопка [+], которая позволяет мне добавить новый токен на основе времени, используя секретный ключ, полученный из google-authenticator команда на моем сервере. Это было тривиально. Я не могу помочь вам с приложениями на любой другой платформе, но полагаю, что процесс такой же простой.

Нажатие на спусковой крючок

Последнее, что вам нужно сделать, это перезапустить sshd.

$ sudo /etc/init.d/ssh restart

На этом этапе, когда вы пытаетесь подключиться к серверу, когда ваш закрытый ключ доступен, аутентификация просто работает. Если ваш закрытый ключ недоступен, вам будет предложено ввести код подтверждения, а затем пароль вашей учетной записи.

Бинго, двухфакторная аутентификация.