ssh

Как включить двухфакторную аутентификацию для SSH в Fedora Linux

Как включить двухфакторную аутентификацию для SSH в Fedora Linux

В мире информационных технологий безопасность является серьезной проблемой в наши дни. Каждый день на организации совершаются новые и изощренные атаки. Системные администраторы используют разные способы повышения безопасности своих серверов. Один из распространенных способов взаимодействия с сервером - использование SSH (или SEcure SHell) протокол, который широко используется для удаленного входа на сервер. Помимо удаленного входа в оболочку, он также используется для копирования файлов между двумя компьютерами. В отличие от других методов, таких как telnet, rcp, ftp и т. Д., Протокол SSH использует механизм шифрования для защиты связи между двумя хостами.

Безопасность, обеспечиваемая протоколом SSH, может быть дополнительно повышена за счет использования двухфакторной аутентификации. Это дополнительно поставит прочную стену между вашим хост-компьютером и злоумышленниками. Чтобы подключиться к удаленному серверу с помощью SSH, вам потребуется пароль, а также код подтверждения (или OTP) из приложения-аутентификатора, запущенного на вашем мобильном устройстве. Это действительно полезно, если злоумышленник украдет ваш пароль, он не сможет войти на ваш сервер без проверочного кода.

Для мобильных устройств под управлением Android или Apple IOS доступно множество приложений-аутентификаторов. В этом руководстве используется приложение Google Authenticator как для сервера Fedora, так и для мобильного устройства.

Что мы рассмотрим

В этом руководстве будет показано, как мы можем использовать двухфакторную аутентификацию с протоколом SSH для предотвращения несанкционированного доступа к нашей рабочей станции Fedora 30. Мы попытаемся войти на наш сервер Fedora с клиентской машины Xubuntu, чтобы увидеть, работает ли установка должным образом. Приступим к настройке SSH с двухфакторной аутентификацией.

Предпосылки

  1. ОС Fedora 30, установленная на удаленном сервере с учетной записью пользователя sudo.
  2. Машина Xubuntu для доступа к указанному выше серверу.
  3. Мобильное устройство с установленным на нем приложением Google-Authenticator.

Обзор установки

  1. Машина Fedora 30 с IP: 192.168.43 год.92
  2. Машина Xubuntu с IP: 192.168.43 год.71
  3. Мобильное устройство с приложением Google-Authenticator.

Шаг 1. Установите Google-Authenticator на сервер Fedora 30 с помощью команды:

$ sudo dnf install -y гугл-аутентификатор

Шаг 2. Выполните следующую команду, чтобы запустить Google-Authenticator на вашем сервере:

$ google-аутентификатор

Он задаст несколько вопросов для настройки сервера для работы с вашим мобильным устройством:

Вы хотите, чтобы токены аутентификации были привязаны ко времени (да / нет) y [введите здесь "Y"]

Он отобразит QR-код в окне терминала; пока оставьте это окно терминала открытым.

Шаг 3. Установите приложение Google-Authenticator на свое мобильное устройство и откройте его. Теперь выберите опцию "Сканировать QR-код".Теперь сфокусируйте свою мобильную камеру на сканировании QR-кода в окне терминала вашего сервера.

Шаг 4. После сканирования QR-кода ваше мобильное устройство добавит учетную запись для вашего сервера и сгенерирует случайный код, который будет постоянно меняться с вращающимся таймером, как показано на рисунке ниже:

Шаг 5. Теперь вернитесь в окно терминала сервера и введите здесь проверочный код со своего мобильного устройства. После подтверждения кода будет сгенерирован набор скретч-кода. Эти скретч-коды можно использовать для входа на ваш сервер в случае потери мобильного устройства. Итак, сохраните их в надежном месте.

ШАГ 6. На дальнейших шагах он задаст несколько вопросов, чтобы завершить настройку. Ниже мы привели набор вопросов и ответы на них для настройки установки. Вы можете изменить эти ответы в соответствии с вашими потребностями:

Вы хотите, чтобы я обновил ваш "/ home / linuxhint /.google_authenticator "файл? (y / n) y [введите здесь 'y']
Вы хотите запретить многократное использование одного и того же токена аутентификации?? Это ограничивает вас одним входом примерно каждые 30 секунд, но увеличивает ваши шансы заметить или даже предотвратить атаки типа "злоумышленник посередине" (да / нет) y [введите здесь 'y']
По умолчанию новый токен генерируется мобильным приложением каждые 30 секунд.Чтобы компенсировать возможный временной сдвиг между клиентом и сервером, мы разрешаем дополнительный токен до и после текущего времени. Это допускает разрыв во времени между сервером аутентификации и клиентом до 30 секунд. Если у вас возникли проблемы с плохой синхронизацией времени, вы можете увеличить размер окна с 3 разрешенных кодов по умолчанию (один предыдущий код, текущий код, следующий код) до 17 разрешенных кодов (8 предыдущих кодов, текущий код и 8 следующих кодов). Это разрешит разрыв во времени между клиентом и сервером до 4 минут. Вы хотите это сделать?? (y / n) y [введите здесь 'y']
Если компьютер, на который вы входите, не защищен от попыток грубой силы, вы можете включить ограничение скорости для модуля аутентификации. По умолчанию это ограничивает злоумышленников не более 3 попыток входа в систему каждые 30 секунд. Вы хотите включить ограничение скорости? (y / n) y [введите здесь 'y']

Шаг 7. Теперь откройте файл sshd_config в любом редакторе

$ sudo vi / etc / ssh / sshd_config

и проделайте следующие шаги:

  1. Раскомментируйте и установите ПарольАутентификация да.
  2. Раскомментируйте и установите ВызовОтветАутентификация да.
  3. Раскомментируйте и установите UsePAM да.

Сохраните и закройте файл.

Шаг 8. Затем откройте / etc / pam.d / sshd файл

$ sudo vi / etc / pam.d / sshd

и добавьте следующие строки под строкой 'auth substack пароль auth:

требуется авторизация pam_google_authenticator.так

Шаг 9. Запустите и включите службу SSH на сервере Fedora с помощью команды:

$ sudo systemctl start sshd
$ sudo systemctl включить sshd

Все шаги по настройке сервера выполнены. Теперь мы перейдем к нашей клиентской машине, я.е., Xubuntu, в нашем случае.

Шаг 10. Теперь попробуйте войти по SSH с машины Xubuntu на сервер Fedora 30:

$ ssh [адрес электронной почты защищен]

Как видите, SSH сначала запрашивает пароль сервера, а затем проверочный код с вашего мобильного устройства. После того, как вы правильно ввели проверочный код, вы можете войти на удаленный сервер Fedora.

Заключение

Поздравляем, мы успешно настроили SSH-доступ с двухфакторной аутентификацией в ОС Fedora 30. Вы можете дополнительно настроить SSH для использования только кода подтверждения для входа без пароля удаленного сервера.

SuperTuxKart для Linux
SuperTuxKart - отличная игра, созданная для того, чтобы бесплатно познакомить вас с Mario Kart в вашей системе Linux. Играть в нее довольно сложно и в...
Учебник Battle for Wesnoth
Битва за Веснот - одна из самых популярных стратегических игр с открытым исходным кодом, в которую вы можете играть сейчас. Эта игра не только очень д...
0 А.D. Руководство
Из множества существующих стратегических игр 0 A.D. удается выделиться как всеобъемлющее название и очень глубокая тактическая игра, несмотря на то, ч...