PPTP(Point to Point Tunneling Protocol),即点对点隧道协议。该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网(VPN),可以通过密码验证协议(PAP)、可扩展认证协议(EAP)等方法增强安全性。可以使远程用户通过拨入ISP、通过直接连接Internet或其他网络安全地访问企业网。
实验环境:
系统版本:CentOS release 6.5 (Final)
网卡IP地址:eth0=192.168.1.106 eth1=10.0.0.1
内网地址:192.168.1.106
外网地址:10.0.0.1
一、PPTP的安装与配置
1、检查服务器是否支持PPTP服务
[[email protected] ~]# modprobe ppp-compress-18 && echo ok
ok
以上命令执行出来显示是“OK”的话,继续往下进行!
[[email protected] ~]# cat /dev/net/tun
cat: /dev/net/tun: 文件描述符处于错误状态
以上命令执行出来显示报错的话,继续往下进行!
以上两条命令执行都通过,才能安装PPTP。
2、安装PPTP
[[email protected] ~]# yum install ppp \\输出的内容太多,我就不复制出来了
[[email protected] ~]# rpm -i http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm
[[email protected] ~]# yum -y install pptpd
3、更改配置文件
找到“locapip”和“remoteip”这两个配置项,更改为你期望的IP段值。localip表示服务器的IP,remoteip表示分配给客户端的IP地址,可以设置为区间。这里我们使用pptp默认的配置:
localip 192.168.1.106
remoteip 192.168.1.20-200
编辑/etc/ppp/options.pptpd文件,添加DNS,一般只需要更改ms-dns就可以
ms-dns 8.8.8.8
ms-dns 8.8.4.4
二、PPTP的账号、密码配置
1、添加账号
需要编辑/etc/ppp/chap-secrets文件
[[email protected] ~]# vim /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# clientserversecretIP addresses
machenxi*machenxi*
client //用户账号,需要用双引号包含
server //代表自动识别当前服务器主机名,也可以手动配置
secret //用户密码,需要用双引号包含
IP address //代表自动分配可用的IP地址,可根据需要指定IP地址
除了上面编辑文件,还可以用命令来创建用
[[email protected] ~]# vpnuser add jackware jackware
[[email protected] ~]# cat /etc/ppp/chap-secrets \\多了一个jackware的账号
# Secrets for authentication using CHAP
# clientserversecretIP addresses
machenxi*machenxi*
jackware*jackware*
[[email protected] ~]# vpnuser del jackware
[[email protected] ~]# cat /etc/ppp/chap-secrets \\jackware的账号删除掉了
# Secrets for authentication using CHAP
# clientserversecretIP addresses
machenxi*machenxi*
PPTPD配置ok,重启服务
[[email protected] ~]# service pptpd restart
Shutting down pptpd: [确定]
Starting pptpd: [确定]
Warning: a pptpd restart does not terminate existing
connections, so new connections may be assigned the same IP
address and cause unexpected results. Use restart-kill to
destroy existing connections during a restart.
接下来到Windows机器上面做下验证吧。
这个时候ifconfig看一看网卡信息,是不是多出了一个ppp0的接口
[[email protected] ppp]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:B5:3C:1C
inet addr:192.168.1.106 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feb5:3c1c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8242 errors:0 dropped:0 overruns:0 frame:0
TX packets:5920 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:8299985 (7.9 MiB) TX bytes:650125 (634.8 KiB)
eth1 Link encap:Ethernet HWaddr 00:0C:29:B5:3C:26
inet addr:10.0.0.1 Bcast:10.255.255.255 Mask:255.0.0.0
inet6 addr: fe80::20c:29ff:feb5:3c26/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:28 errors:0 dropped:0 overruns:0 frame:0
TX packets:23 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6832 (6.6 KiB) TX bytes:3198 (3.1 KiB)
ppp0 Link encap:Point-to-Point Protocol
inet addr:192.168.1.106 P-t-P:192.168.1.20 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1396 Metric:1
RX packets:81 errors:0 dropped:0 overruns:0 frame:0
TX packets:29 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:7108 (6.9 KiB) TX bytes:4874 (4.7 KiB)