CentOS搭建pptpd服务器

By | 2014年7月20日

1 服务器端安装软件

1.1 [root@renyiwei ~]#yum install pptpd

2 配置pptp

2.1编辑/etc/pptpd.conf,命令如下

[root@renyiwei ~]#vi /etc/pptpd.conf



#localip 192.168.0.1
#remoteip 192.168.0.234-238,192.168.0.245

修改成

localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

即将这两行第一个字符“#”去掉,保存退出 (Vi 命令补充:如需查找abc则输入”:/abc”,修改文本输入i,退出修改按esc,保存并退出输入”:/wq”)

2.2编辑/etc/ppp/options.pptpd,命令如下

[root@renyiwei ~]#vi /etc/ppp/options.pptpd



#ms-dns 10.0.0.1
#ms-dns 10.0.0.2

改成

ms-dns 8.8.8.8
ms-dns 8.8.4.4

即将这两行第一个字符“#”去掉,而后修改DNS的IP。

2.3设置使用pptp的用户名和密码 命令:

[root@renyiwei ~]#vi /etc/ppp/chap-secrets

打开后只有两行,而且一个账号都没有

# Secrets for authentication using CHAP
# client server secret IP addresses

根据您的需要添加账号,每行一个。按照:“用户名 pptpd 密码 ip地址”的格式输入,每一项之间用空格分开,例如:renyiwei pptpd 123456 * (*表示所有IP) 保存并退出。

3、修改内核设置,使其支持转发 命令:

[root@renyiwei ~]#vi /etc/sysctl.conf

将net.ipv4.ip_forward=0 改成net.ipv4.ip_forward=1

保存并退出 执行以下命令使修改后的内核生效

[root@renyiwei ~]#sysctl -p

4、添加iptables转发规则

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -jMASQUERADE

(注意:由于阿里云是双网卡,内网eth0,外网eth1,所以这块特别容易误写为eth0,这也是为什么很多杂乱的教程无法配置成功的原因之一)

添加好转发规则后保存一下并重启iptables

[root@renyiwei ~]#/etc/init.d/iptables save
[root@renyiwei ~]#/etc/init.d/iptables restart

5、重启pptp服务

[root@renyiwei ~]#/etc/init.d/pptpd restart

这里要注意一下,其实此时pptp还没运行起来。所以使用restart重启,会显示Shutting down pptp [FAILED]。还会有一个警告,可以忽略。如不放心可以再用以上命令重启一下pptp就非常顺利的运行了。

6、设置pptp和iptables随系统启动


[root@renyiwei ~]#chkconfig pptpd on
[root@renyiwei ~]#chkconfig iptables on

7 、这样子还是不能正常上网的,需要设置一下MTU

iptables -I FORWARD -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1356

至此,pptp服务端安装结束。

在PC端的“网络和共享中心”,设置新的连接或网络,即可访问。

注:阿里云内网服务器需要通过有外网ip的服务器进行端口转发,可以配置iptables实现