0%

SSH使用谷歌身份验证器

起因

由于个人使用Linux一般对SSH都是用密钥登录,从而导致了一些本机限制,因为私钥在本机。。。

安装谷歌身份验证器

我搭的服务器多数都是Ubuntu/Debian,所以先更新包,然后安装libpam-google-authenticator

sudo apt update --fix-missing && sudo apt -y install libpam-google-authenticator

修改 /etc/pam.d/sshd

首行添加 auth required pam_google_authenticator.so

之后修改SSH配置文件

sudo vi /etc/ssh/sshd_config

ChallengeResponseAuthentication no 改成 ChallengeResponseAuthentication yes

然后打开google-authenticator

google-authenticator

之后会出现一个URL,一个二维码,一个密钥,一个紧急救助码

然后是一坨提示,直接全部y即可

在生成二维码的时候,谷歌验证器会把提示的URL,密钥,紧急救助码等信息写入到~/.google_authenticator文件里面

重启ssh服务

sudo service ssh restart

使用

使用Xshell登录的时候,选择从键盘输入,先输入Verification code(这个是谷歌验证器的码),再输入用户密码,即可登录

删除当前用户的谷歌身份验证

删除用户目录下的.google_authenticator

rm -rf ~/.google_authenticator

欢迎关注我的其它发布渠道