Как настроить двухфакторную аутентификацию в Ubuntu для пользователей Ubuntu, использующих Google authenticator?
Как настроить двухфакторную аутентификацию в Ubuntu для пользователей Ubuntu, использующих Google authenticator (это также можно настроить для учетных записей не из Google)?
1 ответ
Примечание. После того, как вы активировали двухфакторную аутентификацию для пользователя и не задали ее для root, вы никогда не сможете напрямую войти в систему как root. В таком случае можно обойти любого другого пользователя sudo, для которого мы его настроили, а затем использовать sudo su -
переключиться на пользователя root.
Используйте ниже шаги, чтобы настроить его.
Установите ниже указанный пакет, чтобы установить Google authenticator, который мы будем использовать как дополнение к PAM-аутентификации:
sudo apt-get install libpam-google-authenticator
Сейчас редактирую
/etc/pam.d/sshd
этот файл и добавьте Google Authenticator, как указано ниже:*sudo vim /etc/pam.d/sshd
введите внизу вверху этот файл-
auth required pam_google_authenticator.so
Здесь мы должны внести изменения в
/etc/ssh/sshd_config
чтобы ssh использовал Google Authenticator, таким образом мы гарантируем, что ssh использует двухфакторную аутентификацию.vim /etc/ssh/sshd_config
В этом файле мы должны найти
ChallengeResponseAuthentication
и раскомментируйте и / или измените его так, чтобы он выглядел так, как показано ниже (вкратце установите его на "да":P):ChallengeResponseAuthentication yes
Дополнительная или двухфакторная аутентификация GUI, иначе пропустите это и перейдите к шагу 4. Чтобы включить его для входа в GUI, отредактируйте
/etc/pam.d/common-auth
:sudo vim /etc/pam.d/common-auth
а теперь добавь это
auth required pam_google_authenticator.so
над линиейauth [success=1 default=ignore] pam_unix.so nullok_secure
затем сохраните файл.Теперь перейдите на учетную запись, для которой вы хотите его настроить.
(Примечание. Я бы предложил создать в системе не менее двух учетных записей суперпользователей, кроме учетной записи root, и настроить ее как минимум для одной из них в первую очередь, но не для учетной записи root.)sudo su - testuser1
Теперь мы будем использовать команду ниже для настройки двухфакторной аутентификации для этого
testuser1
:google-authenticator
Выполнение этой команды задаст вам следующий вопрос. (рекомендуемый ответ - да)
Хотите ли вы, чтобы токены аутентификации основывались на времени (да / нет)?
После этого он покажет вам QR-код и коды аварийных царапин и некоторые другие детали. Выход должен выглядеть следующим образом:
Теперь вам нужно использовать свой телефон Android / Apple / Blackberry, чтобы загрузить и установить приложение Google Authenticator из соответствующих рынков, например из магазина Google Play. который сгенерирует код для вас, чтобы войти.
Ниже приведены скриншот приложения Icon и приложения, взятые из приложения Android phone.
Запустите приложение на своем телефоне и отсканируйте QR-код, либо используйте секретный ключ и проверочный код, указанный под QR-кодом в системе, который вы также можете увидеть на первом скриншоте выше.
После того, как все это будет сделано, очень важно записать и сохранить ваши аварийные скретч-коды в безопасном месте, так как это коды, которые могут помочь вам в случае, если вы каким-либо образом заблокированы.
На данный момент вы должны взглянуть на нижнюю часть экрана, где он задает вам вопрос ниже. (рекомендуемый ответ - да):
Вы хотите, чтобы я обновил ваш файл "/home/testuser1/.google_authenticator" (да / нет)
Снова он задаст вам еще один вопрос, и рекомендуемый ответ на следующий вопрос также Да:
Вы хотите запретить многократное использование одного и того же токена аутентификации? Это ограничивает вас одним входом примерно каждые 30 секунд, но увеличивает ваши шансы заметить или даже предотвратить атаки "человек посередине" (да / нет)
Следующий вопрос будет таким, как приведенный ниже, и рекомендуемый ответ для него - Нет:
По умолчанию токены работают в течение 30 секунд, и для компенсации возможного перекоса времени между клиентом и сервером мы разрешаем дополнительный токен до и после текущего времени. Если у вас возникли проблемы с плохой синхронизацией времени, вы можете увеличить размер окна по умолчанию от 1:30 минут до 4 минут. Вы хотите сделать это (да / нет) n
И последний вопрос будет таким, как приведенный ниже, и рекомендуемый ответ для него - да:
Если компьютер, на который вы входите, не защищен от попыток входа в систему методом подбора, вы можете включить ограничение скорости для модуля аутентификации. По умолчанию это ограничивает злоумышленников не более 3 попыток входа в систему каждые 30 секунд. Вы хотите включить ограничение скорости (y/n) y
Теперь переключитесь из этой учетной записи, чтобы вернуться к учетной записи root:
exit
Теперь перезапустите службу SSH
service ssh restart
Теперь просто возьмите сеанс ssh для пользователя, для которого вы его настроили, и он сначала попросит вас ввести код подтверждения, который вы можете ввести со своего мобильного телефона, а затем запросит пароль пользователя.
Это все, что требуется для настройки двухфакторной аутентификации. Пожалуйста, не стесняйтесь улучшать ответ там, где это необходимо, и, пожалуйста, извините меня за не очень хороший язык.