# 环境条件
- 至少拥有一台公网IP主机,centos7系统,配置没要求,网络带宽越高越好;
- 拥有能够联网的一台或者多台私人网络设备;
# pptp服务器的搭建
# 安装及配置pptp服务
#查看是否支持pptp,支持的话会输出yes
modprobe ppp-compress-18 && echo yes
#自动更新所有已安装的软件包和依赖项
yum -y update
# 安装服务
yum -y install ppp
yum -y install pptpd
#配置ip网段(尽量不要与常用的网段冲突,尽可能配置成c网段)
vim /etc/pptpd.conf
`localip 192.168.0.1
remoteip 192.168.0.2-238,192.168.0.245
`
#配置网关
vim /etc/ppp/options.pptpd
`ms-dns 8.8.8.8
ms-dns 8.8.4.4
`
#配置客户端凭证
vim /etc/ppp/chap-secrets
`automannn pptpd 123passd *`
#配置允许ipv4数据包转发
vim /etc/sysctl.conf
` net.ipv4.ip_forward = 1
`
sysctl -p
# 网络配置
注意事项,当客户端网络转发没配置成功时,服务器也无法实现内网转发,所以一定要确保接入网络客户端配置(linux,windows)的正确性。
# NAT转发(用于将内网转为外网地址,可选)
- 在云服务器的防火墙中,开启1723端口(ECS一般都没有使用本地防火墙,如果使用了本地防火墙,则本地放开端口。)
- 本地放开端口命令:
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
。
- 本地放开端口命令:
- 添加转发规则:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
。添加了转发规则后,有可能不生效,可用如下方法尝试:systemctl start firewalld.service 开启防火墙
--firewall-cmd --reload 更新防火墙
--systemctl stop firewalld
systemctl start firewalld.service 开启防火墙
--firewall-cmd --permanent --add-masquerade 设置为NAT模型
--firewall-cmd --reload 更新防火墙
--systemctl stop firewalld
- 注意事项,不需要安装iptables服务即可完成此流程。
- iptables命令是基于内核的,用于添加、删除或修改防火墙规则。这些规则基于内存,在系统重启前会消失,因此需要iptables服务或firewalld服务来保存和重载规则。
- iptables服务(如iptables.service和firewalld.service)的作用是管理防火墙规则。在系统重启后,这些服务会自动重载规则,并在系统关机时卸载规则。此外,与iptables命令不同,iptables服务通常需要安装额外的工具包才能使用。
- 需要注意的是,CentOS 7已经使用firewall服务替代了iptables服务。虽然firewalld是替代提供的防火墙管理服务,但它仍然使用iptables对内核命令进行动态通信包过滤。
# windows客户端连接
# 配置网络
- 【设置】-【网络和Internet】-【VPN连接】-添加VPN
- 如果出现连接被远程计算机终止,需设计加密格式:【网络设备管理器】-【添加的VPN网卡】-【属性】-【安全】-【允许使用这些协议-PAP,CHAP2勾选上】
# 配置路由
默认情况下,会导致无法访问外网,需配置路由
【网络设备管理器】-【添加的VPN网卡】-【属性】-【网络】-【双击ipv4】-【高级】-【在远程网络上使用默认网关-取消勾选】, 该配置表明所有的网络都不走该VPN网卡。
将特定网段设置成走VPN:
route print | findstr 网卡名称 route add -p 192.168.0.0/24 0.0.0.0 if 52(ppp的网络接口编码)
重连即可
windows一般网卡配置信息重启后不需要再次配置
# linux客户端配置
# 安装工具
yum install -y pptpsetup
# 配置VPN
pptpsetup --create tencentVPN --server 150.158.158.64 --username automannn --password 123passd --encrypt --start
# 配置路由
ip route add 192.168.0.0/24 dev ppp0
注意,linux每次重启后,这个命令都需要再次执行。
- 重连即可