Со временем традиционная аутентификация по имени пользователя и паролю оказалась неадекватной для обеспечения надежной безопасности приложений и систем. Имена пользователей и пароли можно легко взломать с помощью множества хакерских инструментов, что сделает вашу систему уязвимой для взломов. По этой причине любой компании или субъекту, серьезно относящимся к безопасности, необходимо внедрить 2-факторная аутентификация.
В просторечии известный как МИД (Многофакторная аутентификация), Двухфакторная аутентификация обеспечивает дополнительный уровень безопасности, который требует от пользователей предоставления определенных деталей, таких как коды, или OTP (Одноразовый пароль) до или после аутентификации с использованием обычного имени пользователя и пароля.
В настоящее время несколько компаний, таких как Google, Facebook, Твиттер, и AWS, чтобы упомянуть, некоторые из них предоставляют пользователям возможность выбора настройки МИД для дальнейшей защиты своих аккаунтов.
В этом руководстве мы продемонстрируем, как вы можете использовать Двухфакторная аутентификация с Ubuntu.
Во-первых, установите Google PAM упаковка. PAM, сокращение от Подключаемый модуль аутентификации, представляет собой механизм, обеспечивающий дополнительный уровень аутентификации на платформе Linux.
Пакет размещен на Ubuntu репозиторий, поэтому продолжайте и используйте подходящая команда установить его следующим образом:
$ sudo apt install libpam-google-authentication.
При появлении запроса нажмите 'Y'
и нажмите ВОЙТИ чтобы продолжить установку.
Дополнительно вам необходимо установить приложение Google Authenticator на ваше планшет или смартфон. Приложение представит вам 6-значный OTP код, который автоматически обновляется каждые 30 секунд.
С Google Authenticator приложение на месте, мы продолжим и настроим пакет Google PAM на Ubuntu путем изменения /etc/pam.d/common-auth файл, как показано.
$ sudo vim /etc/pam.d/common-auth.
Добавьте строку ниже к файлу, как указано.
требуется авторизация pam_google_authenticator.so.
Сохраните файл и выйдите.
Теперь запустите команду ниже, чтобы инициализировать PAM.
$ google-аутентификатор.
Это вызовет несколько вопросов на экране вашего терминала. Сначала вас спросят, хотите ли вы, чтобы токены аутентификации были привязаны ко времени.
Аутентификация по времени токены истекают через определенное время. По умолчанию это после 30 secs, после чего генерируется новый набор токенов. Эти токены считаются более безопасными, чем токены, не зависящие от времени, и поэтому введите 'y'
за да и ударил ВОЙТИ.
Далее QR код будет отображаться на терминале, как показано ниже и справа под ним, будет отображаться некоторая информация. Отображаемая информация включает:
Вам необходимо сохранить эту информацию в хранилище для использования в будущем. В аварийные скретч-коды чрезвычайно полезны в случае потери устройства аутентификации. Если что-то случится с вашим устройством аутентификации, используйте коды.
Запустить Google Authenticator В приложении на смарт-устройстве и выберите ‘Отсканировать QR-код'Для сканирования представленного QR-кода.
ПРИМЕЧАНИЕ: Вам необходимо развернуть окно терминала, чтобы просканировать весь QR-код. После сканирования QR-кода в приложении отобразится шестизначный одноразовый пароль, который меняется каждые 30 секунд.
После этого выберите 'y'
чтобы обновить файл аутентификатора Google в вашей домашней папке.
В следующем запросе ограничьте вход только одним входом в каждые 30 секунд, чтобы предотвратить атаки, которые могут возникнуть из-за атак «злоумышленник посередине». Так что выберите 'y'
В следующем запросе выберите 'п'
чтобы запретить увеличение продолжительности времени, которое устраняет разрыв во времени между сервером и клиентом. Это более безопасный вариант, если у вас нет проблем с плохой синхронизацией времени.
И, наконец, включите ограничение скорости только 3 попытки входа в систему.
На этом мы закончили реализацию 2-факторная аутентификация особенность. Фактически, если вы запустите любую команду sudo, вам будет предложено ввести проверочный код, который вы можете получить из Приложение Google Authenticator.
Вы можете дополнительно проверить это, перезагрузившись, и как только вы попадете на экран входа в систему, вам будет предложено ввести код подтверждения.
После того, как вы предоставили свой код из Google Authenticator app, просто введите свой пароль для доступа к вашей системе.
Если вы собираетесь использовать SSH с Google PAM модуль, вам необходимо интегрировать два. Этого можно добиться двумя способами.
Включить SSH парольная аутентификация для обычного пользователя, сначала откройте по умолчанию SSH конфигурационный файл.
$ sudo vim / etc / ssh / sshd_config.
И установите следующие атрибуты на 'да' как показано
Для пользователя root установите ‘PermitRootLogin' приписывать 'да'
.
PermitRootLogin да.
Сохраните файл и выйдите.
Затем измените PAM правило для SSH
$ sudo vim /etc/pam.d/sshd.
Затем добавьте следующую строку
требуется авторизация pam_google_authenticator.so.
Наконец, перезапустите SSH сервис, чтобы изменения вступили в силу.
$ sudo systemctl restart ssh.
В приведенном ниже примере мы авторизуемся в Ubuntu система из Шпатлевка клиента.
Если вы используете аутентификация с открытым ключом, повторите вышеуказанные шаги и добавьте строку, показанную внизу /etc/ssh/sshd_config файл.
Открытый ключ AuthenticationMethods, интерактивная клавиатура.
Еще раз отредактируйте PAM правило для SSH демон.
$ sudo vim /etc/pam.d/sshd.
Затем добавьте следующую строку.
требуется авторизация pam_google_authenticator.so.
Сохраните файл и перезапустите службу SSH, как мы видели ранее.
$ sudo systemctl restart ssh.
Если вы потеряете устройство аутентификации или секретный ключ, не сходите с ума. Вы можете легко отключить уровень аутентификации 2FA и вернуться к своему простому методу входа в систему с использованием имени пользователя и пароля.
Сначала перезагрузите систему и нажмите 'е'
на первой записи GRUB.
Прокрутите и найдите строку, которая начинается с linux и заканчивается тишиной всплеск $ vt_handoff. Добавить строку systemd.unit = rescue.target и нажмите ctrl + x войти в режим спасения
Как только вы получите оболочку, укажите пароль root и нажмите ВОЙТИ.
Затем продолжите и удалите .google-Authenticator файл в вашем домашнем каталоге следующим образом. Обязательно замените имя пользователя своим собственным именем пользователя.
# rm /home/username/.google_authenticator.
Затем отредактируйте /etc/pam.d/common-auth файл.
# $ vim /etc/pam.d/common-auth.
Прокомментируйте или удалите следующую строку:
требуется авторизация pam_google_authenticator.so.
Сохраните файл и перезагрузите вашу систему. На экране входа в систему вам потребуется только указать свое имя пользователя и пароль для аутентификации.
На этом мы подошли к концу статьи. Будем рады услышать, как все прошло.