上两篇博客已经介绍了企业应用AAA的重要性,以及通过两个实例讲解了,如何在企业中Cisco设备启用AAA,而配置我们主要侧重于是手动完成,在认证和授权是在路由器本地查询数据库完成的。我们考虑一个这个问题,在本地路由器上完成AAA的认证和授权,貌似没有什么问题,可是大家想想,对于AAA的安全性而言,我们只用到其中一小部分技术,而更重要的“审计”在本地能实现吗?授权我们也做了一部分,在本地路由器要实现对“命令”的,虽然可以实现,但是感觉是更为苍白一些,总感觉自己的这种安全做法,并非科学性对吧,尤其你觉得很繁琐,不够灵活多样。如果公司有几十个用户,每个用户接入到网络中都需要身份验证(802.1X),如果在路由器上敲命令要实现就更为困难了,而且工作量太大,这完全是一个体力活。这时候你可能期盼我们能否把认证,授权,审计,由公司内部一台服务器来完成了,让路由器或者交换机只需要把客户端的访问请求转发给这台服务器,其实就是我们今天要讲的ACS Server,ACS Server查询本地的数据库,如果客户端发送的用户名和密码和本地数据库的一样,则认证通过,再依据你的授权配置完成 相应的授权,审计也更加容易实现,可以和SQL等数据库结合起来,把用户的访问记录从开始到结束,全部记录下来,然后管理员可以随时查看处理这些问题。
那今天的主要问题,如果在企业环境中搭建一台ACS Server,需要注意哪些问题?搭建这台服务器有什么要求?搭建之后如何维护和发挥其重要的作用?在AAA服务器上配置认证和授权,审计将陆续在后面的博客中更新,敬请期待。
大家先来看我的实验拓扑:
ACS
ACS全名是:CiscoSecure ACS
版本号有:2.0,3.2,4.0,4.2等,今天实验环境ACS Server服务器上安装的4.0版本
到底什么样的服务器是ACS Server?答案很简单是吧,能提供AAA认证,授权,审计等功能一台Windows Server 服务器,该服务器上必须安装的是Cisco Secure ACS 软件,这样服务器我们就可以称为ACS Server
ACS Server 操作系统要求为:windows 2000 ,windows 2003,windows server 2008,无法安装在Windows Client
安装ACS 服务器步骤:
1,首先安装完windows 2003 server ,设置完IP地址和(IP地址不可安装完ACS后随意更改,这将造成ACS通讯处问题,切记),ACS Server 软件你可以安装到公司的文件服务器或者其他的服务器,或者安装到虚拟机中也可以。只要ACS Server和需要提供AAA服务的设备可以相互通信即可。
如图1所示,ACS Server IP地址设置完毕
Snap1
2,安装Java虚拟机,(jre-6u4-windows-i586-p)下载地址 http://www.java.com 。不要安装JAVA JDK版本,如果java没有安装,或者安装的版本有问题会导致ACS 安装完之后,打开的页面是空白的,无法运行ACS
如图2所示,点击“接受”下载安装下一步即可,
Snap3
3,ACS Server属于收费性质软件,在cisco 网站上需要使用CCO账号登陆就可以找到最新的版本下载,但最新的版本并不一定是最稳定的版本,软件只有英文版,但是其他的第三方站点也提供ACS 下载。
如图3所示,打开压缩包中的文件,点击“Setup”,出现安装同意协议,点击“ACCEPT” 下一步
Snap7
4,如图4所示,如图勾选这4项,ACS的基本的组件,必须都选
注意提示,Cisco IOS 11.1或者之后的版本才可以支持AAA命令,ACS Server上IE的版本最低是6.0
Snap11
 
 
5,如图5所示,ACS 默认安装路径,如果在生产环境下,考虑备份等问题,可以更改安装目录,一般默认路径即可,不会占用太多的磁盘空间。
Snap13
6,如图6所示,让ACS 独立存放自己的数据库文件(默认选择)
Snap14
 
 
7,如图7所示,开始安装文件,等待几秒,出现下一步操作
Snap15
8,如图8所示,ACS Server高级选项设置,如图全部勾选,也可以勾选前三项,有组和用户的设置,最大化会话数等
Snap16
9,如图9所示,ACS还提供一个重要的服务就是可以结合SMTP服务,以邮件的形式通知管理人员,AAA服务器运行状态和日志信息,勾选开启日志监视,邮件服务器的地址这里没有,或者不需要通过邮件来监视,就可以不用勾选,
Snap17
10,如图10所示,安装最后一步,最关键的一步,也是大家最容易忽视的一步,这里没有留心,很可能导致你的AAA无法正常工作。那一段英文的重要意思是:配置ACS服务器的认证密钥,密钥的建议是8个字符,包含大小写。
这是很多人可能会发生疑问,为什么要配置ACS 的认证密钥?什么时候会用?
再看文章前面的拓扑,ACS_Client(192.168.10.3),不是说ACS服务器还需要在路由器上来安装个什么客户端的软件,而这里的意思是我给你路由器的起的名称,在这一台路由器上来配置AAA的认证、授权、审计,当访问客户端(192.168.10.1),要通过Telnet,SSH,Console形式登陆路由器调试和配置时,路由器会要求检查用户的身份是否合法,也就是要求用户输入登录的用户名和密码,那么登录的用户名和密码,是在ACS服务器来配置的,ACS Server 和 路由器之间链路是通的,这时当用户在键盘上输入登录的用户名和密码,路由器把登录的请求和客户端的输入的密码发送到ACS 服务器上来请求验证,这个用户名和密码是否合法,在验证用户名和密码的合法性之前,就首先要确定这台路由器的身份是合法的,怎么确定路由器的身份是合法的,在路由器和ACS Server之间通讯会有一个密码,用这个密码来验证其合法性.
 
这里设置ACS密码用于ACS Internal Database Encryption.当提取数据库时才会用到.
Snap18
11,如图11所示,ACS 安装完成了,默认的登陆地址是http://127.0.0.1:2002 ,2002是默认的本地开放的端口,会在桌面上创建ACS快捷方式
Snap19
12,如图12所示,ACS安装完成如图主页面,ACS 打开时会调用java,右下角所示,安装完之后检查java有无加载,如果可以正常加载,则ACS可以正常运行。
Snap20
13,测试路由器与访问客户端,ACS Server 是否可以ping 通 ,(路由器的底层配置略过)
Snap5
 
 
 
本文的虽然比较简单,但是很多很多朋友不太重视,就导致AAA服务器上的认证,授权和审计经常失败,大对数原因是没有搞明白ACS Server的工作原理,忘了还有个什么ACS KEY ?
下回给大家讲解ACS Server 与客户端需要通讯,提供认证、授权、审计服务,需要用什么协议来承载和传递这些流量,不同的厂商设备如何选择不同的协议(Tacacs+,Radius),各自的优缺点等