当前位置:首页 > 服务器类 > Linux服务器 > > 在Linux下建立PPPOE服务器的步骤

在Linux下建立PPPOE服务器的步骤

点击次数:32 次 发布日期:2008-11-22 09:42:21 作者:源代码网
源代码网推荐
源代码网推荐在Linux下建立PPPOE服务器的步骤
源代码网推荐建立环境:
源代码网推荐操作系统:DEBIAN2.2升级到3.0
源代码网推荐内核:2.4.18
源代码网推荐硬件环境:赛扬31.1G,内存128M,硬盘40G,主板芯片组694T
源代码网推荐显卡:ATIRAGEIIC(4M)
源代码网推荐PPPOE服务器:RP-PPPOE3.4.1
源代码网推荐RADIUS服务器:FREERADIUS0.8
源代码网推荐数据库:MYSQL3.23.56
源代码网推荐PPPOE服务器认证的建立分三种认证方式,第一种方式为用RP-PPPOE自带的基于文本认证方式,第二种方式为建立在RADIUS认证服务器上的文本认证方式,第三种方式是基于MYSQL的数据库认证方式
源代码网推荐
源代码网推荐一、编译内核
源代码网推荐要建立PPPOE服务器,除了内核要支持PPP以外还需要内核支持PPPOE,不过在2.4.18里需要打开内核的不成熟代码才可以选择,内核的配置如下:
源代码网推荐codematurityleveloptions——>
源代码网推荐[*]promptfordevelopmentand/orincompletecode/drivers
源代码网推荐networkingoptions——>
源代码网推荐[*]packetsocket
源代码网推荐[*]packetsocket:mmappedio
源代码网推荐networkdevicesupport——>
源代码网推荐[*]ppp(point-to-pointprotocol)support
源代码网推荐[*]pppmultilinksupport(experimental)
源代码网推荐[*]pppfiltering
源代码网推荐[*]pppsupportforasyncserialports
源代码网推荐[*]pppsupportforsyncttyports
源代码网推荐[*]pppdeflatecompression
源代码网推荐[*]pppbsd-compresscompression
源代码网推荐[*]pppoverEthernet(experimental)
源代码网推荐characterdevices——>
源代码网推荐[*]non-standardserialportsupport
源代码网推荐[*]hdlclinedisciplinesupport
源代码网推荐编辑/etc/modules.conf(redhat好象是conf.modules),如果没有就加入以下几行:
源代码网推荐•aliaschar-major-108ppp_generic
源代码网推荐•alias/dev/pppppp_generic
源代码网推荐•aliastty-ldisc-3ppp_async
源代码网推荐•aliastty-ldisc-13n_hdlc
源代码网推荐•aliastty-ldisc-14ppp_synctty
源代码网推荐•aliasppp-compress-21bsd_comp
源代码网推荐•aliasppp-compress-24ppp_deflate
源代码网推荐•aliasppp-compress-26ppp_deflate
源代码网推荐完成以后就可以下一步,建立PPP拨号服务器了
源代码网推荐
源代码网推荐二、建立PPP服务器
源代码网推荐在建立拨号服务器之前,应确保你在内核中打开了IP转发功能:
源代码网推荐echo“1”>/proc/sys/net/ipv4/ip_forward
源代码网推荐编译PPP服务器很容易,就是按以下几步就可以了:
源代码网推荐•使用configure
源代码网推荐•使用make编译PPPD,这里有几个参数比较重要,要支持windows的客户端,应该在编译时加上选项USE_MS_DNS=1,如果你的系统shadow的话,你应该使用makeHAS—SHADOW=1表示支持shadow密码
源代码网推荐•编译完成后,将生成pppd、pppdump、chat和pppstats这几个文件,使用makeinstall安装这些文件
源代码网推荐•修改pppd的访问权限,允许由root启动服务进程
源代码网推荐chmodu+s/usr/sbin/pppd
源代码网推荐
源代码网推荐三、建立PPPOE服务器
源代码网推荐cd/rp-pppoe-3.4/src
源代码网推荐./configure
源代码网推荐make
源代码网推荐makeinstall
源代码网推荐启动PPPOE进程:
源代码网推荐pppoe-server–L10.0.0.1–R10.0.0.2–N64–k-u
源代码网推荐-L:指定PPPOE服务器的IP地址
源代码网推荐-R:指定PPPOE拨入服务器分配给客户端的IP地址段
源代码网推荐-N:允许客户端同时拨入的数量(默认是64最大是65534)
源代码网推荐-k:使用内核方式(不过好象无法使用)
源代码网推荐修改/etc/ppp/options,查看有没有以下几行,没有就加进去:
源代码网推荐local
源代码网推荐repaire-pap
源代码网推荐login
源代码网推荐auth
源代码网推荐defaultroute
源代码网推荐hide-password
源代码网推荐ipcp-accept-local
源代码网推荐ipcp-accept-remote
源代码网推荐10.0.0.1:10.0.0.255
源代码网推荐netmask255.255.255.0
源代码网推荐ms-dns10.0.0.1
源代码网推荐修改/etc/ppp/pppoe-server-options,将所有的行都注释掉
源代码网推荐添加用户到/etc/ppp/pap-secrets中,例如添加用户luo,密码为123456,允许从任何位置拨入:
源代码网推荐#clientserversecretipaddresses
源代码网推荐luo*“123456”*
源代码网推荐设置windows的用户名:luo密码:123456,如果连接成功就可以进行下一步
源代码网推荐
源代码网推荐四、建立RADIUS认证服务器
源代码网推荐cd/freeradius-0.81
源代码网推荐./configure
源代码网推荐make
源代码网推荐makeinstall
源代码网推荐编辑/usr/local/etc/raddb/clients,输入你的NAS(网络认证服务器)的IP地址和serect,本例中NAS为本机,serect为linux,看上去如下:
源代码网推荐localhostlinux
源代码网推荐编辑/usr/local/etc/raddb/clients.conf,加入以下几行:
源代码网推荐client127.0.0.1{
源代码网推荐secret=linux
源代码网推荐shortname=localhost
源代码网推荐}
源代码网推荐nastype=other
源代码网推荐编辑/usr/local/etc/raddb/naslist,加入:
源代码网推荐localhostlocal
源代码网推荐编辑/usr/local/etc/raddb/users,加入用户:luo、密码:123456,显示如下:
源代码网推荐luoAuth-Type:=local,User-Password==“123456”
源代码网推荐Service-Type:=Framed-User,
源代码网推荐Framed-Protocol=PPP
源代码网推荐Framed-IP-Address:=10.0.0.2
源代码网推荐Framed-IP-Netmask:=255.255.255.0
源代码网推荐启动RADIUS服务、测试帐号
源代码网推荐启动调试模式
源代码网推荐RADIUS–X
源代码网推荐进行帐号测试
源代码网推荐Radtestluo123456localhost0linux
源代码网推荐如果能看到应答,说明RADIUS设置成功了
源代码网推荐要使PPPD进程能够使用RADIUS进行认证,需要加入RADIUS认证的插件
源代码网推荐cpradius.so/usr/lib
源代码网推荐编辑/etc/ppp/options,加入以下到文件:
源代码网推荐plugin/usr/lib/radius.so
源代码网推荐radius-serverslocalhost:1812/1813
源代码网推荐radius-auth-keylinux
源代码网推荐radius-ip-pool10.0.0.2:10.0.0.255
源代码网推荐运行客户端进行登陆,如果能通过认证则成功了
源代码网推荐
源代码网推荐五、建立MYSQL服务器
源代码网推荐tarzxvfmysql-3.23.56.tar.gz
源代码网推荐cdmysql-3.23.56
源代码网推荐./configure
源代码网推荐make
源代码网推荐makeinstall
源代码网推荐cdscript
源代码网推荐./mysql_install_db
源代码网推荐/usr/local/bin/safe_mysqld&
源代码网推荐安装RADIUS数据库
源代码网推荐cdfreeradius-0.81/src/modules/rlm_sql/drivers/rlm_sql_mysql
源代码网推荐mysql–uroot–p密码radius<db_mysql.sql
源代码网推荐编辑/usr/local/etc/raddb/radius.conf使其支持SQL,修改后如下:
源代码网推荐authorize{
源代码网推荐preprocess
源代码网推荐chap
源代码网推荐mschap
源代码网推荐suffix
源代码网推荐sql
源代码网推荐}
源代码网推荐accounting{
源代码网推荐……
源代码网推荐sql
源代码网推荐……
源代码网推荐}
源代码网推荐修改sql.conf,如下所示:
源代码网推荐server="loclahost"login="root"password="mysql的root的密码"
源代码网推荐
源代码网推荐加入组帐号
源代码网推荐mysql–uroot–p密码radius
源代码网推荐insertintoradgroupreply(groupname,attribute,op,value)values(‘user’,’Auth-Tyep’,’:=’,’local’);
源代码网推荐insertintoradgroupreply(groupname,attribute,op,value)values(‘user’,’Service-Type’,’:=’,’Framed-User’);
源代码网推荐insertintoradgroupreply(groupname,attribute,op,value)values
源代码网推荐(‘user’,’Framed-IP-Netmask’,’:=’,’255.255.255.0’);
源代码网推荐#设定拨入用户的掩码,本例只有PPPOE服务,所以可以与options中设定相同
源代码网推荐加入用户帐号:
源代码网推荐insertintoradcheck(username,attribute,op,value)values
源代码网推荐(‘luo’,’User-Password’,’:=’,’123456’);
源代码网推荐将用户帐号加入组帐号
源代码网推荐insertintousergroup(username,groupname)values(‘luo’,’user’);
源代码网推荐如果提示无法找到rlm_sql_mysql文件,则:
源代码网推荐cp/usr/local/lib/usr/lib
源代码网推荐测试:
源代码网推荐radtestluo123456localhost0linux
源代码网推荐见到应答就OK了!源代码网供稿.
网友评论 (0)
会员中心
服务器类
本站推荐
服务器类之精华