linux创建radius服务器.docx

上传人:b****0 文档编号:18099339 上传时间:2023-08-13 格式:DOCX 页数:11 大小:277.47KB
下载 相关 举报
linux创建radius服务器.docx_第1页
第1页 / 共11页
linux创建radius服务器.docx_第2页
第2页 / 共11页
linux创建radius服务器.docx_第3页
第3页 / 共11页
linux创建radius服务器.docx_第4页
第4页 / 共11页
linux创建radius服务器.docx_第5页
第5页 / 共11页
linux创建radius服务器.docx_第6页
第6页 / 共11页
linux创建radius服务器.docx_第7页
第7页 / 共11页
linux创建radius服务器.docx_第8页
第8页 / 共11页
linux创建radius服务器.docx_第9页
第9页 / 共11页
linux创建radius服务器.docx_第10页
第10页 / 共11页
linux创建radius服务器.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

linux创建radius服务器.docx

《linux创建radius服务器.docx》由会员分享,可在线阅读,更多相关《linux创建radius服务器.docx(11页珍藏版)》请在冰点文库上搜索。

linux创建radius服务器.docx

linux创建radius服务器

简介:

 作为一名网络管理员,您需要为您所需管理的每个网络设备存放用于管理的用户信息。

但是网络设备通常只支持有限的用户管理功能。

学习如何使用Linux™上的一个外部RADIUS服务器来验证用户,具体来说是通过一个LDAP服务器进行验证,可以集中放置存储在LDAP服务器上并且由RADIUS服务器进行验证的用户信息,从而既可以减少用户管理上的管理开销,又可以使远程登录过程更加安全。

数据安全作为现代系统中网络安全的一部分,与系统安全一样的重要,所以保护数据——确保提供机密性、完整性和可用性——对管理员来说至关重要。

在本文中,我将谈到数据安全性的机密性方面:

确保受保护的数据只能被授权用户或系统访问。

您将学习如何在Linux系统上建立和配置一个RemoteAuthenticationDial-InUserService服务器(RADIUS),以执行对用户的验证、授权和记帐(AAA)。

各组成元素介绍

首先让我们谈一谈RADIUS协议、AAA组件以及它们如何工作,另外还有LDAP协议。

RemoteAuthenticationDial-InUserService协议是在IETF的RFC2865中定义的。

它允许网络访问服务器(NAS)执行对用户的验证、授权和记帐。

RADIUS是基于UDP的一种客户机/服务器协议。

RADIUS客户机是网络访问服务器,它通常是一个路由器、交换机或无线访问点(访问点是网络上专门配置的节点;WAP是无线版本)。

RADIUS服务器通常是在UNIX或Windows2000服务器上运行的一个监护程序。

RADIUS和AAA

如果NAS收到用户连接请求,它会将它们传递到指定的RADIUS服务器,后者对用户进行验证,并将用户的配置信息返回给NAS。

然后,NAS接受或拒绝连接请求。

功能完整的RADIUS服务器可以支持很多不同的用户验证机制,除了LDAP以外,还包括:

●PAP(PasswordAuthenticationProtocol,密码验证协议,与PPP一起使用,在此机制下,密码以明文形式被发送到客户机进行比较);

● CHAP(ChallengeHandshakeAuthenticationProtocol,挑战握手验证协议,比PAP更安全,它同时使用用户名和密码);

● 本地UNIX/Linux系统密码数据库(/etc/passwd);

● 其他本地数据库。

在RADIUS中,验证和授权是组合在一起的。

如果发现了用户名,并且密码正确,那么RADIUS服务器将返回一个 Access-Accept响应,其中包括一些参数(属性-值对),以保证对该用户的访问。

这些参数是在RADIUS中配置的,包括访问类型、协议类型、用户指定该用户的IP地址以及一个访问控制列表(ACL)或要在NAS上应用的静态路由,另外还有其他一些值。

RADIUS记帐特性允许在连接会话的开始和结束发送数据,表明在会话期间使用的可能用于安全或开单(billing)需要的大量资源——例如时间、包和字节。

轻量级目录访问协议

轻量级目录访问协议(LightweightDirectoryAccessProtocol,LDAP)是一种开放标准,它定义了用于访问和更新类X.500目录中信息的一种方法。

LDAP可用于将用户信息保存在一个中央场所,从而不必将相同的信息存储在每个系统上。

它还可以用于以一种一致的、可控制的方式维护和访问信息。

LDAP在一个集中的目录中管理用户,从而简化了用户管理工作。

除了存储用户信息外,在LDAP中定义用户还可以使一些可选特性得到启用,例如限制登录的数量。

在本文中,您将学习如何配置RADIUS服务器,以便基于LDAP验证用户——由于本文的重点在于RADIUS,我不会描述关于LDAP服务器的安装和配置的细节。

OpenLDAP是LDAP的一种开放源码实现。

在OpenLDAP.org上可以找到关于它的详细信息。

场景

想像以下场景:

● 用户在家里可以通过拨号验证访问他公司的内部网。

● 带无线支持的笔记本电脑可以通过无线验证连接到一个校园网。

● 管理员使用他们的工作站通过管理用户验证以telnet或HTTP登录到网络设备。

有这些验证任务都可以通过一个RADIUS服务器基于一个中央LDAP服务器来完成(见图1)。

图1.通过RADIUS和LDAP进行验证

在本文中,我将重点描述对最后一种选项的实现,作为对该解决方案的一个介绍。

首先安装RADIUS服务器。

安装RADIUS

RADIUS服务器软件可以从多个地方获得。

在本文中,我将使用FreeRADIUS(请参阅 参考资料 获得相关链接),但CiscoSecureAccessControlServer(ACS)是一种集中式用户访问控制框架,可用于跨UNIX和Windows上多个Cisco设备的用户管理,并支持Cisco特有的协议TACACS+(据说在支持TACACS+的设备上可拥有更多的特性)。

FreeRADIUS是来自开放源码社区的一种强大的Linux上的RADIUS服务器,可用于如今的分布式和异构计算环境。

FreeRADIUS1.0.2支持LDAP、MySQL、PostgreSQL和Oracle数据库,并与诸如EAP和CiscoLEAP之类的网络协议兼容。

FreeRADIUS目前被部署在很多大型生产网络系统中。

下面的步骤演示如何在RedHatEnterpriseLinuxAdvancedServer3.0上安装和测试FreeRADIUS1.0.2:

清单1.安装和测试FreeRADIUS

tar-zxvffreeradius-1.0.2.tar.gz        -extractitwithgunzipandtar

./configure

make

makeinstall                              -runthiscommandasroot

radiusdor                                -startRADIUSserver

radiusd-X                                -startRADIUSserverindebugmode

radtesttesttestlocalhost0testing123  -testRADIUSserver

如果 radtest 收到一个响应,则表明FreeRADIUS服务器工作正常。

同时我还推荐另一种免费工具,那就是NTRadPing,它可用于测试来自Windows客户机的验证和授权请求。

它可以显示从RADIUS服务器发回的详细的响应,例如属性值。

现在让我们来配置FreeRADIUS。

配置FreeRADIUS

RADIUS服务器的配置包括对服务器、客户机和用户的配置(都是用于验证和授权)。

出于不同的需要,对RADIUS服务器可以有不同的配置。

幸运的是,大多数配置都是类似的。

配置服务器

FreeRADIUS配置文件通常位于/etc/raddb文件夹下。

首先,我们需要像下面这样修改radiusd.conf文件。

清单2.修改radiusd.conf

1)Globalsettings:

log_auth=yes                -logauthenticationrequeststothelogfile

log_auth_badpass=no        -don'tlogpasswordsifrequestrejected

log_auth_goodpass=no        -don'tlogpasswordsifrequestaccepted

2)LDAPSettings:

modules{

  ldap{

      server=""  -thehostnameorIPaddressoftheLDAPserver

      port=636                    -encryptedcommunications

      basedn="ou=bluepages,o="  -definethebaseDistinguishedNames(DN),

                                          -undertheOrganization(O)"",

                                          -intheOrganizationUnit(OU)"bluepages"

      filter="(mail=%u)"                  -specifysearchcriteria

      base_filter="(objectclass=person)"  -specifybasesearchcriteria

  }

authenticate{                -enableauthenticationagainstLDAP

  Auth-TypeLDAP{

      ldap

  }

参数被设为使用IBMBluePages,这是LDAP服务的一个实例。

对于其他LDAP服务器,参数可能有所不同。

配置客户机

客户机是在/etc/raddb/clients.conf文件中配置的。

有两种方式可用于配置RADIUS客户机。

您可以按IPsubnet将NAS分组(清单3),或者可以按主机名或IP地址列出NAS(清单4)。

如果按照第二种方法,可以定义 shortname 和 nastype。

清单3.按IPsubnet将NAS分组

client192.168.0.0/24{

  secret      =mysecret1  -the"secret"shouldbethesameasconfiguredonNAS

  shortname  =mylan      -the"shortname"canbeusedforlogging

  nastype      =cisco      -the"nastype"isusedforcheckradandisoptional

}

清单4.按主机名或IP地址列出NAS

client192.168.0.1{

  secret      =mysecret1

  shortname  =myserver

  nastype      =other

}

 

为验证而配置用户

文件/etc/raddb/user包含每个用户的验证和配置信息。

清单5./etc/raddb/user文件

1)Authenticationtype:

Auth-Type:

=LDAP      -authenticateagainstLDAP

Auth-Type:

=Local,User-Password=="mypasswd"

                        -authenticateagainstthe

                        -passwordsetin/etc/raddb/user

Auth-Type:

=System    -authenticateagainstthesystempasswordfile

                        -/etc/passwdor/etc/shadow

2)Servicetype:

Service-Type=Login,  -foradministrativelogin

为授权而配置用户

下面的验证服务器属性-值对(AV)应该为用户授权而进行配置。

在验证被接受后,这个属性-值对被返回给NAS,作为对管理员登录请求的响应。

对于Cisco路由器,有不同的权限级别:

●级别1是无特权(non-privileged)。

提示符是 router>,这是用于登录的默认级别。

● 级别15是特权(privileged)。

提示符是 router#,这是进入enable模式后的级别。

● 级别2到14在默认配置中不使用。

下面的命令可以使一个用户从网络访问服务器登录,并获得对EXEC命令的立即访问:

cisco-avpair="shell:

priv-lvl=15"

下面的代码处理相同的任务,这一次是对于Cisco无线访问点:

Cisco:

Avpair="aironet:

admin-capability=write+snmp+ident+firmware+admin"

任何功能组合都和这个属性一起返回:

Cisco:

Avpair="aironet:

admin-capability=ident+admin"

Cisco:

Avpair="aironet:

admin-capability=admin"

请与Cisco联系,以获得关于这些命令的更多信息。

配置网络访问服务器

接下来我们将配置NAS,首先是配置一个Cisco路由器,然后轮到一个CiscoWAP。

对于CiscoIOS12.1路由器,我们将启用AAA,然后配置验证、授权和记帐。

清单6.启用AAA

aaanew-model

radius-serverhost192.168.0.100

radius-serverkeymysecret1

AAA在路由器上应该被启用。

然后,指定能为NAS提供AAA服务的RADIUS服务器的列表。

加密密钥用于加密NAS和RADIUS服务器之间的数据传输。

它必须与FreeRADIUS上配置的一样。

清单7.配置验证

aaaauthenticationlogindefaultgroupradiuslocal

linevty04

loginauthenticationdefault

在这个例子中,网络管理员使用RADIUS验证。

如果RADIUS服务器不可用,则使用NAS的本地用户数据库密码。

清单8.配置授权

aaaauthorizationexecdefaultgroupradiusif-authenticated

允许用户在登录到NAS中时运行EXECshell。

清单9.配置记帐

aaaaccountingsystemdefaultstart-stopgroupradius

aaaaccountingnetworkdefaultstart-stopgroupradius

aaaaccountingconnectiondefaultstart-stopgroupradius

aaaaccountingexecdefaultstop-onlygroupradius

aaaaccountingcommands1defaultstop-onlygroupradius

aaaaccountingcommands15defaultwait-startgroupradius

必须对路由器进行特别的配置,以使之发送记帐记录到RADIUS服务器。

使用清单9中的命令记录关于NAS系统事件、网络连接、输出连接、EXEC操作以及级别1和级别15上的命令的记帐信息。

这样就好了。

现在让我们看看为Cisco无线访问点而进行的配置。

下面的配置适用于带有Firmware12.01T1的Cisco1200SeriesAP。

如图2中的屏幕快照所示,您:

● 输入服务器名或IP地址和共享的秘密。

● 选择“Radius”作为类型,并选中“UserAuthentication”。

图2.为WAP配置NAS

实际上,在这里您还可以配置EAPAuthentication,使FreeRADIUS可用于验证无线LAN的一般用户。

记帐:

工作中的RADIUS

现在所有配置都已经完成,FreeRADIUS服务器可以开始记录NAS发送的所有信息,将该信息存储在/var/log/radius/radius.log文件中,就像这样:

清单10./var/log/radius/radius.log文件、

ThuMar321:

37:

322005:

Auth:

LoginOK:

[David](fromclient

                                mylanport1cli192.168.0.94)

MonMar723:

39:

532005:

Auth:

Loginincorrect:

[John](from

                                clientmylanport1cli192.168.0.94)

详细的记帐信息被存放在/var/log/radius/radacct目录中。

清单11表明,David在2005年3月4日19:

40到19:

51这段时间里从192.168.0.94登录到了路由器192.168.0.1。

这么详细的信息对于正在调查安全事故以及试图维护易于审计的记录的管理员来说无疑是一大帮助。

清单11.RADIUS提供的记帐细节示例、

FriMar  419:

40:

122005

        NAS-IP-Address=192.168.0.1

        NAS-Port=1

        NAS-Port-Type=Virtual

        User-Name="David"

        Calling-Station-Id="192.168.0.94"

        Acct-Status-Type=Start

        Acct-Authentic=RADIUS

        Service-Type=NAS-Prompt-User

        Acct-Session-Id="00000026"

        Acct-Delay-Time=0

        Client-IP-Address=192.168.0.1

        Acct-Unique-Session-Id="913029a52dacb116"

        Timestamp=1109936412

FriMar  419:

51:

172005

        NAS-IP-Address=192.168.0.1

        NAS-Port=1

        NAS-Port-Type=Virtual

        User-Name="David"

        Calling-Station-Id="192.168.0.94"

        Acct-Status-Type=Stop

        Acct-Authentic=RADIUS

        Service-Type=NAS-Prompt-User

        Acct-Session-Id="00000026"

        Acct-Terminate-Cause=Idle-Timeout

        Acct-Session-Time=665

        Acct-Delay-Time=0

        Client-IP-Address=192.168.0.1

        Acct-Unique-Session-Id="913029a52dacb116"

        Timestamp=1109937077

结束语

通过遵循本文中列出的简单步骤,您可以建立一个RemoteAuthenticationDial-InUserService服务器,该服务器使用一个外部的LDAP服务器来处理为网络安全问题而进行的验证、授权和记帐。

本文提供了以下内容来帮助您完成此任务:

● 对RADIUS和LDAP服务器以及AAA概念的介绍。

● 一个融入了安装和配置任务的场景。

● 关于安装和配置RADIUS服务器的说明。

● 关于配置网络访问服务器的细节。

● RADIUS将提供和管理的详细信息的一个示例。

这些指示可以快速确保受保护的数据只能由Linux系统上已授权的实体访问。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2