mysql ppp验证

时间:11-07-01 栏目:技术 作者:liva 评论:0 点击: 1,826 次

首先需要安装 ppp 和 openssl 的 header / lib

aptitude install ppp-dev libssl-dev下载安装 pppd-sql

cd /usr/src
wget http://freshmeat.net/urls/5649d7ea329d121d094f12544e2b70a1
tar zxvf pppd-sql-0.8.0.tar.gz
cd pppd-sql-0.8.0
./configure <- 注意结果提示,看看你的数据库服务是否被找到了
./make
./make install另外关键的 mysql.so ppp 插件文件不知道为什么没有在 make install 时候安装到应有位置,手工 cp 吧,目标路径按照你系统里面的 pppd 版本号修改。

cp /usr/src/pppd-sql-0.8.0/src/.libs/mysql.so /usr/lib/pppd/2.4.5/下面修改 ppp 的配置文件,如果你是按照我之前的 ipsec + L2TP 文档安装的话,那么就是修改 /etc/ppp/options.xl2tpd 这个文件,加入以下内容:

plugin mysql.so
mysql-host MYSQL-HOST
mysql-port MYSQL-PORT
mysql-user MYSQL-USER
mysql-pass MYSQL-PASS
mysql-pass-encryption AES
mysql-pass-key SALT
mysql-database MYSQL-DB
mysql-table MYSQL-TABLE
mysql-column-user username
mysql-column-pass ppppass
mysql-column-client-ip client_ip
mysql-column-server-ip server_ip
mysql-column-update status
mysql-exclusive
mysql-authoritative具体的配置请看 man pppd-mysql,数据库和表结构也很简单,我是直接在之前 OpenVPN 的表格基础上修改的。

连接试试看吧,应该没问题了,最终效果是用户名密码在所有服务器的 ipsec+L2TP 以及 OpenVPN 连接方式全部通用。如果你的 ppp 使用 CHAP2 验证密码的话,这个插件只支持 AES 加密,而 OpenVPN 用的是 mysql.PASSWORD(),所以这两个服务不能共享一个密码字段(当然明文除外)。我觉得问题不大,用 PHP 简单写个脚本即可,还可以顺便加上用户修改密码功能,如果再加上支付宝 API 调用的话。。。都可以做全自动化的 VPN 网络销售系统了。。。

来自http://b.gkp.cc/2010/08/12/setup-pppd-with-mysql-auth/

声明: 本文由( liva )原创编译,转载请保留链接: mysql ppp验证

mysql ppp验证:等您坐沙发呢!

发表评论


© 2013 enjoydiy.com. Design by zijiao. 57 queries in 0.331 seconds, using 21.05MB memory