在Ubuntu上使用WiKID双因素身份验证保护SSH

使用WiKID双因素身份验证在Ubuntu上保护SSH

SSH为远程管理服务器提供了高度安全的通道。 但是,如果您对监管或业务需求(如Visa / Mastercard PCI)进行审核,则需要了解可能导致审核头痛的潜在认证相关短缺。 例如:

  • 没有办法控制哪些用户有公钥授权
  • 没有办法强制使用密码复杂性(甚至确保使用密码短语)
  • 没有办法过期公钥

在本文中,我们将演示如何在Ubuntu上组合来自WiKID的双因素身份验证。 WiKID强认证系统是商业/开源双因素认证解决方案。 首先,我们将在WiKID服务器上配置一个域,然后将目标服务器作为网络客户端添加到WiKID服务器,最后通过pam-radius配置Ubuntu框。

WiKID强身份验证服务器现在可用于Ubuntu 。 请参阅.deb软件包的安装说明和完整的安装手册 。 我们假设您的服务器已启动并运行,您可以在环境中实施双因素身份验证。

向WiKID服务器添加域

创建网络客户端

保存域信息后,单击网络客户端选项卡和创建新的网络客户端 。 在内部网络上输入此客户端的名称和SSH网关的IP地址。 选择Radius作为协议和您上面创建的域作为域。

单击添加以获取下一页,并输入Radius的共享密码。

您将需要为网络上的每台服务器重复此过程。

在您的Ubuntu Box上配置SSH

现在我们将在目标机器上配置SSH。 每个linux的风格都会略有不同。 本教程介绍如何在Ubuntu上安装双因素身份验证的pam-radius。 有关如何在Redhat风格上安装pam-radius的说明, 请参阅此页面

首先,安装包:

$ sudo apt-get install libpam-radius-auth

这是非常无痛的。 现在我们来配置它。 首先让我们告诉pam_radius哪个半径服务器要谈:

$ sudo vim /etc/pam_radius_auth.conf

请注意,该文件说要将其复制到/ etc / raddb / server ,但不要这样做。

编辑“其他服务器其他机密3”替换“其他服务器”的IP地址或主机名您的WiKID强认证服务器(或半径服务器,如果您有一个设置在WiKID和您的服务器之间),并更改'其他 - 这个网络客户端的共享密钥。

现在,该软件包已设置并指向您的WiKID服务器,让我们配置一个服务来使用它。

编辑您的/etc/pam.d/sshd文件并添加行:

auth       sufficient  pam_radius_auth.so

就在上面:

# Standard Un*x authentication.
@include common-auth

现在,你已经准备好测试了。 我建议你在测试时运行'tail -f /var/log/auth.log'。

请注意,我们尚未对帐户设置进行任何更改,因此用户希望在计算机上拥有本地帐户,也可以配置帐户以使用pam_ldap并将其指向AD / LDAP服务器。

远程SSH现在非常安全。 没有用户可以在没有从WiKID服务器获取一次性密码的情况下访问服务器。 身份验证的两个因素是拥有WiKID令牌(它是加密密钥)和PIN的知识。 由于PIN在WiKID服务器上得到验证,所以禁用用户非常简单。 一切都记录在案,任何审核员都应该很高兴。

另外,您可能需要在内部机器上使用WiKID一次性密码进行根访问。 只需创建一个su的新域,并适当地编辑/etc/pam.d/su。 这也将允许您将服务器分成不同的组进行管理。 只需创建例如,如果您有一组用于HR的服务器,只有某些管理员具有根访问权限,则可以为特定的WiKID域配置它们,从而允许精细的访问控制和强大的身份验证。 从WiKID网站获取有关双因素身份验证的更多信息

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏