如何使用双重身份验证保护SSH

要使用双重身份验证保护SSH服务器,您可以使用Google身份验证器PAM模块。阅读本教程以扩展您对此主题的了解。

介绍

要使用双重身份验证保护SSH服务器,您可以使用Google身份验证器PAM模块。

每次你连接你必须输入从智能手机的代码。

注意:如果您激活谷歌与认证普通用户而不是根源,你不能用root用户直接登录了。 您将需要首先以新用户身份登录,然后使用su命令切换到超级用户以获取root。

在您对VPS进行任何操作之前,请安装Google Authenticator应用程序,该应用程序适用于Android,iOS和BlackBerry。 使用市场安装应用程式,或使用行动浏览器前往m.google.com/authenticator。 此后连接到您的VPS并切换到root用户。

第一步 - 安装依赖关系

sudo apt-get install libpam-google-authenticator

libqrencode3将自动安装,并允许您使用手机的摄像头直接从控制台扫描qr代码。

第二步 - 编辑配置文件

要使用模块,您必须编辑两个配置文件。

nano /etc/pam.d/sshd

在文件顶部添加以下行:

auth required pam_google_authenticator.so

还有一个文件要编辑:

nano /etc/ssh/sshd_config

查找并更改以下行:

ChallengeResponseAuthentication yes

第三步 - 激活用户的双重身份验证

您可以为root用户或任何其他用户激活google验证器。 切换到应该使用双因素身份验证的用户,并输入:

google-authenticator

您将被提示回答几个问题; 用yes(y)回答前两个问题:

Do you want authentication tokens to be time-based (y/n) y
Do you want me to update your "/home/USERNAME/.google_authenticator" file (y/n) y

您可以根据您的需要回答下一个问题。

您可以使用Google身份验证器应用扫描qr代码,或使用密钥和验证码添加帐户。 不要忘记打印出紧急刮擦代码,并将它们存储在安全的地方!

现在切换回root并重新启动SSH服务器。 如果为root用户添加了双因素身份验证,则可以跳过下一步。

su root 

最后重新启动SSH服务器。

/etc/init.d/ssh restart

而已! 您现在应该有一个具有双因素身份验证的SSH服务器!