【IT168 专稿】笔者目前所在公司是一家跨国外资企业,同时在国内亦有几十家分支机构。整个企业是在域的环境中,各分支是通过Cisco的ASA系列防火墙以IPSEC ×××的方式与位于北京的数据中心互连互通。同时,企业的应用系统和关键业务 服务器均位于数据中心内,均为域成员 服务器。而几十台防火墙或交换机等 网络设备分散在全国各地。
目前,公司使用的身份认证方式,主要是"用户名+口令"认证,但此种认证方式有以下缺点:
1. 口令容易泄漏。
2. 可以用"重播"方式,复制和重现认证过程。
3. 维护成本较高:需要定时更新;需要有 安全的方式发放口令;需要有制度禁止口令的蔓延传播。
针对公司所面临的安全问题,经衡量后,决定采取RSA SecurID双因素身份认证系统来实现对应用系统、关键业务服务器及网络设备安全访问。(图1)
clip_image001
一、RSA SecurID双因素认证系统组件
RSA SeucrID由认证服务器RSA AM、代理 软件RSA AM/Agent、认证设备以及认证应用编程接口(API)组成(如下图所示)。(图2)
clip_image002
1、认证服务器(Authentication Manager)
在RSA SecurID解决方案中,RSA AM软件是网络中的认证引擎,由安全管理员或网络管理员进行维护,可以实现企业认证、访问控制、规避***、用户责任等。
2、RSA SecurID认证令牌
所有RSA SecurID认证令牌均使用已获专利的相同的算法来完成令牌码的散列和加密功能。(图3)
clip_image003
(此实验中的令牌)
3、代理软件(AM/Agent)
实现这种强大的认证功能的中间代理软件称为RSA AM/Agent。该代理软件的功能类似于保安人员,用来实施RSA AM系统建立的安全策略。
二、RSA SecurID针对域用户登录及网络设备认证的原因及过程
1、通过安装代理 软件实现域用户登陆的双因素 安全认证:
在WINDOWS平台机器上安装RSA AGENT软件,通过设置来实现对特定用 户进行验证(此时亦应在RSA AM上添加代理用户(域用户)及被访问的 服务器(又称为代理主机))。(图4)
clip_image004
如图所示,在"Passcode"栏后输入令牌码+PIN码,此时Passcode将被发送到RSA AM进行认证,如果是合法用户就能被授权进行下一步如输入当前用户的密码,然后就能登陆到域并访问域中资源了。
注意,此处的"Passcode"也可以只是令牌码,也就是不用使用PIN码。后文会图文展示如何实现。但安全性相对来说会降低些。
2、通过RADIUS协议实现网络设备的双因素安全认证:
配置这些网络设备通过RADIUS协议来使用SECURID实现双因素认证,当用户需要TELNET或SSH到这些网络设备时,必须输入用户名和双因素Passcode,然后由这些网络设备通过RADIUS协议将Passcode发送到认证 服务器进行认证,如果是合法用户则可以访问网络资源,否则就会被拒绝在外。(图5)
clip_image005
如图所示,这是在Cisco ASA 5520防火墙上进行的使用RADIUS 协议进行验证,而且还配置了当RSA AM出现问题时使用本地验证。
注意,此时,需要在RSA AM上添加代理用户及代理主机(防火墙的IP地址)。如果是使用SSH登陆,需要在SSH登陆用户名和密码中输入代理用户名和令牌码(+PIN码),而且登陆输入EN后,也需要再次输入当前令牌上所显示的下一个令牌码(60秒变换一次)。(图6)
clip_image006
三、RSA解决方案的实施及步骤
前面部分已简要介绍了企业面临的 安全访问的问题以及RSA的解决方案及实现过程。接下来介绍安装及如何配置从而实现域用户登陆的双因素身份认证的,注意,此处并没有安装RSA RADIUS 服务器 软件,故无法实现RADIUS的 网络设备双因素身份验证。
安装拓朴描述:
A、域(rsa.com)环境中,在需要进行登录认证的应用 服务器或关键业务服务器上安装代理(Netbios名字为rsamem)。FQDN:rsamem.rsa.com。
B、在一台工作组服务器(Netbios名字为rsaman)上安装RSA AM。并保证路由上此台服务器和域中的所有服务器能正常通讯。(也可以在域成员服务器上安装RSA AM)
C、以域用户(需添加到RSA AM用户中)登陆应用服务器(需添加到RSA AM代理主机中)rsamem时,会先前往rsamam这台RSA AM服务器上进行合法用户的双因素认证。成功则充许登陆。
1、RSA Authentication Manager 6.1 安装
A、RSA Authentication Manager 6.1软件安装系统需求
支持的 操作系统
☆Microsoft Windows 2000 Server or Advanced Server (Service Pack 4)
☆Microsoft Windows 2003 Standard Server or Enterprise Server
硬件需求:
☆Intel Pentium 733 MHz 处理器
☆256 MB 物理 内存
☆NTFS 文件系统
☆200 MB 磁盘空间
B、RSA Authentication Manager 安装前注意事项
☆RSA Authentication Manager 必须安装在NTFS分区上。
☆RSA SecurID以时间同步技术为核心,安装 RSA Authentication Manager 以前必须调准服务器的时间,包括时区、日期和时间。
☆将所有 RSA Authentication Manager 服务器的全名和IP地址写入所有 RSA Authentication Manager 服务器的hosts文件中(\winnt\system32\drivers\etc\hosts)。
C、一般不建议你安装在域成员服务器上,如果的确需要,安装时最好以本地管理员权限的用户进行安装。
D、满足上述条件后,安装过程相对简单,需要注意的是安装过程中需要选择好LICENSE的路径。安装完成后需要重新启动。且如果有被RSA AM的Update程序,且记一定要打上。如下图为安装好的RSA Authentication Manager:(图7)
clip_image007
2、安装RSA Authentication Agent 6.1 for Windows
A、安装前注意事项:
☆安装任何RSA Authentication Agent代理软件之前,请到RSA网站下载最新的代理软 件: http://www.rsasecurity.com/download/
☆如果RSA Authentication Agent与RSA Authentication Manager安装在不同计算机上,需要首先复制Authentication Manager上的C:\Program Files\RSA Security\RSA Authentication Manager\data\sdconf.rec文件到RSA Authentication Agent上的\windows\system32目录。
B、选择自定义安装,需注意以下安装窗口出现时的选择:(图8)
clip_image008
应去除"Domain Authentication Client"选项,只保留"Local Authentication Client"。安装过程也相对简单。只需注意sdconf.rec文件一定先从RSA  AM上拷到代理软件安装所在的机器C:\ \windows\system32目录下。安装完成后,需重启计算机。
以上是程序的安装,接下来就是针对RSA AM及RSA AGENT HOST代理端的配置:
3 、在rsamam上配置RSA Authentication Manager
A、启动RSA Authentication Manager
选择开始' RSA Security'RSA Authentication Manager Control Panel,点击左边栏中的"Start & Stop RSA Auth Mgr Service",然后在右边栏中选择"Start All"来启动RSA Authentication Manager。(图9)
clip_image009
如果希望每次系统启动时自动启动RSA Authentication Manager,在Auto Start选项下选择 "Edit...",在弹出的窗口中选择 "Automatically start services . system startup"。
B、选择开始' RSA Security'RSA Authentication Manager Host Mode可以进入RSA Authentication Manager的管理界面。选择"Token'Import Token…"选择SecurID种子所在路径,选择*.xml文件导入令牌种子。(图10)
clip_image010
注意:此处的令牌种子文件是需要提前做好的,由供应商根据购置的授权数及ID来确定。
C、添加用户及分配令牌:在打开的"RSA Authentication Manager Host Mode"管理控制台,选择"User--〉Add User…",输入用户名字,姓和登录名信息。此处的用户保持和域用户一致。且确保"Default Login"里输入的用户名rickyfang是域用户已存在的。(图11)
clip_image011
同样是此图,选择"Assign Token…",分配令牌并选择"Yes"在RSA ACE/Server数据库中 存储用户信息。输入令牌背面的序列号或者点击"Tokens…"从有效的令牌中选择为分配的令牌给当前用户(有效的令牌已包含在前面的导入的令牌种子中)。
D、添加代理 软件 服务器(也就是安装有代理软件的应用 服务器rsamem):在打开的"RSA Authentication Manager Host Mode"管理控制台,选择"Agent Host--〉Add Agent Host…",在"Name"字段中输入RSA ACE/Agent的计算机全名,按"Tab"键,程序会自动得到此计算机的IP地址,无法自动找到IP地址的话可以手工输入;在"Agent type"中选择"Net OS Agent"表示此计算机为Windows 操作系统;选择"Open to all Locally Known Users",所有通过令牌认证的用户均可访问此计算机。(图12)
clip_image012
4 、在rsamem配置和测试RSA Authentication Agent安装
A、选择开始' RSA Security'RSA Security Center进入客户端管理界面。在左边栏中选择Authentication Test,然后选择右边栏中的"Test…"测试安装是否正确。
在认证窗口中输入用户名和令牌上显示的当前令牌码:(图13)
clip_image013
B、第一次成功登录以后,系统提示用户必须创建PIN码,选择"I Will Create PIN"自己创建PIN码;如果选择"RSA ACE/Server Will Generate PIN"的话,RSA ACE/Server会自动产生4到8位的PIN码。在这里我们选择"I Will Create PIN"。(图14)
clip_image014
成功创建完PIN码以后,RSA Authentication Agent 软件提示PIN码创建成功。
C、以后正常登录时,必须在"PASSCODE"字段中先输入4到8位的PIN码,然后紧接着输入六位的令牌码(必须等到令牌跳到下一个号码时输入才有效);显示"Authentication successful."时表示通过认证测试。(图15)
clip_image015
D、实现SecurID认证:进入RSA Security Center,选择local,在"challenge setting"中指定users in=RSA\Domain Users(此处的rsa为rsa.com)。(图16)
clip_image016
选择后如下图所示,值得注意的是图中的"Reserver Password"选项,无法实现passcode认证后需要输入此中的密码才能正常登陆系统。(图17)
clip_image017
设置好后,重启计算机。
5 、用户登陆验证实现
A、选定rsamem 服务器,并且按ctl+alt+del打开登录窗口。
B、因为是使用令牌认证的用户,必须输入windows用户名和passcode(PIN+令牌码)登录系统:(图18)
clip_image018
C、Passcode成功后,需要输入此域用户在域控制器 存储的密码(也就是没有实现认证之前的密码)。便可以成功登陆此台 服务器啦。(图19)
clip_image019
同时, 可以在rsaman这台RSA AM服务器上可以通过查看详细的日志来实时了解账号登陆成功或失败的情况。(图20)
clip_image020
至此,基本上完成了在域环境中实现RSA SecurID的双因素身份验证。至于如何实现 网络设备的双因素身份验证,此处并没有做出实验步骤。有条件的朋友不防安装RSA RADIUS服务器测试下。同时,还有许多丰富的功能在此文中并没有提及,但愿能和各位交流。
附加:在登陆域成员服务器时的"Passcode"是使用的令牌+PIN码的双因素方式,亦可以通过在RSA AM管理控制台进行设置成只使用令牌。(图21)
clip_image021
如上图所示,在"Edit Token"窗口,改为选择绿色标记的"Tokencode .ly",并"OK"。就可以实现只使用令牌进行认证。虽简单了些,不过 安全性上就差了些啦,所谓有得有失吧。