VPN介绍
虚拟私人网络(英语:Virtual Private Network,缩写为VPN)是一种常用于连接中、大型企业或团体与团体间的私人网络的通讯方法。虚拟私人网络的讯息透过公用的网络架构(例如:互联网)来传送内部网的网络讯息。它利用已加密的通道协议(Tunneling Protocol)来达到保密、发送端认证、消息准确性等私人消息安全效果。这种技术可以用不安全的网络(例如:互联网)来发送可靠、安全的消息。需要注意的是,加密消息与否是可以控制的。没有加密的虚拟专用网消息依然有被窃取的危险。
VPN的实质就是利用加密技术在公用网上面封装出一个数据通讯隧道。
VPN
搭建pptp
1、检查系统是否支持ppp
[root@centos6 ~]# cat /dev/ppp
cat: /dev/ppp: No such device or address
如果出现以上提示则说明ppp是开启的,可以正常架设pptp服务,若出现Permission denied等其他提示,你需要先去VPS面板里看看有没有enable ppp的功能开关。
2、设置内核转发,开启路由转发
[root@centos6 ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
[root@centos6 ~]# sysctl -p 查看
3、安装pptp
3.1、检查是否支持PPTP
modprobe ppp-compress-18 && echo ok #返回OK
zgrep MPPE /proc/config.gz #返回CONFIG_PPP_MPPE=y 或 =m
cat /dev/net/tun #返回cat: /dev/net/tun: File descriptor in bad state
以上三条命令满足一条即为支持PPTP
3.2、安装PPP
yum install -y ppp
3.3、安装PPTPD
3.3.1、添加EPEL源:
wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
3.3.2、安装EPEL源:
rpm -ivh epel-release-latest-7.noarch.rpm
3.3.3、检查是否已添加到源列表中:
yum repolist
3.3.4、更新源列表:
yum -y update
3.3.5、安装PPTPD:
yum install -y pptpd
4、编辑/etc/pptpd.conf设置内网IP段
最后IP设置改为:
localip xxx.xxx.xxx.xxx #本机公网
remoteip 192.168.1.0-255 #分配给VPN 客户端的地址(就是自己本机的局域网的IP地址范围)
5、配置账号文件
vi /etc/ppp/chap-secrets
client(客户端登录账号) server(服务) secret(密码) IP addresses(ip范围)
mytest pptpd 456789 * (允许所有ip)
6、启动服务
systemctl start pptpd
7、检查服务是否开启
ps -ef |grep pptpd #会看到有两个
ss -nutlp |grep pptpd #会看到打开的端口是1723
8、设置 SNAT 规则
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
这样就可以了,可以用客户端测试下是否可以连接
如果有问题,可以查看下日志
tail -200 /var/log/messages
服务器如果重启的话,需要重启一下服务
systemctl start pptpd