Двухфакторная аутентификация в Linux для SSH и терминала

Двухфакторная аутентификация в Linux

При входе в систему необходимо ввести пароль, пин-код или ключ. Этот метод может обеспечить только базовый уровень защиты Linux. Более безопасный способ авторизации в Linux — использовать двухэтапную авторизацию (MFA). В статье покажу, как настроить двухфакторную аутентификацию в Linux для авторизации по SSH, использования консоли и выполнения команд Sudo.

Еще по теме: Получение сообщения на почту о входе по SSH

Двухфакторная аутентификация в Linux

Двухэтапную авторизацию в Linux для авторизации по SSH, использования консоли и выполнения команд Sudo, можно настроить без всяких аппаратных токенов, GSM-модемов для отправки SMS и других устройств. Настроить двухэтапную аутентификация в Linux можно с использованием Google Authenticator.

В моем случае, для примера будет использоваться Ubuntu 18.02 установленный в VirtualBox.

Настройка Google Authenticator в Linux

Установите приложение Google Authenticator на свой смартфон.

Настройка PAM Google Authenticator в Linux

Установите модуль PAM Google Authenticator на компьютер в Linux:

Установка PAM Google Authenticator в Linux

Запустите команду и введите y:

Добавьте аккаунт в свой гугл-аутентификатор (в свой смартфон):

Настройка PAM Google Authenticator Linux

Сохраните созданные коды. Это поможет восстановить доступ, в случае потери телефона.

Вход по SSH с помощью двухфакторной аутентификации

В конец файла /etc/pam.d/sshd добавьте строку:

Если хотите заставить каждого пользователя использовать двухэтапную авторизацию в этой системе, тогда удалите nullok.

Настройка входа по SSH с помощью двухфакторной аутентификации

Настройте /etc/ssh/sshd_config и убедитесь, что эта строка имеет значение yes:

Настройка двухфакторной аутентификации SSH

Перезапустите службы sshd:

Если все сделали правильно, тогда будет предложено ввести пароль и код подтверждения.

Настройка двухфакторной аутентификации SSH Linux

Использование терминала после двухфакторной аутентификации

Добавьте строку /etc/pam.d/common-session в конец файла с помощью скрипта:

Как я уже говорил ранее, если вы хотите заставить каждого пользователя использовать двухэтапную авторизацию в этой системе, тогда удалите nullok.

Входа в консоль с помощью двухфакторной аутентификации

Сохраните файл конфигурации.

Попробуйте выйти из консоли и снова войти в систему. Если все сделали правильно, появится запрос ввести пароль и код подтверждения Google Authenticator.

Входа в консоль с двухфакторной аутентификацией

Выполнение команд Sudo после двухфакторной аутентификации

Добавьте строку /etc/pam.d/common-auth в конец файла:

Теперь при попытке выполнить команду sudo, будет предложено ввести пароль и проверочный код.

Sudo с помощью двухфакторной аутентификации

Защитите файл .google_authenticator. Файл содержит ваш основной код подтверждения, который позволит обойти аутентификатор Google.

Двухфакторная аутентификация в Linux

Настройка двухфакторной аутентификация Linux

Заключение

Двухфакторная аутентификация Linux — это то, что позволяет улучшить безопасность системы. Это не позволит злоумышленнику получить доступ к вашей системе с помощью пароля.

Еще по теме:

ВКонтакте
OK
Telegram
WhatsApp
Viber

Добавить комментарий

Ваш адрес email не будет опубликован.