安装 RADIUS
RADIUS 服务器软件可以从多个地方获得。在本文中,我将使用 FreeRADIUS(请参阅 参考资料 获得相关链接),但 Cisco Secure Access Control Server (ACS) 是一种集中式用户访问控制框架,可用于跨 UNIX 和 Windows 上多个 Cisco 设备的用户管理,并支持 Cisco 特有的协议 TACACS+(据说在支持 TACACS+ 的设备上可拥有更多的特性)。
FreeRADIUS 是来自开放源码社区的一种强大的 Linux 上的 RADIUS 服务器,可用于如今的分布式和异构计算环境。FreeRADIUS 1.0.2 支持 LDAP、MySQL、PostgreSQL 和 Oracle 数据库,并与诸如 EAP 和 Cisco LEAP 之类的网络协议兼容。FreeRADIUS 目前被部署在很多大型生产网络系统中。
下面的步骤演示如何在 Red Hat Enterprise Linux Advanced Server 3.0 上安装和测试 FreeRADIUS 1.0.2:
清单 1. 安装和测试 FreeRADIUS
tar -zxvf freeradius-1.0.2.tar.gz - extract it with gunzip and tar./configuremakemake install - run this command as rootradiusd or - start RADIUS serverradiusd -X - start RADIUS server in debug moderadtest test test localhost 0 testing123 - test RADIUS server
1) Global settings:log_auth = yes - log authentication requests to the log filelog_auth_badpass = no - don't log passwords if request rejectedlog_auth_goodpass = no - don't log passwords if request accepted2) LDAP Settings:modules { ldap { server = "bluepages.ibm.com" - the hostname or IP address of the LDAP server port = 636 - encrypted communications basedn = "ou=bluepages,o=ibm.com" - define the base Distinguished Names (DN), - under the Organization (O) "ibm.com", - in the Organization Unit (OU) "bluepages" filter = "(mail=%u)" - specify search criteria base_filter = "(objectclass=person)" - specify base search criteria }authenticate { - enable authentication against LDAP Auth-Type LDAP { ldap }
参数被设为使用 IBM BluePages,这是 LDAP 服务的一个实例。对于其他 LDAP 服务器,参数可能有所不同。 配置客户机
客户机是在 /etc/raddb/clients.conf 文件中配置的。有两种方式可用于配置 RADIUS 客户机。您可以按 IP subnet 将 NAS 分组(清单 3),或者可以按主机名或 IP 地址列出 NAS(清单 4)。如果按照第二种方法,可以定义 shortname 和 nastype。
清单 3. 按 IP subnet 将 NAS 分组
client 192.168.0.0/24 { secret = mysecret1 - the "secret" should be the same as configured on NAS shortname = mylan - the "shortname" can be used for logging nastype = cisco - the "nastype" is used for checkrad and is optional}
1) Authentication type:Auth-Type := LDAP - authenticate against LDAPAuth-Type := Local, User-Password == "mypasswd" - authenticate against the - password set in /etc/raddb/userAuth-Type := System - authenticate against the system password file - /etc/passwd or /etc/shadow2) Service type:Service-Type = Login, - for administrative login