CentOS搭建VPN 之PPTP

  1. 一. 准备
  2. 二. 安装软件包
  3. 三. 配置 vpn 的 ip 网段
  4. 四. 配置 dns
  5. 五. 添加 client 端用户.
  6. 六. 添加防火墙规则
  7. 七. 启动

PPTP = Point-to-Point Tunneling Protocol

实验环境:
    华云主机 CentOS6.X 64位

一. 准备

首先检测自己的机器和网络环境是否支持.(我也不清楚这些检测方法是否真实有效)

[root@VM_LuoYe ~]$ modprobe ppp-compress-18 && echo ok  --- 打印出 OK 就表示支持 ?
或者
[root@VM_LuoYe ~]$strings '/usr/sbin/pppd' |grep -i mppe | wc --lines -- 打印出大于 0 的数字表示支持 ?

二. 安装软件包

[root@VM_LuoYe ~]$yum install -y iptables ppp pptpd

1.一般 iptables 系统都会自带
2.pptp如果yum源中没有到网上下载rpm包安装.
pptp 下载地址 http://sourceforge.net/projects/pptpclient/files/
这里提供一个版本为: pptpd-1.4.0-1.el6.x86_64

三. 配置 vpn 的 ip 网段

#  /etc/pptpd.conf
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

四. 配置 dns

#  /etc/ppp/options.pptpd 
ms-dns 8.8.8.8
ms-dns 8.8.4.4

五. 添加 client 端用户.

/etc/ppp/chap-secrets中添加用于client登录的用户名密码等参数.

# Secrets for authentication using CHAP
# client server secret IP addresses
LuoYe pptpd 123456789 *

六. 添加防火墙规则

开启防火墙的转发后.可以通过vpn访问网外.

#开启 forward
[root@VM_LuoYe ~]$ vim /etc/sysctl.conf
net.ipv4.ip_forward = 0 # 改为 1

[root@VM_LuoYe ~]$ sysctl -p -- 生效配置

# 设置 nat 转发规则
[root@VM_LuoYe ~]$iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
192.168.0.0/24 -- 为pptpd.conf中配置的vpn网段
eth0 -- pptpd 服务器连接Internet的网口
[root@VM_LuoYe ~]$ iptables-save

七. 启动

[root@VM_LuoYe ~]$ iptables-save
[root@VM_LuoYe ~]$ /etc/init.d/pptpd start

Enjoy it …


Tips:

  1. 腾讯云主机好像是不支持pptp协议的vpn,但是用步骤一中的命令都能测试通过.官方客服也说不支持.尝试搭建好服务后,客户端连接的日志报错如下:
    Nov 26 20:50:24 VM_LuoYe pptpd[22331]: CTRL: PTY read or GRE write failed (pty,gre)=(11,12)
  2. 利用 pptp 协议搭建vpn 比较简单、易用、速度比较快。android手机、和window PC都默认支持pptp不需要三方软件.但是pptp相对来不是很安全,而且很多环境下搭建不了。

—By LuoYe [QQ:291268775]
    2014/11/26