需求:在内网通过一台服务器k42n打通专网
条件:k42n通过wifi在内网中ip:172.16.236.228;同时k42n通过网线在专网中ip:172.16.235.146
服务器版本:Ubuntu 16.04.6 LTS
开始安装:
1. PPTPD的安装及配置
1).安装pptp
sudo apt-get install -y pptpd
2).编辑pptpd.conf配置
vim /etc/pptpd.conf
配置localip成专网的ip,localip:pptp服务器地址/本机地址;remoteip:分配给远程连接的客户端的IP地址
2. 添加客户端用户
vim /etc/ppp/chap-secrets
3. 修改远程连接用户的DNS
vim /etc/ppp/pptpd-options
此处使用的是k42n在专网下的dns配置
4. 开启网络转发功能
修改/etc/sysctl.conf
,找到#net.ipv4.ip_forward=1,将注释去掉
vim /etc/sysctl.conf
sudo sysctl -p (立即生效)
5. 配置iptables
配置iptables允许gre协议,1723和47端口
sudo iptables -A INPUT -p gre -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 47 -j ACCEPT
开启NAT转发
sudo iptables -t nat -A POSTROUTING -s 172.16.235.146/24 -o enp3s0f5 -j MASQUERADE
备注:172.16.235.146为localip; enp3s0f5 是专网的网卡名称
防止上网慢
sudo iptables -I FORWARD -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1356
6. 重启服务并测试
sudo service pptpd restart
创建一个×××连接,连接信息如下图,用户名密码为2所设置的信息
此时其他内网中的电脑,通过此vpn即可以连接到专网内的服务器了,可以ping通。