RHEL5U3平台实现pppoe接入记账认证服务器的配置文档.docx

上传人:牧羊曲112 文档编号:3165151 上传时间:2023-03-11 格式:DOCX 页数:11 大小:41.20KB
返回 下载 相关 举报
RHEL5U3平台实现pppoe接入记账认证服务器的配置文档.docx_第1页
第1页 / 共11页
RHEL5U3平台实现pppoe接入记账认证服务器的配置文档.docx_第2页
第2页 / 共11页
RHEL5U3平台实现pppoe接入记账认证服务器的配置文档.docx_第3页
第3页 / 共11页
RHEL5U3平台实现pppoe接入记账认证服务器的配置文档.docx_第4页
第4页 / 共11页
RHEL5U3平台实现pppoe接入记账认证服务器的配置文档.docx_第5页
第5页 / 共11页
亲,该文档总共11页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《RHEL5U3平台实现pppoe接入记账认证服务器的配置文档.docx》由会员分享,可在线阅读,更多相关《RHEL5U3平台实现pppoe接入记账认证服务器的配置文档.docx(11页珍藏版)》请在三一办公上搜索。

1、RHEL5U3平台实现pppoe接入记账认证服务器的配置文档早先做得一个文档,跟大家共享一下。 文档只写了简单的制作过程,没有涉及到相关基础知识的讲解,仅供大家参考。 红帽RHEL5U3平台实现pppoe接入记账认证服务器 作者:zorro 邮件:zorro 软件需求: 红帽自带的:rp-pppoe,ppp,freeradius,freeradius-mysql,mysql。 另需:freeradius-2.1.3以及ppp2.4.4的源代码包。 第一部分:实现简单的pppoe拨号服务 检查系统上的rp-pppoe以及ppp软件是否安装,命令: #rpm -q rp-pppoe ppp 如果安

2、装则会有显示软件包的名称,若未安装,找到安装盘上的相关rpm包安装。 然后配置/etc/ppp/pppoe-server-options文件,内容为: # PPP options for the PPPoE server # LIC: GPL require-chap login lcp-echo-interval 10 lcp-echo-failure 2 defaultroute ms-dns 192.168.1.1 logfile /var/log/pppod.log 文件内容不做解释,可以通过man pppd查寻相关帮助。此时pppoe服务器从/etc/ppp/ chap-secret

3、s文件中读取验证的用户名和密码信息,此文件格式为: # Secrets for authentication using CHAP # client server secret IP addresses zorro * 123456 * 想要多添加用户,再加入新行即可。 然后可以启动pppoe服务了,命令是: pppoe-server -I eth0 -L $LOCALIP -R $REMOTEIP -N $CONNLIMIT 命令详细信息查询man pppoe-server。 注:红帽自带的pppoe服务器,在RHEL5至RHEL5U2的版本上与系统的syslog服务有冲突。可现关闭sysl

4、og服务,让pppoe服务器正常运行。 第二部分:让pppoe服务使用freeradius服务器进行验证 首先更改/etc/ppp/pppoe-server-options,添加一行设置: # PPP options for the PPPoE server # LIC: GPL require-chap login lcp-echo-interval 10 lcp-echo-failure 2 defaultroute ms-dns 192.168.1.1 logfile /var/log/pppod.log plugin /usr/lib/pppd/2.4.4/radius.so 表示让p

5、ppoe-server在运行时加入pppd的radius查检,可以让pppoe服务通过freeradius来验证和记账。添加此行之后,可以创建/etc/radiusclient/目录,创建完之后,我们需要使用一下ppp的源代码,因为红帽没有给我们提供相应的配置文件。解压ppp的源代码目录: tar xvfz ppp-2.4.4.tar.gz cd ppp-2.4.4 cd pppd/plugins/radius/etc/ cp * /etc/radiusclient/ 这个目录下有我们需要的所有相关的配置文件,其中最重要的是/etc/radiusclient/radiusclient.conf

6、,我们先打开此文件配置,其内容为: auth_order radius login_tries 4 login_timeout 60 nologin /etc/nologin issue /etc/radiusclient/issue authserver localhost:1812 acctserver localhost:1813 servers /etc/radiusclient/servers dictionary /etc/radiusclient/dictionary login_radius /sbin/login.radius seqfile /var/run/radius.

7、seq mapfile /etc/radiusclient/port-id-map default_realm radius_timeout 10 radius_retries 3 login_local /bin/login 字段相关意义清参考文件自带的注释。 另外,还需更改此目录下的servers文件,此文件用来指定读取的radius服务器的主机名称以及key值。 此时pppoe服务已经可以通过radius认证了。然后进行freeradius的配置。 首先检查freeradius是否安装: rpm -q freeradius freeradius-mysql 其中freeradius-my

8、sql包使用来让freeradius连接mysql数据库的,本部分还用不到。 首先打开/etc/raddb/clients.conf配置客户端访问控制,文件内容如下: client 127.0.0.1 secret = hello shortname = localhost nastype = othe 表示客户端之允许从127.0.0.1的ip登录radius服务,并且需要验证的secret为hello,就是在上面的servers文件中需要配置的信息。若要实现可以从别的机器访问,请参考注释获得帮助。 然后配置naslist文件,内容为: # NAS Name Short Name Type

9、#- - - # pm1.NY livingston # pm1.LA livingston localhost local portslave 此文件用来配置记录有哪些指定的nas服务器需要使用radius进行记账。现在指定的是localhost。 主控配置文件是radiusd.conf,目前没有需要改的,可通过注释学习其中配置方法。此文件主要是用来指定freeradius服务器默认的验证和记账方式。我们目前使用本地的文件方式,就是/etc/raddb/users文件,在其中添加我们需要提供给pppoe服务认证的用户信息,内容如下: zorro Auth-Type := Local, Sim

10、ultaneous-Use := 1, User-Password = zorro Service-Type = Framed-User, Framed-Protocol = PPP, Framed-IP-Address = 10.0.0.33, Framed-IP-Netmask = 255.255.255.255 其中Simultaneous-Use := 1字段用来设置每个用户同时登录的个数。所有字段信息都在freeradius的源代码中有文档给予解释。另外要注意,添加的用户字段应写在文件DEFAULT字段前面添加,否则可能不会生效。 都配置完毕后,可以通过radiusd -X命令以排错

11、方式启动,此时再启动pppoe-server,用客户端拨号验证一下,检查pppoe服务是否成功通过freeradius来验证用户。如果成功,这一部分完成。可通过 service radiusd restart来正常启动radius服务。 第三部分:配置freeradius从mysql数据库读取用户信息 首先更改/etc/raddb/radiusd.conf,首先将$INCLUDE $confdir/sql.conf字段这行原有的注释去掉,然后找到authorize字段中的sql将注释取消掉,以及accouting字段中的sql的注释取消。然后需要更改sql.conf中的设置,主要是设置读取的m

12、ysql服务器的相关信息,可更改如下一些字段: server = localhost 数据库服务器 login = mysql_username 数据库用户 password = mysql_password 数据库密码 radius_db = radius 数据库名称 当然前提是你要现把mysql服务设置好,设置方法是: 先启动你的mysqld: service mysqld start 然后设置root帐户密码: mysqladmin uroot p password 12345 创建radius数据库 mysqladmin uroot p123456 create radius 建立my

13、sql的数据库raius的表,我们可以通过软件已经给出的sql脚本导入数据库: mysql -uroot p123456 radius < /usr/share/doc/freeradius-1.1.3/examples/mysql.sql 这样,所有radius需要的数据库和表都已经建立好了。 此时可以添加测是帐号来测试是否正常工作。具体方法就不在这说了。我们待会要使用freeradius源代码自带的dialup_admin来进行数据库的管理工作,那是一个基于web的管理界面,使用php编写,要比直接用sql语句方便的多。 这里要注意的是,如何在数据库里添加限制没用户同时登录个数的限制,

14、比如,我先用sql语句添加一个测试用户,然后来限制他的登录个数,语句是: mysql -uroot p123456 radius insert into radgroupreply (groupname,attribute,op,value) values (user,Auth-Type,:=,Local); insert into radgroupreply (groupname,attribute,op,value) values (user,Service-Type,:=,Framed-User); insert into radgroupreply (groupname,attribu

15、te,op,value) values (user,Framed-IP-Address,:=,255.255.255.254); insert into radgroupreply (groupname,attribute,op,value) values (user,Framed-IP-Netmask,:=,255.255.255.0); insert into radcheck (username,attribute,op,value) values (test,User-Password,:=,test); insert into usergroup (username,groupnam

16、e) values (test,user); 这样就给我们的数据库中添加了一个帐户测试帐户test,并让test帐户属于user组。 然后我们可以通过设置user组的检查属性来设置此组帐户的登录数限制,以后只要用户加入这个组,登录数都不能超过1次: INSERT INTO radgroupcheck (GroupName, Attribute, op, Value) values(user, Simultaneous-Use, :=, 1; 好了,限制完成。我们现在可以使用test帐户登录,并测试是否是通过mysql数据库验证的。并且可以检查是不是只能登录一个。 第四部分:使用dialup_a

17、dmin来管理radius服务器 服务器搭建成功后如果需要web管理,freeradius自带了一个web管理程序dialup_admin。 首先测试Apache与PHP安装的正确性。Apache的WEB目录在 /var/www/html 下首先测试Apache,在浏览器输入 Http:/127.0.0.1 下看到Apache界面表示正常。 编辑一个PHP测试文件,内容为 ,保存为 phpinfo.php。在浏览器输入Http:/127.0.0.1/phpinfo.php 看到php相关信息页面,表示php运作正常。 直接将freeradius源代码中的dialup_admin/文件夹全部拷贝

18、到Apache网页目录下/etc/local下。 修改dialup_admin/conf/下的admin.conf文件中的如下参数: sql_type:mysql sql_server:localhost /sql地址 sql_port:3306 /默认端口 sql_username:root sql_password:123456 /密码 sql_database:radius /数据库名 general_base_dir: /usr/local/dialup_admin /dialup_admin主目录 general_domain: /这个可改也可不改,没什么影响,改了还看点而已 gen

19、eral_radius_server_auth_proto: chap /将pap改成chap general_encryption_method: clear /将crypt改成clear 说明一下,general_encryption_method: clear是必须得改的,否则用web管理界面添加用户后会出现密码被加密后无法识别导致认证失败,clear方式是以明文存储密码,freeradius默认是用明文存储密码,两者要对应,所以这里要用clear方式。 修改dialup_admin/conf/下的naslist.conf文件如下 nas1_name: nas1.%general_dom

20、ain nas1_model: Computer /NAS服务器的类型 nas1_ip: 192.168.1.1 /NAS服务器的IP地址 nas1_port_num: 15 nas1_community: public 其他的通通删掉或用#号注释掉,这样修改的目的是方便在web管理界面中直观的看到每个NAS服务器连接用户的情况。 导入相关数据库表 cd /usr/local/dialup_admin/sql mysql -uroot p123456 radius < userinfo.sql mysql -uroot p123456 radius < totacct.sql mysq

21、l -uroot p123456 radius < mtotacct.sql mysql -uroot p123456 radius < badusers.sql dialup_admin用的是php3格式的文件,需要web服务器支持这种格式, 修改/etc/httpd/conf/httpd.conf文件,在此文件最后添加 AddType application/x-httpd-php .php .html .htm .php3 并在默认的主页目录下建立一个指向/usr/local/dialup_admin/htdocs的符号连接htdocs 保存后重启httpd服务 service httpd restart 访问:http:/localhost/htdocs/index.html 能正常打开各页面就ok了。默认是打开的sql调试模式。可以在admin.conf中找到sql_debug.把true改为false即可关闭。 至此,整个Radius服务器搭建完成。

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号