开发者社区> 问答> 正文

云服务器 ECS CentOS 6 配置 PPTP VPN的方法是什么


说明:使用 PPTP 服务存在安全隐患, 点击查看详情。因此,本文 CentOS 系统下 的 PPTP VPN 相关配置和说明仅用于示例和操作指引,请您根据实际需要进行操作,并考虑由此产生的影响及问题。


本文导航: 配置 CentOS PPTP VPN 客户端 常见问题

服务端配置说明



安装软件


  1. 使用命令 yum install -y ppp pptpd 安装软件。


配置 pptpd


  1. 编辑配置文件 vi /etc/pptpd.conf,即删除下列两行命令符前面的#。保存后退出。 #localip 192.168.0.1
  2. #remoteip 192.168.0.234-238


注意:IP 地址: localip 192.168.0.1 和 remoteip 192.168.0.2-200 分别是 vpn 的网关地址和 vpn 拨号获取地址段。您可以根据需要进行调整。

编辑文件 vi /etc/ppp/options.pptpd,即删除下列两行命令符前面的#。保存后退出。
  1. #ms-dns 10.0.0.1
  2. #ms-dns 10.0.0.2


注意:IP 地址:223.5.5.5 和 223.6.6.6 是阿里云的公共 DNS 服务地址,您可以根据需要调整为其它公共 DNS 服务地址。

输入命令 vi /etc/ppp/chap-secrets 设置 pptpd 的用户名和密码,如下所示。
  1. # Secrets for authentication using CHAP
  2. # client server secret IP addresses

根据需要添加账号,一行只添加一个用户账号。按照用户名 pptpd 密码 IP地址的格式输入,每一项用空格隔开。保存后退出。示例:test pptpd 123456 10.0.0.1。如下图所示:

在下面的命令符后面添加 ifconfig ppp0 mtu 1472,设置最大传输单元 MTU。如下图所示。
  1. /etc/ppp/ip-up. ipv6to4 ${LOGDEVICE}
  2. [ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@"



修改内核设置


  1. 编辑配置文件 vi /etc/sysctl.conf,将 net.ipv4.ip_forward=0 改成 net.ipv4.ip_forward=1,保存后退出。然后执行命令 sysctl -p 使修改后的参数生效。

  2. 添加 iptables 转发规则。 iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE

使用如下命令保存设置,并重启防火墙。
  1. /etc/init.d/iptables save
  2. /etc/init.d/iptables restart



配置 PPTP 服务


  1. 使用命令:/etc/init.d/pptpd restart重启 PPTP 服务

    注意:此时 PPTP 还未成功运行,所以当您使用 /etc/init.d/pptpd restart 命令重启 PPTP 服务时,系统会提示 Shutting down pptpd [FAILED],并发出警告。您可以忽略提示和警告,再次使用以上命令重启 PPTP 服务,警告信息就会消失。


  2. 使用如下命令设置 pptpd 和 iptables 自启动: chkconfig pptpd on
  3. chkconfig iptables on

至此,您的 PPTP VPN 服务端安装结束了。您可在本地计算机网络和共享中心设置新的连接或网络,即可通过 VPN 访问网络。

配置 CentOS PPTP VPN 客户端


  1. 使用命令:yum install -y ppp pptp pptp-setup 安装软件包。


  2. 使用命令连接 VPN 服务端。
    pptpsetup --create test --server IP--username 用户名 --password 密码 --encrypt --start

    注意: 您需要填写实际配置 VPN 服务端的 IP 地址,用户名,密码的值。


  3. 当系统提示已经被分配了 192.168.0.234 的客户端地址时,执行 ifconfig 可以看到 ppp0 网卡:

  4. 使用命令: ip route replace default dev ppp0 增加默认路由。

增加路由后,您就可以访问外网啦。

常见问题



浏览器无法打开网页


  • 现象:搭建 PPTP VPN 后,测试可以连接,可以 ping 通网站域名,但浏览器无法打开网页。

  • 分析:一般是 MTU 设置不正确导致的。

  • 方案A:在配置 VPN 的 Centos 服务器中执行 ifconfig ppp0 mtu 1472

    注意:上述解决方案可以临时生效,如果您需要长期生效的方案,参考 方案B

  • 方案B:

    1. 在 /etc/ppp/ip-up 文件中增加 ifconfig ppp0 mtu 1472,如下: $ vi /etc/ppp/ip-up
    2. ......
    3. [ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@"


  • 测试:


获取到错误的 IP 地址


  • 现象:客户端成功连接上 VPN 后,获取到错误的地址。获取的地址不是 VPN 服务端分配的地址,而是云服务器 ECS 的内网网卡地址,如图:

  • 分析:如果出现这种情况,假设配置的 VPN 客户端配置名称是 testvpn,可以参照如下步骤尝试处理:

  • 方案:

    1. 在 ppp 客户端配置文件 /etc/ppp/peers/testvpn 中添加 noipdefault 参数。

    2. 使用如下命令重启客户端。重新连接后通常可获取到正确的 IP 地址。 poff testvpn
    3. pon testvpn

    注意:重启客户端时,noipdefault 参数可能会被服务端传递过来的参数覆盖掉。如果noipdefault 被覆盖,您需要检查服务端的配置。

如果问题还未解决,您可以到 阿里云社区进行免费咨询,或联系 云市场商家寻求帮助。

展开
收起
boxti 2017-10-23 13:21:19 4987 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS计算与存储分离架构实践 立即下载