PPTP(Point to Point Tunneling Protocol),即点对点隧道协议。该协议是在PPP协议的基础上开发的一种新的加强型安全协议,支持多协议虚拟专用网,能够经过密码验证协议(PAP)、可扩展认证协议(EAP)等方法加强安全性。可使远程用户经过拨入ISP、经过直接链接Internet或其余网络安全地访问企业网。linux
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. 实验环境拓扑图网络
2. 实验环境规划ssh
角色tcp |
外网IP地址(NAT) |
内网IP地址(LAN) |
PPTP-Client |
Eth0:192.168.1.11 |
|
PPTP-Server |
Eth0:192.168.1.242(公网) |
Eth0:172.16.30.30 |
内网FTP服务器 |
Eth0:172.16.30.31 |
3. 查看系统版本
[root@PPTP-server ~]# cat /etc/redhat-release
4. 查看主机名
[root@PPTP-server ~]# hostname
5. 关闭防火墙
[root@PPTP-server ~]# systemctl stop ebtables firewalld
[root@PPTP-server ~]# systemctl disable ebtables firewalld
6. 关闭selinux
[root@PPTP-server ~]# vim /etc/sysconfig/selinux
[root@PPTP-server ~]# setenforce 0
[root@PPTP-server ~]# getenforce
7. 给PPTP-Server第二块网卡设置IP地址。
[root@PPTP-server ~]# nmcli connection add type ethernet con-name eth1 ifname ens37 ipv4.method manual ipv4.addresses 172.16.30.30/24 ipv4.gateway 172.16.30.1
1.配置epel源, 安装PPTP 相关软件
[root@PPTP-server ~]# wget -O /etc/yum.repos.d/centos.repo http://mirrors.aliyun.com/repo/Centos-7.repo
2.安装PPTP软件包
[root@PPTP-server ~]# yum -y install epel-release ppp pptp pptpd
3.开启内核转发
(1)编辑配置文件
[root@PPTP-server ~]# vim /usr/lib/sysctl.d/00-system.conf
添加如下内容:
net.ipv4.ip_forward = 1
保存退出
(2)将配置文件中的信息刷一遍
[root@PPTP-server ~]# sysctl -p /usr/lib/sysctl.d/00-system.conf
4.配置客户端上⽹ DNS , 如客户端不须要分配 DNS 可不配置
[root@PPTP-server ~]# vim /etc/ppp/options.pptpd
5.设置 PPTP拨号的帐号密码
[root@PPTP-server ~]# vim /etc/ppp/chap-secrets
# client server secret IP addresses
chenjf * chenjf123 *
6.分配 PPTP 拨号地址段, 注意和内⽹相同地址
[root@PPTP-server ~]# vim /etc/pptpd.conf
#添加本机公⽹IP(localip)
localip 192.168.1.242
#分配PPTP⽤户的内⽹⽹段(remoteip)
remoteip 172.16.30.130-200
7.启动 pptpd 服务并加⼊开机⾃启动
[root@PPTP-server ~]# systemctl start pptpd
[root@PPTP-server ~]# systemctl enable pptpd
[root@PPTP-server ~]# systemctl status pptpd
8.检查tcp1723端⼝是否开启
[root@PPTP-server ~]# ss -lntup | grep 1723
1.在win7客户端ping PPTP-server外网地址
2.在客户端ping内⽹地址172.16.30.30是⽆法ping通,说明没法直接链接。
3.打开⽹络共享中⼼,点击-->设置新的链接或⽹络
4.选择链接到⼯做区域
5.使⽤Internet链接到虚拟专用网络服务
6.填写PPTP服务器IP地址以及名称,而后点击下⼀步
7.填写在PPTP-Server上配置好的⽤户名以及密码, 而后点击链接
8.PPTP链接成功
9.测试是否可以链接172.16.30.31这台内⽹服务器
10.打开文件资源管理器在路径栏输入ftp://172.16.30.31
11.打开网络设备器查看ppp网卡IP地址
12.pptp默认链接是会经过pptp的默认⽹关来进⾏上⽹,若咱们想经过本身本地网关访问上网,咱们取消默认使⽤拨号链接上⽹功能便可
13.断开pptp拨号链接便可使用本地网关上网
14.打开浏览器访问一下www.baidu.com
1.以 CentOS7.5 为客户端安装软件包
[root@pptp-client ~]# yum -y install ppp pptp pptp-setup
2.客户端链接×××服务端
运⾏ pptpsetup --create test --server SERVER_IP --username ⽤户名 --password 密码 --encrypt --start 链接 PPTP 服务端。
您须要填写实际配置pptp 服务端的 IP 地址、⽤户名和密码。
[root@PPTP-client ~]# pptpsetup --create test --server 192.168.1.242 --username chenjf --password chenjf123 --encrypt --start
3.检查分配地址段
[root@PPTP-client ~]# ifconfig | grep -A 5 ppp
4.添加默认路由
[root@PPTP-client ~]# ip route replace default dev ppp0
5.咱们能够ping 172.16.30.31 ssh root@172.16.30.31
此时证实PPTP拨号链接成功。
以下这类错误和pptp客户端拨号提示链接691错误相似
1. 检查 ebtables和selinux,以及客户端防⽕墙。
systemctl status ebtables #查看ebtables防火墙的运行状态
systemctl status firewalld #查看firewall防火墙的运行状态
2. 若是是云主机请检查安全组⼊⼝和出⼝是否运⾏1723端⼝访问。
3. 若是是物理主机须要向IDC了解是否关闭此端⼝, 或路由不⽀持此协议。