首页 > 学习中心 > 系统应用 > Linux
重点关注
图文咨询
最多评论
·在redhat as4.0系统下实现vpn功能
·FreeBSD系统安装图解教程
· 如何让linux系统支持中文
·解决Red Hat Enterprise Linux共享文件无法
·解决远程连接mysql错误1130代码的方法
 
在redhat as4.0系统下实现vpn功能
时间:2009-07-02 08:43:23  来源:  作者:

()下载与安装

  由于Linux本身并没有集成PPTP功能,所以需要安装相关组件以让我们的RedHat支持PPTP,根据内核的版本,下载相应的安装包,我这里内核是kernel2.6.9-5.EL2.6.14 ,所用组件如下:

  dkms-2.0.6-1.noarch.rpm

  kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

  ppp-2.4.3-5.rhel4.i386.rpm

  pptpd-1.3.0-0.i386.rpm

  1.PPTP需要PPP支持,虽然系统本身有PPP功能,但它并不支持MPPE,所以需要更新系统的PPP组件,下载ppp-2.4.3-5.rhel4.i386.rpm安装命令如下:

  #rpm -Uvh ppp-2.4.3-5.rhel4.i386.rpm

  2.安装内核MPPEMicrosoft Point to Point Encryption,微软点对点加密)补丁,安装命令如下:

  #rpm –ivh dkms-2.0.6-1.noarch.rpm

  #rpm –ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

  用以下命令检查内核MPPE补丁是否安装成功,MPPE module可否载如:

  #modprobe ppp-compress-18 && echo success

  3.安装pptpd,命令如下:

  #rpm –ivh pptpd-1.3.0-0.i386.rpm

  4.用以下命令检查PPP是否支持MPPE

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

  46 <如果以上命令输出为“0”则表示不支持;输出为“30”或更大的数字就表示支持,我这里为46>

)修改配置文件

1. 编辑 vi /etc/pptpd.conf 文件,确定本地VPN服务器的IP地址和客户端登录后分配的IP地址范围。pptpd.confPPTP服务PPTPD运行时使用的配置文件,常用选项如下(#号后是选项说明)

  option /etc/ppp/options.pptpd #PPP组件将使用的配置文件

  stimeout 10 #开始PPTP控制连接的超时时间,以秒计

  debug #把所有debug信息记入系统日志/var/log/messages

  localip 192.168.1.4 #服务器VPN虚拟接口将分配的IP地址,修改成你的服务器地址

  remoteip 192.168.1.250-254 #客户端VPN连接成功后将分配的IPIP段,如果是地址范围可表示为192.168.1.200-234的形式

  2. 编辑 /etc/ppp/options.pptpd 文件,它是PPP功能组件pppd将使用的配置文件,由于PPTP VPN的加密和验证都与PPP相关,所以PPTP的加密和验证选项都将在这个配置文件中进行配置。

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填写到这里(如果你要给公司架设2VPNserver做冗余,那么这个地址段相互不能重复)

  ms-dns 192.168.1.2 #DNS服务器地址

  dump

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

3. 编辑 /etc/ppp/chap-secrets文件,在此配置能够连接到VPN服务器的用户、密码和IP等信息:

   [root@vpn ppp]# more /etc/ppp/chap-secrets

# Secrets for authentication using CHAP

# client server secret IP addresses

"lizhi" * "titan*#06#net" *

说明:上面第二行代码的四项内容分别对应第一行中的四项。“lizhi”Client端的VPN用户名;“server”对应的是VPN服务器的名字,该名字必须和/etc/ppp/options.pptpd文件中指明的一样,或者设置成“*”号来表示自动识别服务器;“secret”对应的是登录密码,本例为titan*#06#net“IP addresses”对应的是可以拨入的客户端IP地址,如果不需要做特别限制,可以将其设置为“*”号。

4 .设置IP伪装转发

  只有设置了IP伪装转发,通过VPN连接上来的远程计算机才能互相ping通,实现像局域网那样的共享。用下面的命令进行设置:

  #echo 1 > /proc/sys/net/ipv4/ip_forward

  可以将这条命令放到文件/etc/rc.d/rc.local里面,以实现每次开机时自动运行该命令。

iptables -t nat -A POSTROUTING -j SNAT --to XXX.XXX.XXX.XXX

  5.打开防火墙端口

要让外部用户能连接PPTP VPN,还需要在防火墙中加入以下规则(也就是将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

)启动PPTP服务

   service pptpd start

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

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

  1.新建连接

  单击开始设置网络和拨号连接打开网络和拨号连接的窗口,再单击新建连接打开网络连接向导的窗口,然后依次选择或填写连接到我的工作场所网络虚拟专用网络连接公司名(可以随便填写)不拨初始连接→IP地址(填入VPN服务器的IP地址),最后单击确定,就建立了一个新的连接。

  2. 修改连接属性

  右击刚才创建的连接,再依次单击属性网络(选择TCP/IP协议)属性高级,然后把在远程网络上使用默认网关前面的勾去掉后单击确定

  3.建立连接

  双击刚才建立好的连接,填入提前设置好的用户名和密码,单击确定进行连接。如果连接成功,在连接的详细信息里应该可以看到服务器所分配的IP地址等信息。这时,就可以跟连接进入的局域网里的其它计算机进行通信了。


来顶一下
近回首页
返回首页

上一篇:FreeBSD系统安装图解教程
下一篇:下面没有链接了

价格总览 | 支付方式 | 关于我们 | 代理合作 | CDN加速 | 诚聘英才 | 联系我们