З кожним днем питання кібербезпеки стає все більш актуальним. Системні адміністратори, програмісти, власники серверів Linux мають особливо пильнувати за безпекою своїх систем. Одним із найефективніших методів захисту є впровадження двофакторної авторизації (2FA). Вона значно ускладнює доступ до системи для зловмисників, навіть якщо вони здобудуть пароль.
У цій статті ми розглянемо, як налаштувати двофакторну авторизацію на Linux, використовуючи Google Authenticator або інші популярні рішення.
Що таке двофакторна авторизація?
Двофакторна авторизація (2FA) — це метод захисту, який додає додатковий рівень безпеки при вході до системи. Окрім пароля, система запитує другий фактор — код, який може бути згенерований спеціальним додатком або надісланий на телефон. Така авторизація гарантує, що навіть у разі витоку пароля зловмисник не зможе увійти в систему без одноразового коду.
Вимоги
Для налаштування 2FA на Linux-сервері знадобляться такі компоненти:
- Google Authenticator або інший додаток для генерації одноразових кодів.
- Доступ до терміналу Linux з правами адміністратора.
Встановлення Google Authenticator на Linux
Крок 1: Встановлення пакету
Перш за все, потрібно встановити пакет Google Authenticator. Він доступний в офіційних репозиторіях багатьох Linux-дистрибутивів.
Для Ubuntu або Debian виконайте команду:
sudo apt update
sudo apt install libpam-google-authenticator
Для CentOS або RHEL:
sudo yum install epel-release
sudo yum install google-authenticator
Крок 2: Налаштування Google Authenticator для користувача
Після встановлення, увійдіть під користувачем, для якого хочете налаштувати 2FA, і виконайте команду:
google-authenticator
Це запустить майстер налаштування, який запропонує кілька запитань.
- Do you want authentication tokens to be time-based? Введіть “y” для підтвердження використання тимчасових токенів.
- Потім майстер згенерує QR-код, який ви зможете відсканувати за допомогою додатка Google Authenticator на смартфоні.
- Також система надасть кілька резервних кодів, які можна використовувати у разі втрати доступу до телефону. Збережіть їх у надійному місці.
Крок 3: Налаштування параметрів безпеки
Далі майстер запитає кілька параметрів безпеки:
- Update the .google_authenticator file? Введіть “y”, щоб зберегти нові налаштування.
- Disallow multiple uses of the same token? Введіть “y” для додаткового захисту.
- Increase the time window? Введіть “n”, якщо у вас немає проблем із затримкою часу на сервері.
- Enable rate-limiting? Введіть “y” для обмеження кількості невдалих спроб входу.
Налаштування PAM для використання 2FA
Після налаштування Google Authenticator, необхідно змінити конфігурацію PAM (Pluggable Authentication Modules), щоб включити двофакторну авторизацію для SSH.
Крок 1: Відкрийте файл PAM
Відкрийте файл /etc/pam.d/sshd
(або /etc/pam.d/common-auth
для деяких дистрибутивів) у редакторі:
sudo nano /etc/pam.d/sshd
Додайте такий рядок у верхній частині файлу:
auth required pam_google_authenticator.so
Відкрийте файл /etc/ssh/sshd_config
у редакторі та додайте наступне:
ChallengeResponseAuthentication yes
AuthenticationMethods publickey,password publickey,keyboard-interactive
Крок 2: Перезапуск служби SSH
Після внесення змін перезапустіть службу SSH, щоб застосувати нові налаштування:
sudo systemctl restart ssh
Перевірка налаштувань
Тепер, коли ви намагатиметеся увійти в систему через SSH, система спочатку запитає ваш пароль, а потім одноразовий код з додатка Google Authenticator.
Резервні коди
Після налаштування двофакторної авторизації варто подбати про резервні коди. Вони допоможуть увійти в систему у випадку втрати телефону або доступу до генератора кодів. Збережіть їх у надійному місці.
Залишити відповідь