第1页共9页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共9页软件需求:红帽自带的:rp-pppoe,ppp,freeradius,freeradius-mysql,mysql,mysql-devel,mysql-server,openssl。另需:freeradius-2.1.3以及ppp2.4.4的源代码包。有一点要说明,freeradius需要openssl库,所以如果系统里没安装的话,还是要事先安装一下的。第一部分:实现简单的pppoe拨号服务检查系统上的rp-pppoe以及ppp软件是否安装,命令:#rpm-qrp-pppoeppp如果安装则会有显示软件包的名称,若未安装,找到安装盘上的相关rpm包安装。配置/etc/ppp/optionslockcrtsctsnobsdcompnodeflatenopcomp然后配置/etc/ppp/pppoe-server-options文件,内容为:#PPPoptionsforthePPPoEserver#LIC:GPLauthrequire-chapdefault-mrudefault-asyncmaplcp-echo-interval60lcp-echo-failure5ms-dns202.106.0.20noipdefaultnoipxnodefaultrouteproxyarpnoktunelogfile/var/log/pppd.log文件内容不做解释,可以通过manpppd查寻相关帮助。此时pppoe服务器从/etc/ppp/chap-secrets文件中读取验证的用户名和密码信息,此文件格式为:#SecretsforauthenticationusingCHAP#clientserversecretIPaddressesaaa*aaa*想要多添加用户,再加入新行即可。然后可以启动pppoe服务了,命令是:#pppoe-server-Ieth1-L10.0.0.64-R192.168.0.5-N10我简单介绍一下这条命令中的各个参数的意思。第2页共9页第1页共9页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共9页I:指定响应PPPOE请求的端口,本例中是在eth1口上。L:PPPOE服务器的IP地址,这是客户端所填的PPPOE服务器的地址。R:这是分配给客户端的地址池起始地址,本例中从192.168.0.5开始N:地址池的IP地址递增几个,本例中添增10,也就是从192.168.0.5开始,到192.168.0.14结束。可以看出我们在LINUX中将以上步骤都完成了,也就是说PPPOE服务准备好了,客户端PPPOE拨号,顺利的话就可以拨号成功了。当然现在客户端还不能上网,因为PPPOE服务器还没有启用NAT,我们用IPTABLES软件来实现,写一个这样的脚本即可:echo"1">>/proc/sys/net/ipv4/ip_forwardiptables-tnat-APOSTROUTING-s192.168.0.0/24-owan-jSNAT--to10.0.0.65第一行的作用是启用IP转发,第二行是启动IPTABLES进行NAT转换,下面是对各个参数的解释-tnat表示进行NAT转化-s192.168.0.0/24表示源地址为192.168.0.0/24这个网段-jSNAT--to10.0.0.65表示将源地址都转化成10.0.0.65这个外网地址启动NAT以后,这台PPPOE服务器就功能完整了,客户端不仅可以拨通服务器,拨通后还可以上网。注:红帽自带的pppoe服务器,在RHEL5至RHEL5U2的版本上与系统的syslog服务有冲突。可现关闭syslog服务,让pppoe服务器正常运行。第二部分:让pppoe服务使用freeradius服务器进行验证1)首先更改/etc/ppp/pppoe-server-options,添加一行设置:#PPPoptionsforthePPPoEserver#LIC:GPLauthrequire-chapdefault-mrudefault-asyncmaplcp-echo-interval60lcp-echo-failure5ms-dns202.106.0.20noipdefaultnoipxnodefaultrouteproxyarpnoktuneplugin/usr/lib/pppd/2.4.4/radius.soradius-config-file/etc/ppp/radiuds/radiusclient.conflogfile/var/log/pppd.log第3页共9页第2页共9页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共9页表示让pppoe-server在运行时加入pppd的radius查检,可以让pppoe服务通过freeradius来验证和记账。添加此行之后,可以创建/etc/ppp/radiuds/目录,创建完之后,我们需要使用一下ppp的源代码,因为红帽没有给我们提供相应的配置文件。解压ppp的源代码目录:#wgetftp://ftp.samba.org/pub/ppp/ppp-2.4.4.tar.gz#tarxvfzppp-2.4.4.tar.gz#cdppp-2.4.4#cdpppd/plugins/radius/etc/#cp*/etc/ppp/radiuds/2)这个目录下有我们需要的所有相关的配置文件,其中最重要的是/etc/ppp/radiuds/radiusclient.conf,我们先打开此文件配置,其内容为(已去掉注释):auth_orderradiuslogin_tries4login_timeout60nologin/etc/nologinissue/etc/ppp/radiuds/issueauthserverlocal...