Как настроить двухфакторную аутентификацию для Raspberry Pi

Двухфакторная аутентификация Raspberry Pi Mfa

SSH - один из самых популярных способов управления Raspberry Pi с ноутбука или ПК. Здесь вы узнаете, как настроить двухфакторную аутентификацию для SSH-доступа к Raspberry Pi и добавить к нему дополнительный уровень безопасности.

Примечание. Если вы используете файл ключей SSH для доступа к Raspberry Pi, двухфакторная аутентификация использоваться не будет.

Обновите свой Pi

Предполагая, что вы уже настроили Raspberry Pi с ОС Raspberry Pi, лучше сначала проверить, обновлено ли все ваше программное обеспечение. Откройте терминал и введите следующую команду:

Включить SSH

В ОС Raspberry Pi по умолчанию отключен SSH-сервер. Прежде чем вы сможете подключиться к вашему Pi через SSH, вам необходимо включить его, выполнив следующие команды терминала:

Включите SSH на Raspberry Pi.

Теперь вы можете подключиться к SSH-серверу.

Требовать идентификацию аутентификации с запросом-ответом

В конечном итоге вашему Raspberry Pi необходимо запросить у вас аутентификацию вашей личности, а затем обработать ваш ответ, что означает, что вам нужно включить пароли запроса-ответа.

Для начала откройте файл конфигурации SSH для редактирования, выполнив следующую команду терминала:

В этом файле найдите раздел ChallengeResponseAuthentication и измените его с "нет" на "да".

Найти

Теперь вы можете сохранить обновленный файл "sshd_config", нажав Ctrl + O, а затем Ctrl + X.

Вернувшись в Терминал, перезапустите демон SSH с новой конфигурацией:

Поскольку в конфигурацию SSH были внесены изменения, рекомендуется убедиться, что вы все еще можете подключиться к Raspberry Pi через SSH.

Чтобы подключиться к SSH-серверу, вам необходимо знать IP-адрес вашего Raspberry Pi. Если у вас еще нет этой информации, выполните на своем Pi следующую команду:

Это вернет нужный IP-адрес.

Переключитесь на свой ноутбук или компьютер, запустите Терминал, а затем подключитесь к Raspberry Pi, обязательно заменив "10.3.000.0" своим уникальным IP-адресом:

Теперь вы подключены по SSH.

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

Затем загрузите приложение Authenticator для генерации одноразового кода аутентификации. На рынке есть различные приложения для аутентификации, но для этого урока я использую Google Authenticator, который доступен как для iOS, так и для Android.

Вы можете бесплатно скачать приложение Google Authenticator из Google Play.

После загрузки этого мобильного приложения вам также потребуется установить модуль PAM Google Authenticator на свой Raspberry Pi.

На вашем Pi откройте окно терминала и выполните следующую команду:

После установки Google Authenticator на Raspberry Pi и на мобильное устройство вы можете настроить двухфакторную аутентификацию.

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

Чтобы создать связь между вашим мобильным приложением и Raspberry Pi, сгенерируйте QR-код на своем Pi, а затем отсканируйте этот код с помощью смартфона или планшета.

Чтобы сгенерировать QR-код, вернитесь к Raspberry Pi и выполните следующую команду терминала:

Ваш Raspberry Pi спросит, должны ли его токены аутентификации быть ограничены по времени. Поскольку это более безопасно, вы обычно хотите сгенерировать токены аутентификации на основе времени, если у вас нет особой причины не делать этого.

Для создания чувствительных ко времени токенов рекомендуется использовать Google Authenticator.

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

Также есть ряд аварийных кодов. Если вы когда-нибудь потеряете, потеряете или сломаете мобильное устройство, эти коды позволят вам получить доступ к Raspberry Pi через SSH, даже без мобильного устройства. Не рискуйте получить доступ к Raspberry Pi. Запишите эти коды и храните их в надежном месте.

Используйте этот QR-код для подключения Raspberry Pi к приложению Google Authenticator:

1. На смартфоне или планшете запустите приложение Google Authenticator.

2. В правом нижнем углу нажмите на знак "+".

3. Выберите "Сканировать штрих-код QR". При появлении запроса предоставьте приложению разрешение на доступ к камере вашего устройства.

4. Поднесите камеру устройства к монитору и наведите ее на QR-код. Как только ваш смартфон или планшет распознает QR-код, он создаст учетную запись и автоматически начнет генерировать коды аутентификации.

5. Вернитесь к Raspberry Pi; Терминал предложит вам обновить файл "google_authenticator". Нажмите клавишу Y на клавиатуре.

6. Вас спросят, хотите ли вы запретить нескольким людям использовать один и тот же токен аутентификации. Нажмите клавишу Y на клавиатуре.

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

8. Терминал теперь попросит вас включить ограничение скорости, которое ограничит вас (и потенциальных хакеров!) Тремя попытками входа в систему каждые 30 секунд. Ограничение скорости может помочь защитить вас от грубой силы и других атак на основе пароля, поэтому вам следует выбрать "Да", если у вас нет конкретной причины не делать этого.

Подключаемые модули аутентификации Linux

Наконец, вам необходимо включить двухфакторную аутентификацию для вашего Raspberry Pi с помощью подключаемых модулей аутентификации Linux (PAM).

Для начала откройте файл "sshd" в текстовом редакторе Nano:

Добавьте следующую строку:

Однако то, где вы добавляете следующую строку, имеет значение:

1. После ввода пароля

Если вы хотите, чтобы вам предлагалось ввести одноразовый код аутентификации после ввода пароля Raspberry Pi, добавьте эту строку после @include.

Я хочу, чтобы меня попросили ввести код аутентификации перед вводом пароля.

2. Перед вводом пароля

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

После внесения этих изменений сохраните файл, нажав Ctrl + O, а затем Ctrl + X .

Перезапустите демон SSH:

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

Теперь, когда вы попытаетесь подключиться к Raspberry Pi через SSH, вам будет предложено ввести код подтверждения.

Теперь, когда вы настроили двухфакторную аутентификацию на своем Raspberry Pi, вы можете приступить к настройке своего личный веб-сервер или музыкального сервера. Вы также можете повысить безопасность своего SSH с помощью этих уловок.

По теме: