Freeradius客户端配置,配合pptp/l2tp
pptp和l2tp前面是有过说明的,这里就不再复述了。
1、安装radclient
首先要下载freeradius客户端,http://freeradius.org/freeradius-client/在这里选择客户端下载,完成后解压
1 2 3 4 |
tar -zxf freeradius-client-1.1.7.tar.gz #我下载的是1.1.7的客户端,这里的版本自己决定 cd freeradius-client-1.1.7 ./configure make && make install |
2、配置radclient
安装好后编辑servers文件
1 |
vim /usr/local/etc/radiusclient/servers |
加上以下内容
1 |
localhost testing123 #这个是以本地服务端来配置的,如果不是在一起的话,把localhost换成服务器ip |
这里的意思是设定freeradius的地址和客户端密钥、因为客户端和服务器都在同一台机器上、所以使用localhost、如果是分开放置的放请输入对应的freeradius服务器IP、至于后面的密码请参看freeradius的服务器设定
如果你是客户端和服务端都是分开的、这里同样要把localhost改成对应的服务器IP
1 |
vim /usr/local/etc/radiusclient/radiusclient.conf |
然后是增加microsoft的字典、这步非常非常的重要、否则windows的用户会无法通过freeradius的验证!!
1 2 |
wget -c http://small-script.googlecode.com/files/dictionary.microsoft #这个链接可能已经失效,有的时候下载不了,可以自行google这个字典文件 mv ./dictionary.microsoft /usr/local/etc/radiusclient/ |
然后再以下内容加入到/usr/local/etc/radiusclient/dictionary文件里
1 2 3 4 5 6 7 |
cat >>/usr/local/etc/radiusclient/dictionary<<EOF INCLUDE /usr/local/etc/radiusclient/dictionary.sip INCLUDE /usr/local/etc/radiusclient/dictionary.ascend INCLUDE /usr/local/etc/radiusclient/dictionary.merit INCLUDE /usr/local/etc/radiusclient/dictionary.compat INCLUDE /usr/local/etc/radiusclient/dictionary.microsoft EOF |
同时注意要注释掉如图所示部分
90~102行开始始的ipv6的这个注释掉,否则后面vpn在验证的时候会报错,因为没有启用ipv6
接着修改以下以下配置、否则可能会在其它地方报错
1 2 3 |
sed -i 's/logwtmp/\#logwtmp/g' /etc/pptpd.conf sed -i 's/radius_deadtime/\#radius_deadtime/g' /usr/local/etc/radiusclient/radiusclient.conf sed -i 's/bindaddr/\#bindaddr/g' /usr/local/etc/radiusclient/radiusclient.conf |
把这些文件里的logwtmp、radius_deadtime、bindaddr都统统注释掉
3、配置pptp/l2tp
然后编辑pptpd-options文件
1 |
vim /etc/ppp/pptpd-options |
把这三行加入到行尾
1 2 3 |
plugin /usr/lib/pppd/2.4.5/radius.so plugin /usr/lib/pppd/2.4.5/radattr.so radius-config-file /usr/local/etc/radiusclient/radiusclient.conf |
这里的radius.so和radattr.so地址可能按实际情况会有变、我这里的机器是32位的、所以选择lib、如果是64位的机器要将lib替换成lib64、如果版本不同也有可能不是2.4.5、具体可以自行搜索确定该路径
l2tp编辑options.xl2tpd
1 |
vim /etc/ppp/options.xl2tpd |
也是在最后插入上面的三行
然后重启服务
1 2 3 4 |
service freeradius restart service pptpd restart service ipsec restart service xl2tpd restart |
客户端如果在检测链接的时候,提示无法找到radtest命令,则需要在客户端安装一个freeradius的命令组件
1 |
apt-get install freeradius-utils |
因为freeradius已经和mysql和pptpd/l2tp连接了,所以现在的用户应该以mysql里的用户为准、比如chap-secrets文件存在用户为test、而mysql也存在test的用户、那么就应该以mysql的用户名和密码为准、即使chap-secrets的用户不存在、但已经存在于mysql的用户就可以通过登录了、所以都应该以mysql的radcheck表的用户密码为准
近期评论