代码改变世界

centos 安装pptp

2016-10-08 16:23  cmsd  阅读(576)  评论(0编辑  收藏  举报

1. 安装依赖 ppp
yum -y install ppp
2. 编译安装pptpd
wget http://jaist.dl.sourceforge.net/project/poptop/pptpd/pptpd-1.2.3/pptpd-1.2.3.tar.gz
tar xvf pptpd-1.2.3.tar.gz
cd pptpd-1.2.3
./configure --prefix=/opt/pptp
make && make install
3. 修改配置文件
/opt/pptp/pptpd.conf

option /opt/pptp/options.pptpd
logwtmp
localip 192.168.100.1
remoteip 192.168.100.100-200

/opt/pptp/options.pptpd
name pptpd
debug
#logwtmp
logfile /var/log/pptpd.log
lock
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
proxyarp
nobsdcomp
novj
novjccomp
nologfd
ms-dns 8.8.8.8

4. 添加ppp认证
/etc/ppp/chap-secrets

ghw pptpd "ghw2014" *

5. 启动pptpd
/opt/pptp/sbin/pptpd -c /opt/pptp/pptpd.conf -o /opt/pptp/options.pptpd

6. 连接测试
结果应该是能连上,但上不去网
7. 修改内核参数,允许转发
/etc/sysctl.conf
net.ipv4.ip_forward = 1

sysctl -p
8. iptables添加转发
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -j MASQUERADE

9. 为了移动设备能用修改MTU
/opt/pptp/options.pptpd ##最后添加
mtu 1396

iptables -A FORWARD -s 192.168.100.0/24 -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j TCPMSS --set-mss 1356

1.客户端无法连接上,查看/var/log/message显示如下内容:
/usr/lib/pptpd/pptpd-logwtmp.so: cannot open shared object file: No such file or directory
解决方案:手动复制一份到/usr/lib目录下就行了cp -r /opt/pptp/lib/ /usr/lib/
2./var/log/message显示如下内容:
plugin /usr/lib/pptpd/pptpd-logwtmp.so for pppd version 2.4.3 this is 2.4.5
解决方案:恭喜你,出现这错误就要重新编译pptp了,修改解压文件中的/plugin目录下的patchlevel.h,其中的2.4.3修改为2.4.5,然后重新编译下就ok了。
3. 有的网站打不开,可能是mtu的问题,使用iptables设置mtu解决 /sbin/iptables -I FORWARD -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1356
4. vpn时而断开,查看日志好些 GRE的read或write报错,可能是防火墙没有放行 gre协议 /sbin/iptables -I INPUT -p 47 -j ACCEPT