centos7搭建VPN教程

使用Xshell连接上centos7后在终端输入:

modprobe ppp-compress-18 && echo yes
返回 yes 表示支持 pptp,ppp-compress-18代表压缩协议,用于在PPP链路层上进行数据压缩和解压缩,以减少数据传输时的网络流量和延迟。 

图片

输入:yum -y update 自动更新所有已安装的软件包和依赖项,以确保系统保持最新状态。 

图片

输入:yum -y install ppp 安装ppp

图片

输入:yum -y install pptpd 安装pptp守护进程 

图片

输入vi /etc/pptpd.conf  配置pptpd.conf

图片

找到最下面的localip,去掉开始的那个#符号

localip是指VPN服务器的本地IP地址,remoteip是指为VPN客户端分配的IP地址,这里我们使用默认的,如果客户端比较多的话将remoteip的范围改大一些。 

图片

按Esc键退出编辑模式,然后输入:wq保存并退出文件。 

图片

输入:vi /etc/ppp/options.pptpd 配置options.pptpd

ms-dns 8.8.8.8    谷歌DNS服务器地址

ms-dns 8.8.4.4    谷歌DNS服务器备用地址

然后按照上面方法保存 

图片

图片

输入:vi /etc/ppp/chap-secrets 配置连接VPN客户端要用到的帐号密码

client为帐号,server是pptpd服务,secret是密码,*表示是分配任意的ip 添加两个测试账号 

图片

输入:vi /etc/sysctl.conf 配置sysctl.conf

在末尾添加以下两行命令:

net.ipv4.ip_forward = 1 启用IPv4数据包转发功能

sysctl -p   使更改生效 

图片

添加一个规则,允许通过 TCP 协议访问 1723 端口

iptables -A INPUT -p tcp --dport 1723 -j ACCEPT

特别注意:在云服务器的防火墙中也要放行1723这个端口 

图片

增加转发规则,为了可以连上vpn后可以上网

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

保存规则:service iptables save

重启生效:systemctl restart iptables 

图片

重启pptp服务  systemctl restart pptpd

将PPTP VPN服务添加到开机自启服务列表中,使它在系统启动时自动启动。   systemctl enable pptpd 

图片

VPN服务器搭建完成。下面验证客户端是否能连接上。 

图片

填写服务器地址、用户名、密码进行连接。 

图片

图片

图片

cmd输入ipconfig查看VPN内网地址是在 192.168.0.234-238这个范围内的验证完成。 

图片

这样搭建VPN后,让你的云服务器只做转发,减少云服务器的负载,客户端有时候会自动断开连接,下一次讲解,如何通过代码实现断开VPN后,实现自动连接,这样就可以用本地的电脑做一些应用而不需要性能好的云服务器了。

作者简介:

曹言林:加入工控八余载,从事过单片机编程、控制柜接线、设备维修,PLC编程、上位机编程、MES实施。对各方面虽不是专家级别,也愿为工控圈添砖加瓦,贡献自己的一份力量。

Tags: