Я установил libpam-google-authenticator в соответствии с https://www.digitalocean.com/community/tutorials/how-to-set-up-multi-factor-authentication-for-ssh-on-ubuntu- 16-04
Это работает, но проблема в том, что я не могу войти с паролем, он должен быть с ключом. Если ключа нет, я получаю разрешение на отказ от открытого ключа, даже не запрашивая пароль. Как я могу заставить его работать с открытым ключом + два фактора ИЛИ пароль + два фактора?
Я несколько придумал решение.
Сначала создайте пользователя без пароля, например:
sudo adduser backup --disabled-password
, затем в /etc/ssh/sshd_config:
Match User backup
AuthenticationMethods publickey keyboard-interactive
ForceCommand sudo login
и внизу sudo visudo:
backup ALL=(ALL:ALL) NOPASSWD:/bin/login
Наконец, запустите
google-authenticator
в качестве пользователя backup. Или, вы могли бы скопировать ваш
.google_authenticator
файл новому пользователю.
Теперь, когда мне нужно войти без моего личного ключа, я ssh на пользователя backup, введите мой двухфакторный код, затем я получаю приглашение для входа в систему, которое позволяет мне войти в систему моему основному пользователю.
Я несколько придумал решение.
Сначала создайте пользователя без пароля, например:
sudo adduser backup --disabled-password
, затем в /etc/ssh/sshd_config:
Match User backup
AuthenticationMethods publickey keyboard-interactive
ForceCommand sudo login
и внизу sudo visudo:
backup ALL=(ALL:ALL) NOPASSWD:/bin/login
Наконец, запустите
google-authenticator
в качестве пользователя backup. Или, вы могли бы скопировать ваш
.google_authenticator
файл новому пользователю.
Теперь, когда мне нужно войти без моего личного ключа, я ssh на пользователя backup, введите мой двухфакторный код, затем я получаю приглашение для входа в систему, которое позволяет мне войти в систему моему основному пользователю.
Я несколько придумал решение.
Сначала создайте пользователя без пароля, например:
sudo adduser backup --disabled-password
, затем в /etc/ssh/sshd_config:
Match User backup
AuthenticationMethods publickey keyboard-interactive
ForceCommand sudo login
и внизу sudo visudo:
backup ALL=(ALL:ALL) NOPASSWD:/bin/login
Наконец, запустите
google-authenticator
в качестве пользователя backup. Или, вы могли бы скопировать ваш
.google_authenticator
файл новому пользователю.
Теперь, когда мне нужно войти без моего личного ключа, я ssh на пользователя backup, введите мой двухфакторный код, затем я получаю приглашение для входа в систему, которое позволяет мне войти в систему моему основному пользователю.