VPN有助于确保您的业务更加安全,并保护关键数据免遭窥探。通过 VPN,工作人员可以在使用公共网络基础设施(如 Internet)的专用网络中访问、发送和接收数据。

VPN服务器使用Linux类系统比较多,当然也是一些硬件防火墙是支持VPN协议书的,但大部分VPN服务器还是使用软件类VPN比较多,也就是在系统中安装VPN软件来实现VPN服务,下面介绍Linux搭建vpn服务器的步骤:

PPTP 的配置主要有下面五个步骤:

验证内核是否加载了 MPPE 模块,安装所需的软件包,配置 PPP 和 PPTP 的配置文件,打开内核的 IP 转发功能,启动 pptpd 守护进程,配置 iptables 防火墙放行和转发规则.

详细步骤:

1.验证内核是否加载了MPPE模块:基本都安装过了,所以略过.

2.安装所需的软件包:ppp

PPTP 使用 PPP 协议对用户数据进行封装,然后将 PPP 数据帧封装在 IP 数据报里,经由 IP 网络传播,因此首先需要支持 PPP 协议,下面命令安装 ppp:

  1. yuminstall-yppp
  2. pptpd

有了 PPP 协议支持,接下来安装 pptpd,首先到这里找到最新版适合你的平台的 pptpd,然后还需要根据内核选择 32 位或者 64 位的包,找到正确的软件包以后,复制其 URL,然后用 wget 下载到 root 的家目录,或者用 rpm -ivh URL 直接安装也行,譬如我的 64 位内核 CentOS,使用下面命令下载:

  1. wgethttp://poptop.sourceforge.net/yum/stable/packages/pptpd-1.4.0-1.el6.x86_64.rpm
  2. rpm-ivhpptpd-1.4.0-1.el6.x86_64.rpm

3.配置:ppp

配置 ppp 需要编辑它的两个配置文件,一个是 option(选项)文件,一个是用户账户文件,首先编辑 option 文件:

vim /etc/ppp/options.pptpd

查找ms-dns,修改:

  1. ms-dns8.8.8.8
  2. ms-dns8.8.4.4

接下来修改另一个,存储着用户账户的文件:

vim /etc/ppp/chap-secrets

这个文件非常简单,其中用明文存储 VPN 客户的用户名、服务名称、密码和 IP 地址范围,每行一个账户:

  1. username1pptpdpasswd1*
  2. username2pptpdpasswd2*

其中第一第三列分别是用户名和密码,第二列应该和上面的文件 /etc/ppp/options.pptpd 中 name 后指定的服务名称一致,最后一列限制客户端 IP 地址,星号表示没有限制.

  1. pptpd
  2. vim/etc/pptpd.conf

修改如下两行:

  1. localip192.168.0.1
  2. remoteip192.168.0.207-217

两行是比较重要的两行,VPN 可以这样理解,Linux 客户端使用一个虚拟网络设备 ppp0(Windows 客户端也可以理解成 VPN 虚拟网卡),连接到服务器的虚拟网络设备 ppp0 上,这样客户端就加入了服务器端 ppp0 所在的网络,localip 就是可以分配给服务器端 ppp0 的 IP 地址,remoteip 则是将要分配给客户端 ppp0(或者虚拟网卡)的.

这两项都可以是多个 IP,一般 localip 设置一个 IP 就行了,remoteip 则视客户端数目,分配一段 IP,其中 remoteip 的 IP 段需要和 localip 的 IP 段一致.

localip 和 remoteip 所处的 IP 段可以随意些指定,但其范围内不要包含实际网卡 eth0 的 IP 地址,一般情况下,使用上面配置文件中的配置就好使了,你需要做的只是把 192.168.0.207-217这个 IP 区间修改成你喜欢的 192.168.0.a-b,其中 1<a<b<255.

4.打开内核ip转发功能

要使 VPN 服务器可以作为网络请求的中转代理,能够使客户端通过 VPN 访问 Internet,还需要开启内核的 IP 转发功能,可以编辑配置文件:

vim /etc/sysctl.conf

找到其中的行:net.ipv4.ip_forward = 0

修改为:net.ipv4.ip_forward = 1

然后执行下面命令使上述修改生效:sysctl -p

5.启动pptpd 守护进程

上面配置完成后,就可以启动 pptpd 进程并设置自动启动了.

  1. /etc/init.d/pptpdstart
  2. chkconfig–level35pptpdon

连接之后如果需要用户上网,还需要设置NAT,ip转发,在linux服务器上使用iptables,如下:

  1. iptables-tnat-F
  2. iptables-tnat-APOSTROUTING-s192.168.0.0/24-jSNAT–toxxx.xxx.xxx.xxx
  3. #xxx.xxx.xxx.xxx是你的ip

然后配置一下,还有关于iptable的配置,此处不多说了,参考如下:

此处我测试直接关闭了service iptables stop.

域名频道提供多种类型的服务器租用服务,满足个人、大中型企业的各种需求。
服务器产品均为戴尔原装正品,DELL系列产品均享受戴尔和域名频道的售后服务。
实现有效降低维护费用和机房设备投入、线路租用等高额费用。
您有自己的独立服务器,需要托管到国内机房,我们为你提供了上海电信五星级骨干机房,具体请查看http://www.dns110.com/server/trusteehost.asp