1.虚拟专用网
1.1 PPTP介绍
PPTP(Point to Point Tunneling Protocol),即点对点隧道协议。该协议是在PPP协议的基础上开发的一种新的加强型安全协议,支持多协议虚拟专用网,能够经过密码验证协议(PAP)、可扩展认证协议(EAP)等方法加强安全性。可使远程用户经过拨入ISP、经过直接链接Internet或其余网络安全地访问企业网。
1.2 虚拟专用网工做原理
1.3 虚拟专用网络隧道协议
1.PPTP协议算法
使用MS-CHAP v2验证方法,也能够选择安全性更好的EAP-TLS证书验证方法。身份验证完成后,以后双方所发送的数据能够利用MPPE加密法来加密,仅支持128位的RC4加密算法vim
2.L2TP/IPSec协议centos
支持IPSec的预共享密钥与计算机证书两种身份验证方法,计算机证书方法安全性较高,预共享密钥方法应仅做为测试时使用。身份验证完成后,以后双方所发送的数据则利用IPSec ESP的3DES或AES加密方法浏览器
3.SSTP协议安全
采用HTTPS协议,所以能够经过SSL安全措施来确保传输安全性。而HTTPS是企业广泛采用的协议。
1.4 虚拟专用网络应用场景
1.出差人员访问公司内部局域网
2.家庭办公访问公司内部局域网
3.总公司与分公司之间实现网络互访
4.企业与客户、厂商联盟之间或者是企业与银行互通
1.检查是否支持
modprobe ppp-compress-18 && echo yes
返回 yes 表示支持 pptp
2.检测PPP是否开启:
cat /dev/ppp
返回:cat: /dev/ppp: No such device or address 表示支持
3.安装组件
yum install epel-release
yum install ppp iptables pptpd pptp
4.编辑pptpd.conf
编辑 pptpd.conf 这个文件:vim /etc/pptpd.conf
找到下面的两行,并且去掉注释:
localip 10.2.0.1
remoteip 10.2.0.100-150
第一行的意思是VPN连接成功后,VPN server(就是你启动 pptpd 服务)的地址,就是说通过这个地址来找到 VPN server。
第二行是分配给客户端的 ip 范围。remoteip最好不用和VPN client本身所在的局域网的ip冲突,默认即可
5.编辑options.pptpd
终端输入:vim /etc/ppp/options.pptpd
其他的一般保持默认即可,主要是设置下 DNS:
ms-dns 8.8.8.8
ms-dns 114.114.114.114
同样是去掉注释,然后修改,一般设置个 DNS 就可以了,或者根据需要设置其他,例如:
name pptpd #自行设定的VPN服务器的名字,可以任意
#refuse-pap #拒绝pap身份验证
#refuse-chap #拒绝chap身份验证
#refuse-mschap #拒绝mschap身份验证
require-mschap-v2 #为了最高的安全性,我们使用mschap-v2身份验证方法
require-mppe-128 #使用128位MPPE加密
ms-dns 8.8.8.8 #设置DNS
ms-dns 8.8.4.4 #设置DNS
proxyarp #启用ARP代理,如果分配给客户端的IP与内网卡同一个子网
#debug #关闭debug
#lock #锁定TTY设备
nobsdcomp #禁用BSD压缩模式
novj
novjccomp
#nologfd #不输入运行信息到stderr
logfile /var/log/pptpd.log #存放pptpd服务运行的的日志
6.设置账号密码
终端输入: vim /etc/ppp/chap-secrets
格式上面有提示,就是:用户名 pptpd 密码 *
# Secrets for authentication using CHAP
# client server secret IP addresses
User * 密码 *
* 表示的是随机分配 ip
7.修改内核参数
#vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.send_redirects = 0
#sysctl -p #修改内核生效
8.添加转发规则,可选择关闭防火墙(centos6必须添加centos7另外)
XEN架构:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
OpenVZ架构:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source VPS公网IP
sudo iptables -A INPUT -p tcp --dport 1723 -j ACCEPT #开放1723端口
sudo iptables -A INPUT -p gre -j ACCEPT #开启gre协议
9.启动服务
systemctl start pptpd
云主机需要开放1723端口
TCP 1723 请确保并且有必要 Protocol 47 (GRE) PPTP 在此之前正确运行。您在日志中看到的问题可能是由于 GRE 未通过防火墙正确中继。
此外, mppe-stateful 您可能需要添加 pptpd-options 文件以允许Windows主机使用。中间 NAT 路由器可能会按照通过次数进行连接,mru 因此必须减少。和 mtu 设置。
10.测试
yum install -y ppp pptp pptp-setup net-tools
pptpsetup --create myvpn --server pptp_server --username username1 --password passwd1 --encrypt -start
补充
可以使用 iptables -X -t nat 清除转发规则(iptables -F);
iptables -t nat -L 可以查看 NAT 表是否已经生效
#带行号查看当前所有规则
iptables -L -n --line-numbers
#清除所有规则
iptables -F
#删除指定行号(以下命令中的“5”为指定行号)规则
iptables -D 5
#保存当前配置;相当于旧版/etc/init.d/iptables save
service iptables save
#重启iptables;相当于旧版本/etc/init.d/iptables restart
service iptables restart
#注册iptables服务;相当于旧版 chkconfig iptables on
systemctl enable iptables.service
#开启服务
systemctl start iptables.service
#查看状态
systemctl status iptables.service
ipdables 配置文件位于 /etc/sysconfig/iptables
查看VPS的架构
首先安装一个软件:yum install virt-what
装好后使用命令 virt-what 即可查看 linux 下 VPS 的架构了
windows10配置连接