Centos下连接PPTP VPN配置说明(非图形界面)
作者:admin
发布时间:January 5, 2015
一.安装pptp和pptp-setup
yum install pptp pptp-setup
二.创建配置
pptpsetup --create aevpn --server vpn服务器IP --username 账号 --password 密码 --encrypt --start
若报如下错误
FATAL: Module ppp_mppe not found.
/usr/sbin/pptpsetup: couldn't find MPPE support in kernel.
则需要加载内核模块MPPE
modprobe ppp_mppe
连接VPN
pppd call aevpn
验证连接情况
然后通过如下命令验证连接情况
ip a |grep ppp
执行ifconfig也可以看到一个ppp0设备.
排错
如果上面命令没有任何返回,则说明连接失败了,可以参看/var/log/message文件了解错误的原因
tail -f /var/log/message | grep ppp
服务端不支持MPPE
若错误为
MPPE required but peer negotiation failed
说明服务端不支持MPPE加密,pptpsetup时不需要使用—encrypt选项。可以手工修改/etc/ppp/peers/aevpn文件
vim /etc/ppp/peers/aevpn
去除或者注释掉require-mppe-128
客户端不支持MPPE
若错误为
LCP terminated by peer (MPPE required but peer refused)
说明服务端要求MPPE加密,但是客户端不支持,pptpsetup时漏掉了—encrypt选项。解决方法正好相反,往/etc/ppp/peers/codelife文件添加一行require-mppe-128
三.添加路由表
在Windows下,连接VPN之后会自动添加路由表,所有的流量都会通过VPN,但是linux下不是这样的,需要手动添加路由.
/**
*这里有三个IP
*112.124.132.142:公网IP
*192.168.10.1:局域网网关
*192.168.10.203:本机的局域网IP
*/
[root@localhost peers]# ip route replace 112.124.132.142 via 192.168.10.1 dev eth0 src 192.168.10.203
[root@localhost peers]# ip route replace default dev ppp0
[root@localhost peers]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
112.124.132.142 192.168.10.1 255.255.255.255 UGH 0 0 0 eth0
192.168.8.1 * 255.255.255.255 UH 0 0 0 ppp0
192.168.10.0 * 255.255.255.0 U 2 0 0 eth0
default * 0.0.0.0 U 0 0 0 ppp0
四.断开连接
注意:启动连接很简单,但停止不能使用ifconfig pp0 down,否则只是禁用了ppp0网卡,后台连接还是存在的。当然,可以杀进程(killall pppd)来断开连接。不过,ppp工具包提供了更好用的脚本。但需要您进行一些额外的工作:
cp /usr/share/doc/ppp-2.4.5/scripts/pon /usr/sbin/
cp /usr/share/doc/ppp-2.4.5/scripts/poff /usr/sbin/
chmod +x /usr/sbin/pon
chmod +x /usr/sbin/poff
然后使用下面的命令启动和关闭连接即可:
pon vpn
poff vpn
评论已关闭