Налаштування Google PAM аутентифікації для 2FA на macOS

Цей документ надає покрокову інструкцію з налаштування аутентифікації Google PAM на macOS для ввімкнення двофакторної аутентифікації (2FA) для входу в систему.

Попередні вимоги

  1. Права адміністратора: Для налаштування необхідно мати права адміністратора на системі macOS.
  2. Homebrew: Переконайтесь, що Homebrew встановлений. Якщо він не встановлений, зробіть це за допомогою:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

3. Google Authenticator: Встановіть додаток Google Authenticator на ваш мобільний пристрій (доступний на iOS та Android).

Крок 1: Встановлення модуля Google PAM

  1. Відкрийте термінал.
  2. Встановіть модуль PAM Google Authenticator за допомогою Homebrew:
brew install google-authenticator-libpam

Крок 2: Налаштування PAM Google Authenticator

  1. Перейдіть до облікового запису користувача, для якого ви хочете увімкнути 2FA:
su - 
  1. Згенеруйте конфігураційний файл Google Authenticator, виконавши:
google-authenticator
  1. Дотримуйтесь підказок на екрані:
  • Часові токени: Наберіть y для використання часових токенів.
  • Секретний ключ і QR-код: Запишіть ключ або відскануйте QR-код за допомогою додатка Google Authenticator.
  • Коди для аварійного відновлення: Збережіть їх для відновлення доступу до облікового запису.
  • Обмеження швидкості: Наберіть y для увімкнення обмеження швидкості.
  • Заборона багаторазового використання: Наберіть y для заборони багаторазового використання одного токена.
  1. Цей процес створить файл .google_authenticator у домашньому каталозі користувача.

Крок 3: Налаштування PAM

  1. Відкрийте конфігураційний файл PAM для SSH входу:
sudo nano /etc/pam.d/sshd
  1. Додайте наступний рядок на початок файлу:
auth required /usr/local/lib/security/pam_google_authenticator.so
  1. Збережіть і вийдіть з файлу.

Крок 4: Увімкнення аутентифікації за допомогою запитів-відповідей

  1. Відкрийте конфігураційний файл SSH:
sudo nano /etc/ssh/sshd_config
  1. Знайдіть і змініть наступні рядки:
ChallengeResponseAuthentication yes   
UsePAM yes
  1. Збережіть і вийдіть з файлу.

  2. Перезапустіть службу SSH:

sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd

Крок 5: Тестування конфігурації

  1. Відкрийте новий термінал або SSH-сесію і увійдіть під налаштованим користувачем.
  2. Вам буде запропоновано ввести:
  • Ваш пароль.
  • Код підтвердження з вашого додатку Google Authenticator.
  1. Якщо обидва значення правильні, ви успішно увійдете в систему.

Крок 6: Увімкнення локального входу в систему з 2FA

  1. Відкрийте конфігураційний файл PAM для локальних входів:
sudo nano /etc/pam.d/login
  1. Додайте наступний рядок на початок файлу:
auth required /usr/local/lib/security/pam_google_authenticator.so
  1. Збережіть і вийдіть з файлу.

  2. Вийдіть з системи та перевірте локальний вхід з 2FA.

Усунення неполадок

  • Відсутній модуль PAM: Якщо ви бачите помилку, пов’язану з модулем PAM, перевірте шлях до встановлення:
ls /usr/local/lib/security/
  • Переконайтесь, що pam_google_authenticator.so існує.
  • Коди для відновлення не працюють: Перевірте файл .google_authenticator у домашньому каталозі користувача та переконайтесь, що там є дійсні коди для відновлення.
  • Проблеми з SSH-входом: Переконайтесь, що в /etc/ssh/sshd_config значення UsePAM та ChallengeResponseAuthentication встановлені на yes.

Примітки

  • Переконайтесь, що час системи синхронізовано правильно, щоб уникнути помилок аутентифікації.
  • Періодично перевіряйте дозволи на файл .google_authenticator:
chmod 400 ~/.google_authenticator
  • Використовуйте 2FA для всіх адміністративних облікових записів для підвищення безпеки.

Ця налаштування забезпечує додаткову безпеку для вашої системи macOS, вимагаючи як пароль, так і код для двофакторної аутентифікації при вході в систему.

Перекладено з: Setting Up PAM Google Authentication for 2FA on macOS

Leave a Reply

Your email address will not be published. Required fields are marked *