fruworg.github.io/content/posts/ssh-2fa-totp.md

50 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Двухфакторная аутентификация для SSH
description: 2fa, totp, google-authenticator
date: 2022-11-29T13:35:00+05:00
tags: [linux, ssh]
---
## Установка пакета
```shell
apt install -y openssh-server libpam-google-authenticator
```
## Правка конфига PAM
В файл `/etc/pam.d/common-auth` необходимо добавить следующее:
```python
auth required pam_google_authenticator.so
```
## Правка конфига ssh
В файл `/etc/ssh/sshd_config` необходимо добавить следующее:
```python
ChallengeResponseAuthentication yes
```
## Конфигурация аутентификации
Следующая команда сконфигурирует TOTP.
Запускать команду следует от имени того пользователя,
к которому будет инициализированно подключение.
```shell
google-authenticator
```
## Управление факторами (необязательно)
Для запроса ключа при аутентификации необходимо в файл `/etc/ssh/sshd_config` добавить следующее:
```python
AuthenticationMethods publickey,password publickey,keyboard-interactive
```
Для отключения запроса пароля при аутентификации необходимо в файле `/etc/pam.d/sshd` закомментировать следующюю строку:
```python
# @include common-auth
```
## Перезапуск сервиса ssh
```shell
systemctl restart ssh
```