VPN的英文全称是“Virtual Private Network”,翻译过来就是“虚拟专用网络”。顾名思义,虚拟专用网络可以把它理解成是虚拟出来的企业内部专线。

    今天我们的目的是在自己的debian系统上构造一个VPN系统,废话不多说,下面开始配置系统.

    首先我们编辑/etc/network/interfaces,为系统新增一个虚拟网卡,加上如下部分

 
1 auto eth0:0
2 iface eth0:0 inet static
3 address 192.168.10.1
4 netmask 255.255.255.0
5 broadcast 192.168.10.255

    保存之后我们运行/etc/init.d/networking restart如果没有错误,说明虚拟网卡新增成功,这个时候,我们如果运行ifconfig,应该会看到如下信息:

 

1 eth0:0    Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx
2           inet addr:192.168.10.1  Bcast:192.168.10.255  Mask:255.255.255.0
3           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

    下面我们继续编辑文件/etc/network/if-up.d/iptables(如果不存在,新建即可),将其内容修改为:

 

01 #! /bin/sh
02 # External Interface , Public Interface
03 EXTIF="eth0"
04 # Internal Interface, Private Interface
05 INIF="eth0:0"
06 # Internal Network
07 INNET="192.168.10.0/24"
08 # Enable IP forwarding
09 echo 1 > /proc/sys/net/ipv4/ip_forward
10 # Flush all rules.
11 iptables -F
12 iptables -t nat -F
13 # Set up NAT.
14 iptables -t nat -A POSTROUTING -s $INNET -o $EXTIF -j MASQUERADE
15 # for MSN
16 iptables -A FORWARD -o $EXTIF -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1536 -j TCPMSS --clamp-mss-to-pmtu

    如果是新建该文件,别忘了给其加上执行权限:

 

1 chmod +x /etc/network/if-up.d/iptables

    继续重启网络,运行/etc/init.d/networking restart,如果没有错误,恭喜,nat部分的配置完成.如果有错误,请详细检查以上步骤,找出错误,直到该命令成功执行即可.

    下面开始配置PPTP,在debian下,我们直接通过执行apt-get install pptpd即可安装pptp.然后我们需要进行一些设置.

    首先修改/etc/ppp/pptpd-options,如果过滤掉繁杂的注释,最终的配置文件如下所示:

 

01 name pptpd
02 refuse-pap
03 refuse-chap
04 refuse-mschap
05 require-mschap-v2
06 require-mppe-128
07 proxyarp
08 lock
09 nobsdcomp
10 novj
11 novjccomp
12 nologfd
13 ms-dns 8.8.8.8
14 ms-dns 8.8.4.4

    在本配置文件中使用了google的免费公众dns系统,当然,最佳情况,你应该配置为当前主机的dns系统.

    然后我们继续修改文件/etc/pptpd.conf,如果过滤掉繁杂的注释,最终的配置文件如下所示:

 
1 option /etc/ppp/pptpd-options
2 logwtmp
3 localip 192.168.10.1
4 remoteip 192.168.10.10-255

    在此处,我们将vpn主机的ip设置为192.168.10.1,客户端可分配ip范围是192.168.1.10-255,这部分需要和nat设置部分的ip严格对应,如果您设置的是其它ip端请注意核对.

    最后,我们需要修改文件/etc/ppp/chap-secrets来新建vpn用户,比如我们新建一个用户名为leven,密码为levenvpn的用户,如下:

 

1 leven    pptpd    levenvpn    *

   到此为止,vpn系统配置完毕,如果要新增其它用户,按照上面的格式继续修改/etc/ppp/chap-secrets即可.

   如果有部分机器在客户端连接vpn的时候报619错误,可以尝试下面的命令:

 

1 mknod /dev/ppp c 108 0

  这样一般就成功配置一个基于pptp的vpn主机啦.祝你好运


 

Last modification:July 14, 2020
如果觉得我的文章对你有用,请随意赞赏