***简介
***(全称Virtual Private Network)虚拟专用网络。
依靠ISP和其他的NSP,在公用网络中建立专用的数据通信网络技术,可以为企业之间或者个人与企业之间提供安全的数据传输隧道服务。
***应用分类
1.远程访问***服务
员工个人电脑通过远程拨号到企业办公网络,如公司的OA系统。
运维人员远程拨号到IDC机房,远程维护服务器。
2.企业内部网络之间***服务
公司分支机构的局域网和总公司的LAN之间的***连接,如各大超市之间的业务结算等。
3.互联网公司多IDC机房之间***服务
不同机房之间业务管理和业务访问,数据流动。
4.企业外部***服务
在供应商,合作伙伴的LAN和本公司的LAN之间建立的***服务。
5.访问国外的网站
×××业务应用。
PPTP协议介绍
PPTP(Point to Point Tunneling Protocol,点对点隧道协议)默认端口号:1723,工作在应用层。并且还有使用GRE协议,因为大家使用防火墙的时候不仅要开放1723端口,还要允许GRE协议通过。
PPTP协议是点对点隧道协议,其将控制包与数据包分开,控制包采用TCP控制。PPTP使用ICP协议,适合在没有防火墙限制的网络中使用。比较适合远程的企业用户拨号到企业内部进行办公等的应用。
部署***
设置内核转发
[root@ m02 ~]# cat /etc/sysctl.conf
#sysctl settings are defined through files in
#/usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#Vendors settings live in /usr/lib/sysctl.d/.
#To override a whole file, create a new file with the same in
#/etc/sysctl.d/ and put new settings there. To override
#only specific settings, add a file with a lexically later
#name in /etc/sysctl.d/ and put new settings there.
#For more information, see sysctl.conf(5) and sysctl.d(5).
[root@m02 ~]# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
[root@m02 ~]# sysctl -p
net.ipv4.ip_forward = 1
安装pptp
[root@ m02 ~]# yum install -y pptpd ---yum的epel源
Installed:
pptpd.x86_64 0:1.4.0-2.el7
Dependency Installed:
ppp.x86_64 0:2.4.5-33.el7
修改配置文件
[root@ m02 ~]# vim /etc/pptpd.conf
105 #localip 192.168.0.234-238,192.168.0.245
106 #remoteip 192.168.1.234-238,192.168.1.245
107 localip 10.0.0.62
108 remoteip 172.16.1.100-110
快速修改
sed -i '$a localip 10.0.0.62\nremoteip 172.16.1.100-110' /etc/pptpd.conf
添加用户
[root@ m02 ~]# vim /etc/ppp/chap-secrets
#Secrets for authentication using CHAP
#client server secret IP addresses
oldboyedu * 123456 *
开启服务
[root@m02 ~]# systemctl start pptpd.service
[root@m02 ~]# netstat -tunlp|grep 1723
tcp 0 0 0.0.0.0:1723 0.0.0.0:* LISTEN 2690/pptpd
用户名 允许登录主机(* 可以登录所有主机) 密码 指定分配地址(* 随机分配)
win系统设置
配置***会断网,这时候设置网络取消默认网关
拨号测试
[root@m02 ~]# ip a
5: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1396 qdisc pfifo_fast state UNKNOWN qlen 3
link/ppp
inet 10.0.0.62 peer 172.16.1.100/32 scope global ppp0
valid_lft forever preferred_lft forever
查看当前登录用户
[root@m02 ~]# last
root pts/3 172.16.1.100 Wed Jan 10 11:19 - 11:19 (00:00)
oldboyed ppp0 10.0.0.253 Wed Jan 10 10:53 still logged in
oldboyed ppp0 10.0.0.253 Wed Jan 10 10:52 - 10:53 (00:01)
[root@m02 ~]# last|grep ppp0
oldboyed ppp0 10.0.0.253 Wed Jan 10 10:53 still logged in
oldboyed ppp0 10.0.0.253 Wed Jan 10 10:52 - 10:53 (00:01)
脚本优化--显示登录登出信息
[root@m02 ppp]# vim /etc/ppp/ip-up
…………
echo "$PEERNAME 分配IP: $5 登录IP: $6 登录时间: `date -d today +%F_%T`" >> /var/log/pptpd.log
exit 0
[root@m02 ppp]# vim /etc/ppp/ip-down
…………
echo "$PEERNAME 下线IP: $6 下线时间: `date -d today +%F_%T`" >> /var/log/pptpd.log
exit 0
[root@m02 ~]# tailf /var/log/pptpd.log
oldboyedu 分配IP: 172.16.1.100 登录IP: 10.0.0.253 登录时间: 2018-01-10_11:39:44
oldboyedu 下线IP: 10.0.0.253 下线时间: 2018-01-10_11:39:44
外网可以访问内网机器
子公司内部只有一台服务器,只有内网地址,没有公网IP,但可以访问公网。而且所有网络设备都归总公司管辖,子公司没有合理理由无法申请。公司内部也有***服务器,担***账号也需要申请。在此种场景,如何让外部人员访问内网服务器?
解决方案:
1.路由器、网关端口映射
2.通过***获取内网地址,连接内网服务器
3.给服务器加一个4G网络(缺陷:运营商提供的不一定是公网地址)
4.QQ远程桌面、向日葵、teamviewer(缺陷:数据安全不能保证)
5.在外部有公网IP的机器上部署***服务,内网服务器拨号登录***,外部人员也登录***。只要***服务器不禁止客户端互联,外部用户就能访问内部服务器。
6.Nginx反向代理