pptpd基于mysql用户验证的完整操作步骤
1.安装pptp
yum -y install ppp pptpd ppp-devel
2.安装mysql
yum -y install mysql mysql-server mysql-devel
3.创建mysql库
CREATE DATABASE IF NOT EXISTS pptp*** DEFAULT CHARSET utf8; 创建表CREATE TABLE `***user` ( `id` int(11) NOT NULL auto_increment, `username` varchar(16) NOT NULL, `password` varchar(32) NOT NULL, `status` int(11) NOT NULL default '0', `clientip` varchar(15) NOT NULL, `serverip` varchar(15) NOT NULL, PRIMARY KEY (`id`), KEY `username` (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;授权GRANT ALL ON pptp***.* TO ***@'172.16.0.14' IDENTIFIED BY '***@2017_shanghai' WITH GRANT OPTION;插入测试用户INSERT INTO `***user` (`username`, `password`, `status`, `clientip`, `serverip`) VALUES ('user', 'test1234', 0, '192.168.0.100', '192.168.0.114');
4.安装pppd-sql 插件
下载地址:http://down.51cto.com/data/2325621 tar -xf pppd-sql-0.8.0.tar.gz cd pppd-sql-0.8.0./configure --prefix=/usr/local/data/pppd-sql --enable-mysql make && make install 复制mysql库文件 cp -f src/.libs/mysql.so /usr/lib64/pppd/2.4.5/
5.配置pptpd
vim /etc/pptpd.conf localip 192.168.0.1remoteip 192.168.0.100-200 logfile /var/log/pptpd.log
6.配置pptpd的mysql信息
vim /etc/ppp/options.pptpd plugin mysql.so mysql-host 172.16.0.14mysql-port 3306mysql-user *** mysql-pass ***@2017_shanghai mysql-pass-encryption NONE mysql-database pptp*** mysql-table ***user mysql-column-user username mysql-column-pass password mysql-column-client-ip clientip mysql-column-server-ip serverip mysql-column-update status mysql-exclusive mysql-authoritative
参数解释:
clientip:指的是用户连接***后获取到的地址。 serverip:指的是pptp 虚拟网卡的地址 username: 登录的用户名 password: 登录的密码 status : 连接中值为1,断开时值为0
重启pptpd
service pptpd restart chkconfig pptpd on
7.配置iptables
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE 开启ip转发 vim /etc/sysctl.conf net.ipv4.ip_forward = 0改成 net.ipv4.ip_forward = 1 sysctl -p
8.本地配置***连接
这里填写pptp 服务器的外网ip
这里填写***的用户名和密码
转载于:https://blog.51cto.com/thedream/1944771