--- title: Двухфакторная аутентификация для SSH description: 2fa, totp, google-authenticator date: 2022-11-29T13:35:00+05:00 tags: [linux, ssh] --- ## Установка пакета ```shell apt install -y openssh-server libpam-google-authenticator ``` ## Правка конфига PAM В файл `/etc/pam.d/common-auth` необходимо добавить следующее: ```python auth required pam_google_authenticator.so ``` ## Правка конфига ssh В файл `/etc/ssh/sshd_config` необходимо добавить следующее: ```python ChallengeResponseAuthentication yes ``` ## Конфигурация аутентификации Следующая команда сконфигурирует TOTP. Запускать команду следует от имени того пользователя, к которому будет инициализированно подключение. ```shell google-authenticator ``` ## Управление факторами (необязательно) Для запроса ключа при аутентификации необходимо в файл `/etc/ssh/sshd_config` добавить следующее: ```python AuthenticationMethods publickey,password publickey,keyboard-interactive ``` Для отключения запроса пароля при аутентификации необходимо в файле `/etc/pam.d/sshd` закомментировать следующюю строку: ```python # @include common-auth ``` ## Перезапуск сервиса ssh ```shell systemctl restart ssh ```