教你30分钟打造Linux的VPN服务器

  • 时间:
  • 浏览:0





作者:

CNETNews.com.cn

10008-08-14 17:1000:54

关键词: DNS服务器 配置文件 补丁 VPN服务器 Linux

  VPN(Virtual Private Network,虚拟专用网络)是专用网络的延伸,它可不时需通过共享Internet或公共网络连接模拟点对点专用连接的法子 ,在本地计算机和远程计算机之间发送数据。

  它具有良好的保密性和不受干扰性,使双方才能进行自由而安全的点对点连接。下面介绍四种 快速构建VPN服务器的法子 。

  安装软件

  1.安装PPP

  安装PPP(Point-to-Point Protocol,点到点协议)2.4.2以上的版本,可不时需到http://sourceforge.net/project/showfiles.php?group_id=44827下载ppp-2.4.3-0.cvs_100040527.1.i386.rpm软件包。

  安装命令如下:

  #rpm -Uvh ppp-2.4.3-0.cvs_100040527.1.i386.rpm

  2.安装内核MPPE补丁

  安装内核MPPE(Microsoft Point to Point Encryption,微软点对点加密)补丁时需根据内核选则相应的版本。笔者使用的Linux内核是2.4.20-31.9版本,可不时需到http://pptpclient.sourceforge.ne ... .4.20-31.9.i686.rpm下载相应的kernel-mppe-2.4.20-31.9.i686.rpm软件包。安装命令如下:

  #rpm -ivh kernel-mppe-2.4.20-31.9.i686.rpm

  用以下命令检查内核MPPE补丁算是安装成功:

  #modprobe ppp-compress-18

  3.检查PPP算是支持MPPE

  用以下命令检查PPP算是支持MPPE:

  #strings "/usr/sbin/pppd" grep -i mppe wc --lines

  4.安装PPTPD

  到http://sourceforge.net/project/showfiles.php?group_id=44827下载pptpd-1.1.4-b4.i386.rpm软件包,并安装。

  # rpm -ivh pptpd-1.1.4-b4.i386.rpm

  修改配置文件

  1.修改modules.conf文件

  编辑/etc/modules.conf配置文件,加入如下内容:

  alias net-pf-47 ip_gre

  2.修改pptpd.conf文件

  编辑/etc/pptpd.conf配置文件,打上去如下内容,选则本地VPN服务器的IP地址和客户端登录后分配的IP地址范围。

  debug

  option /etc/ppp/options.pptpd

  localip 192.168.0.254 #本地VPN服务器的IP

  remoteip 192.168.1.1-254 #客户端被分配的IP范围

  3.修改options.pptpd文件

  编辑/etc/ppp/options.pptpd配置文件,替打上去如下内容:

  auth

  lock

  debug

  proxyarp

  lock

  name rh9vpn #VPN服务器的名字

  multilink

  refuse-pap

  refuse-chap

  refuse-mschap

  refuse-eap

  refuse-mschap-v2

  require-mppe

  ms-wins 192.168.1.2 #把要我在网络邻居中看过的机器的IP填写到这里

  ms-dns 192.168.1.2 #DNS服务器地址

  dump

  logfile /var/log/pptpd.log #日志存放的路径

  4.修改chap-secrets文件

  编辑/etc/chap-secrets配置文件,打上去如下内容:

  # client server secret IP addresses

  "test@gd.cn" * "test" *

  后边第二行代码的四项内容分别对应第一行中的四项。“test@gd.cn”是Client端的VPN用户名;“server”对应的是VPN服务器的名字,该名字时需和/etc/ppp/options.pptpd文件中指明的一样,因为设置成“*”号来表示自动识别服务器;“secret”对应的是登录密码;“IP addresses”对应的是可不时需拨入的客户端IP地址,因为不时需做不得劲限制,可不时需将其设置为“*”号。

  5.设置IP伪装转发

  没办法设置了IP伪装转发,通过VPN连接上来的远程计算机才能互相ping通,实现像局域网那样的共享。用下面的命令进行设置: #echo 1 >/proc/sys/net/ipv4/ip_forward

  可不时需将这条命令倒进文件/etc/rc.d/rc.local后边,以实现每次开机时自动运行该命令。

  6.打开防火墙端口

  将Linux服务器的1723端口和47端口打开,并打开GRE协议。

  #/sbin/iptables -A INPUT -p tcp --dport 1723 -j ACCEPT

  #/sbin/iptables -A INPUT -p tcp --dport 47 -j ACCEPT

  #/sbin/iptables -A INPUT -p gre -j ACCEPT

  到这里Linux服务器的设置就完成了,下面将利用Windows客户端进行测试。

  测试

  下面以Windows Server 10003为例来进行测试。

  1.新建连接

  单击“开使英文英文→设置→网络和拨号连接”打开“网络和拨号连接”的窗口,再单击“新建连接”打开“网络连接向导”的窗口,或者 依次选则或填写“连接到我的工作场所网络→虚拟专用网络连接→公司名(可不时需随便填写)→不拨初始连接→IP地址(填入VPN服务器的IP地址)”,最后单击“选则”,就建立了俩个 多 新的连接。

  2. 修改连接属性

  右击刚才创建的连接,再依次单击“属性→网络(选则TCP/IP协议)→属性→高级”,或者 把“在远程网络上使用默认网关”前面的勾打上去后单击“选则”。

  3.建立连接

  双击刚才建立好的连接,填入提前设置好的用户名和密码,单击“选则”进行连接。因为连接成功,在连接的“全版信息”里应该可不时需看过服务器所分配的IP地址等信息。这时,就可不时需跟连接进入的局域网里的其它计算机进行通信了。

  因为客户端使用的仍然是Windows 95或Windows 98,则时需到http://support.microsoft.com/support/kb/articles/q285/1/89.asp下载相关的拨号程序运行运行。