# PPTP VPN服务配置

# 服务器端配置

此处以centos-7为例，不同linux发行版本可能会有差异，但主体都差不多

### 一、安装pptp服务

```bash
yum install -y ppp pptpd
```

### 二、配置pptp服务相关文件

#### 2.1 设置网关与vpn客户端IP地址段

修改`/etc/pptpd.conf`文件

```
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
```

#### 2.2 设置客户端dns。（此步可跳过）

修改`/etc/ppp/options.pptpd`文件

```ini
#ms-dns 10.0.0.1
#ms-dns 10.0.0.2
ms-dns 223.5.5.5
ms-dns 223.6.6.6
```

#### 2.3 设置连接账号与密码

修改`/etc/ppp/chap-secrets`文件

```
# Secrets for authentication using CHAP
# client	server	secret			IP addresses
user0  * 123456 *
user1  * 123456 *
```

### 三、开启ipv4转发功能

#### 3.1 修改内核参数

修改`/etc/sysctl.conf`文件，添加如下配置

```ini
net.ipv4.ip_forward = 1
```

然后执行命令

```bash
sysctl -p
```

#### 3.2 添加iptables的NAT转发规则

```bash
# 192.168.0.0/24替换成真实设置的网段
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
# XXX.XXX.XXX.XXX是你的真实外网IP地址
iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -j SNAT --to-source XXX.XXX.XXX.XXX

# 保存iptables规则
iptables-save > /etc/sysconfig/iptables
```

##### 参考资料：

- [【阿里云】-如何使用CentOS 7实例配置PPTP VPN服务端到客户端的连接](https://help.aliyun.com/zh/ecs/how-do-i-configure-a-connection-between-a-pptp-vpn-server-and-a-pptp-vpn-client-on-a-centos-7-instance)