返回列表 发帖

CentOS6.9配置VPN

采用点到点隧道协议(Point to Point Tunneling Protocol)

[root@localhost ~]# yum -y install ppp wget

[root@localhost ~]# wget http://poptop.sourceforge.net/yum/beta/packages/pptpd-1.4.0-1.el6.x86_64.rpm

[root@localhost ~]# yum -y install pptpd-1.4.0-1.el6.x86_64.rpm



编辑 /etc/pptpd.conf
去到文件的最后,追加或修改:(这样子就可以了,不用管服务器的IP是什么!)
localip 192.168.18.1
remoteip 192.168.18.2-254
图片1.png
2020-9-5 09:15




编辑 /etc/ppp/options.pptpd
这里绝大多数参数只需维持原来的默认值即可,我们只需要改变其中的 ms-dns 选项,为 VPN 客户端指派 DNS 服务器地址:
修改(最好是复制粘贴后修改)
ms-dns 8.8.8.8
ms-dns 114.114.114.114
图片2.png
2020-9-5 09:16




修改 /etc/ppp/chap-secrets
这里面存放着 VPN 的用户名和密码,根据实际情况填写即可。如文件的注释所示,第一列是用户名,第二列是服务器名(默认写 pptpd 即可),第三列是密码,第四列是IP限制(不做限制则写 *
如下图:(无需创建系统用户)
图片3.png
2020-9-5 09:16




修改 /etc/sysctl.conf
图片4.png
2020-9-5 09:16

修改为:(开启 ipv4 forward)
图片5.png
2020-9-5 09:17



使新配置生效:
[root@localhost ~]# sysctl -p
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296







先把防火墙规则清空:(其实也可以把拒绝的规则清掉)
[root@localhost ~]# iptables -t filter -F

[root@localhost ~]# iptables -t filter -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         


[root@localhost ~]# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination   






添加防火墙规则:(服务器是单网卡 eth0 ,IP地址为 192.168.168.130

笺注:PPTP的默认端口为TCP 1723

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

iptables -A INPUT -p gre -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.18.0/24 -o eth0 -j SNAT --to-source 192.168.168.130

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE


[root@localhost ~]# iptables -t filter -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:1723
ACCEPT     47   --  0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         


[root@localhost ~]# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
SNAT       all  --  192.168.18.0/24      0.0.0.0/0           to:192.168.168.130
MASQUERADE  all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination   



保存防火墙规则:
[root@localhost ~]# iptables-save > /etc/sysconfig/iptables

[root@localhost ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.7 on Thu Jul  5 05:08:20 2018
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -s 192.168.18.0/24 -o eth0 -j SNAT --to-source 192.168.168.130
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Thu Jul  5 05:08:20 2018
# Generated by iptables-save v1.4.7 on Thu Jul  5 05:08:20 2018
*filter
:INPUT ACCEPT [56:3856]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [43:5820]
-A INPUT -p tcp -m tcp --dport 1723 -j ACCEPT
-A INPUT -p gre -j ACCEPT
COMMIT
# Completed on Thu Jul  5 05:08:20 2018



重启 iptables 服务:
service iptables restart

重启 pptpd 服务:
service pptpd restart


开机自动开启iptables 和pptpd
chkconfig --level 35 iptables on
chkconfig --level 35 pptpd on









######

在Windows7客户端建立VPN连接

笺注:前提是客户端和VPN服务器之间可以通讯。


鼠标右击一下:
图片6.png
2020-9-5 09:20



图片7.png
2020-9-5 09:21



设置新的连接或网络:
图片8.png
2020-9-5 09:21



图片9.png
2020-9-5 09:21



图片10.png
2020-9-5 09:21



图片11.png
2020-9-5 09:21



VPN用户:
图片12.png
2020-9-5 09:22



图片13.png
2020-9-5 09:22



图片14.png
2020-9-5 09:22






######
验证VPN

鼠标左击一下:
图片15.png
2020-9-5 09:23



图片16.png
2020-9-5 09:23



图片17.png
2020-9-5 09:23




C:\Users\jacky>ipconfig/all
图片18.png
2020-9-5 09:23

注释:
连接VPN后,上网使用的是VPN服务器分配的DNS地址、内网IP地址等等;
不用配置网关;




笺注:
以上实验是在虚拟机完成的,假如服务器是在公网,客户端在百度上显示的IP地址应也是服务器的公网IP地址,如下图:
图片19.png
2020-9-5 09:24


图片20.png
2020-9-5 09:24



www.youtube.com
图片21.png
2020-9-5 09:24








######
连接VPN
图片22.png
2020-9-5 09:25



图片23.png
2020-9-5 09:25


笺注:可以在客户端建立多个VPN连接的,但最好不要同时连接。




######
设置指定VPN连接的具体属性:(有时属性不正确,会导致无法连接的)
图片24.png
2020-9-5 09:25



图片25.png
2020-9-5 09:25



图片26.png
2020-9-5 09:26



图片27.png
2020-9-5 09:26



图片28.png
2020-9-5 09:26



图片29.png
2020-9-5 09:26



图片30.png
2020-9-5 09:27





相关文章:
CentOS6_iptables

CentOS8配置VPN
Windows2008R2配置VPN
Windows2008R2配置VPN代理(CCProxy)
Windows2012R2配置VPN

返回列表