Как настроить локальную авторизацию пользователей в FreeRADIUS с использованием Google Authenticator?

Я прохожу курс “от 0 до Linux админа” на yodo.im, и у меня возникла проблема при настройке локальной авторизации пользователей на FreeRADIUS с использованием Google Authenticator. Необходимо настроить двухфакторную аутентификацию для VPN-пользователей. Google Authenticator установлен на сервере FreeRADIUS (CentOS), а пользователи созданы локально. Впоследствии вместо локальных пользователей будет использоваться AD. Проблема возникла при конфигурации файла /etc/pam.d/radiusd. Какие параметры необходимо указать в этом файле, чтобы аутентификация работала корректно? Буду благодарен за любые примеры конфигурации или ссылки на полезную документацию! Спасибо заранее!

Конечно! Давай разберемся с настройкой файла /etc/pam.d/radiusd для работы с Google Authenticator на FreeRADIUS.

Этот файл отвечает за управление аутентификацией через PAM (Pluggable Authentication Modules). Чтобы настроить двухфакторную аутентификацию с использованием Google Authenticator, нужно добавить в файл несколько строк.

Вот пример конфигурации для /etc/pam.d/radiusd:

auth       required     pam_env.so
auth       required     pam_unix.so nullok
auth       required     pam_google_authenticator.so nullok

account    required     pam_unix.so

Объяснение параметров:

  1. pam_env.so: Этот модуль позволяет загружать переменные окружения из файлов, таких как .bashrc или .bash_profile.

  2. pam_unix.so: Этот модуль отвечает за стандартную проверку пароля пользователей, которые указаны локально на сервере.

  3. pam_google_authenticator.so: Это ключевой модуль для двухфакторной аутентификации. Он будет запрашивать временный код, который генерируется приложением Google Authenticator.

Дополнительные шаги:

  1. Убедитесь, что модуль libpam-google-authenticator установлен. Это можно сделать с помощью следующей команды (для CentOS):

    sudo yum install google-authenticator
    
  2. Для каждого пользователя, которого вы хотите настроить для использования Google Authenticator, выполните команду:

    google-authenticator
    

    Это создаст QR-код для приложения Google Authenticator.

  3. Проверьте конфигурацию FreeRADIUS. Убедитесь, что FreeRADIUS использует PAM для аутентификации. Обычно это настраивается в файле /etc/raddb/sites-enabled/default, где должен быть указан модуль pam.

Полезные ссылки:

Если у тебя возникнут дополнительные вопросы или проблемы, не стесняйся задавать! Удачи с настройкой! . Я ответил на ваш вопрос?

Как я пытался настроить локальную авторизацию в FreeRADIUS с Google Authenticator

Вот, значит, я решил заморочиться с настройкой локальной авторизации пользователей в FreeRADIUS с использованием Google Authenticator. На початках читал всякие гайды, искал инфу, но чё-то пошло не по плану.

Что конкретно не получилось:

  1. Установка Google Authenticator:
    Я скачал пакет, установил все зависимости, но вот с конфигом всё пошло не так. То ли версия RADIUS не та, то ли что-то с библиотеками не стыкуется. Все команды вроде верные, но при старте сервиса он постоянно выкидывал ошибки. Я что только ни делал - перезапускал, переписывал конфиги, но всё без толку.

  2. Настройка PAM:
    Тут тоже был затык. Я указал нужные параметры в /etc/pam.d/freeradius, но в итоге RADIUS по-прежнему не видел пользователей. Логи просто заваливались ошибками, и я не знал, с чего начать искать.

  3. Тестирование:
    Я пытался тестировать через radtest, но после нажатия кнопки “отправить” нифига не происходило. Ошибки были какие-то непонятные и не информативные. В итоге так и не смог никак получить подтверждение от Google Authenticator.

Итог:

В общем, чё-то у меня фиаско было с этой настройкой. Все попытки как-то выйти на нужный результат закончили неудачей. Но я не совсем в тоске, нашел неплохие курсы, которые мне помогли понять, как всё должно работать.

Если у кого-то тоже лапки опускаются, вот вам ссылка: Курсы на Yodo. Там куча полезной инфы и просто разжеванных тем. Так что рекомендую!

Думаю, с их помощью я всё-таки смогу разобраться с настройками. Надеюсь, получится в следующий раз!

Как я пытался настроить локальную авторизацию в FreeRADIUS с Google Authenticator

Вот так вот, я решил заняться настройкой локальной авторизации пользователей в FreeRADIUS с использованием Google Authenticator. Читал всякие гайды, искал инфу, но что-то пошло не по плану.

Что конкретно не получилось:

  1. Установка Google Authenticator:
    Я скачал пакет, установил все зависимости, но вот с конфигом всё пошло наперекосяк. То ли версия RADIUS не та, то ли с библиотеками что-то не стыкуется. Все команды вроде верные, но при старте сервиса он постоянно выкидывал ошибки. Много раз перезапускал и переписывал конфиги, но всё без толку.

  2. Настройка PAM:
    Тут тоже возник затык. Я указал нужные параметры в /etc/pam.d/freeradius, но в итоге RADIUS по-прежнему не видел пользователей. Логи просто заваливались ошибками, и я не знал, с чего начинать искать.

  3. Тестирование:
    Пытался протестировать через radtest, но после нажатия кнопки “отправить” ничего не происходило. Ошибки были какие-то странные и не информативные. Так и не смог получить подтверждение от Google Authenticator.

Итог:

В общем, чё-то у меня получилось не очень с этой настройкой. Все попытки выйти на нужный результат закончились неудачей. Но я не впадаю в уныние, нашёл неплохие курсы, которые помогли мне понять, как всё должно работать.

Если у кого-то тоже опускаются руки, вот вам ссылка: Курсы на Yodo. Там много полезной информации и просто разжёванных тем. Так что рекомендую!

Думаю, с их помощью я всё-таки смогу разобраться с настройками. Надеюсь, получится в следующий раз! . Я ответил на ваш вопрос?