如何使用双重身份验证保护VNC远程访问

如何使用双因素身份验证来保护VNC远程访问

VNC是当今最流行的远程访问解决方案。 但是,它是为提供远程访问而开发的,不提供安全的远程访问。 管理员必须通过隧道通过一个加密的渠道(如SSH)和添加一层身份验证来增加VNC的安全性。 在本文中,我们将介绍如何组合NoMachine NX服务器以加密VNC和远程X会话以及WiKID系统的双因素身份验证,以创建安全,快速的远程访问解决方案。

NoMachine和WiKID

NoMachine是针对速度和安全性进行了优化的终端服务器和远程访问解决方案。 所有连接都通过SSH管道传输。 通过它们的压缩算法,NoMachine比通过SSH管理VNC要快得多。 此外,他们还为Windows,Mac和Linux提供RDP和Remote X会话和客户端。

WiKID是针对安全性和易用性进行了优化的双源双因素身份验证系统。 WiKID使用公共密钥加密技术,而不是像大多数基于硬件的解决方案那样的共享秘密。 WiKID依赖于服务器上用户选择的PIN的验证,使其比证书更强大,更易于管理。 在此配置中,WiKID将处理用户认证,NoMachine将处理隧道加密和压缩。 对于VNC,我正在使用RealVNC的个人版 。 我没有配置它,除了添加验证密码,不包括细节。 WiKID服务器和SSH / NoMachine服务器都应在DMZ中,一个卡接受来自Internet的连接用于客户端连接,另一个卡分别配置为LAN访问以交换认证请求和VNC连接。

配置WiKID服务器

以下是它的工作原理:访问远程桌面,启动NX客户端并输入WiKID一次性密码和用户名。 用户在其WiKID令牌上生成一次性密码,并将其输入密码提示。 SSH将通过pam半径将用户名和一次性密码路由到WiKID服务器。 如果用户名和一次性密码与WiKID所期望的一致,则服务器将通知SSH授予访问权限。 然后,NX客户端将将VNC密码发送到目标VNC框。

首先,将SSH / NoMachine框添加到WiKID强认证服务器作为网络客户端,然后在SSH / NoMachine服务器上配置PAM半径。 我假设您已经配置了WiKID服务器。 有关如何安装和配置WiKID的更多信息,请点击此处

首先为远程访问用户创建一个域:

  • 登录WiKID服务器Web界面(http:// yourwikidserver / WiKIDAdim)。
  • 单击“域”选项卡
  • 单击创建新域
  • 填写新域名的表单。 离开“注册的URL:”空白,仅用于基于SSL的相互身份验证。 也不要勾选“使用TACACS +”和“密码重设域:”。 密码生存期应设置足够长的时间,以便用户能够登录。默认值为60秒,但您可以增加密码。 默认PIN长度为6位数,但如果您愿意,可以将其设置为4。 “设备域名”是用户在令牌客户端上看到的内容。
  • 点击“创建”按钮

现在,将新的Radius网络客户端添加到指向您的SSH / NoMachine服务器的WiKID服务器上:

  • 选择网络客户端选项卡。
  • 单击创建新的网络客户端
  • 填写所需信息。
    • 对于IP地址,请使用SSH / NoMachine服务器IP地址
    • 对于协议,选择半径
    • 点击添加按钮,然后在下一页输入共享密码
    • 不要在返回属性框中输入任何内容
  • 从终端或通过ssh,运行'停止',然后'开始'将网络客户端加载到内置的WiKID半径服务器

那就是WiKID服务器。 您可以手动添加用户作为管理员或将脚本设置在安全位置(例如LAN)中,以允许用户添加自己的令牌。

配置NoMachine和SSH。

对于这个例子,我们使用NX Server Free Edition,这是非常简单的配置 - 实际上它是开箱即用的。 它限于2个并发用户,所以公司将要查看他们的企业版本。 从下载站点下载Server,NX节点和客户端并安装:

rpm -ivh nx*

现在,我们配置SSH使用Radius:

首先,您需要安装PAM Radius。 在PAM Radius主页上有很好的文档。 根据您的分布情况,您也可以找到合适的二进制文件。

编辑 /etc/pam.d/sshd以允许Radius身份验证:
vi /etc/pam.d/sshd

转到文件的第二行,点击Insert键或i键并插入以下行:

auth     required   /lib/security/pam_radius_auth.so 

就在这一行之上:

auth     required     pam_stack.so service=system-auth

“必需”标签需要双因素身份验证。 因为我们只是编辑sshd文件,它不会影响终端登录。

写文件并退出。 按Esc键退出插入模式并键入:wq

编辑或创建您的/ etc / raddb / server文件:

vi /etc/raddb/server

下方:

127.0.0.1   secret        1

添加此行,替换WiKID服务器的IP地址:

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

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

支付宝扫一扫打赏

微信扫一扫打赏