如何安全SSH与Google身份验证器
要确保您的 SSH 服务器与容易使用双因素身份验证吗?谷歌提供了必要的软件,与您的 SSH 服务器集成 Google 身份验证器的基于时间的一次性密码 (有意思) 系统。你必须从你的手机输入代码,当您连接时。
Google 身份验证器不给家里打电话"到谷歌 — — 所有的工作都发生在您的 SSH 服务器和您的电话。事实上,Google 身份验证器是完全开放源代码,所以你甚至可以自己检查其源代码。本教程来自于《linux就该这么学》
安装 Google 身份验证器
- 01
要实现多因素身份验证与 Google 身份验证器,我们就需要开源 Google 身份验证器 PAM 模块。PAM 代表"可插入身份验证模块"— — 这是很容易在 Linux 系统中插入不同形式的身份验证方法。 Ubuntu 的软件库包含 Google 身份验证器 PAM 模块容易安装软件包。如果您的 Linux 发行版不包含包,为此,要从Google 身份验证器下载页上谷歌代码下载和编译它自己。 若要在 Ubuntu 上安装包,请运行以下命令︰ sudo apt-get install libpam-google-authenticator (这只会在我们的系统上安装 PAM 模块 — — 我们将不得不手动为 SSH 登录激活它)。
创建身份验证密钥
- 01
你会在与远程登录的用户身份登录并运行google 身份验证器命令以创建该用户的密钥。 允许该命令更新您的 Google 身份验证器文件通过键入 y。然后会提示您将允许您限制相同的临时安全令牌的使用,增加可用于标记,并限制允许访问尝试蛮力破解阻碍的时间窗口的几个问题。所有这些选择贸易为一些易用的一些安全。
- 02
Google 身份验证器将为你提供一个秘密密钥和几个"紧急划痕代码"。写下的紧急的划痕代码安全的地方 — — 他们仅可用于一次每个,并且他们供使用,如果你失去了你的电话。
- 03
在您的手机在 Google 身份验证器应用程序中输入的机密密钥 (官方应用程序是可用于Android、 iOS 和黑莓的)。您还可以使用扫描条码功能 — — 转到的 URL 位于靠近顶部的命令的输出,你可以用你的手机相机扫描 QR 代码。
- 04
你现在会在您的手机有不断变化的验证码。
- 05
如果你想要为多个用户远程登录,运行此命令为每个用户。每个用户将拥有他们自己的秘密密钥和他们自己的代码。
激活 Google 身份验证器
- 01
下一步你必须要求 SSH 登录 Google 身份验证器。要这样做,打开你的系统 (例如, sudo 纳米 /etc/pam.d/sshd命令) 上的/etc/pam.d/sshd文件和向文件中添加以下行︰ auth required pam_google_authenticator.so 接下来,打开/etc/ssh/sshd_config文件,找到ChallengeResponseAuthentication线,并将其更改为如下︰ ChallengeResponseAuthentication yes (如果ChallengeResponseAuthentication线已经不存在了,上面的行向文件中添加)。 最后,重新启动 SSH 服务器,所以您的更改将会生效︰ sudo service ssh restart
- 02
每当你试图通过 SSH 登录,你会为你的密码和身份验证器 Google 代码提示。