什么是VPN?如何制作?,第1张

1、***的英文全称是“Virtual Private Network”,翻译过来就是“虚拟专用网络”。顾名思义,虚拟专用网络可以把它理解成是虚拟出来的企业内部专线。2、 一般对于个人用户而言,建立个人网上站点必须找一个ISP或者ICP才可以,他们会

 1.租用专用服务器:也就是为您建立一个专用的服务器,该服务器只为您一个人使用,您有完全的管理权和控制权。现在很多中小企业使用的就是这种服务,但是个人一般不能使用这种服务,因为其费用非常高。

 2.使用虚拟主机:这种技术目的是让多个用户共用一个服务器,但是对于每一个用户而言,感觉不到其他用户的存在。在此情况下该服务器要为每一个用户建立一个域名、一个IP地址、一定大小的硬盘空间、各自独立的服务。这一技术有可能参考了操作系统中虚拟内存的思想,使得有限的资源可以满足较多的需求,且使需求各自独立,互不影响。这种方式由于多个用户共同使用一个服务器,所以价格是租用专用服务器的十几分之一,而且可以让您有很大的管理权和控制权,如有建立邮件系统的权利(数量上有限制),有自己的FTP、WWW站点,提供CGI支持等等。

 3.免费个人主页:这种服务是免费的,是您加入了该ISP后,该ISP为您提供的一个小服务,不过限制您可以有一个自己的主页,而且该主页不能支持一些高级技术。

您可以根据需要来选择正确的方式。如果您只是想有一个自己的WWW网站,那么只要加入一个ISP就可以得到一个WWW网站。如果您想尝试网管的乐趣,则可以考虑申请虚拟主机服务,而且现在租用虚拟主机的费用并不高。

 首先解释一个问题:在 iPhone 的 *** 设置介面里(Settings >> General >> Network >> ***),你可以看到三个标签:L2TP, PPTP, IPSec。但上面我们又讲本次介绍的 *** 方式叫「L2TP / IPSec」,这两者究竟是什么关系?

  这三个标签确实令人混淆,准确的写法应该是:L2TP over IPSec, PPTP, Cisco IPSec。PPTP 跟另外两者关系不大,且大家较为熟悉,暂且不提,L2TP 和 IPSec 的区别如下。

  L2TP:一个「包装」协议,本身并不提供加密和验证的功能。

  IPSec:在 IP 数据包的层级提供加密和验证功能,确保中间人无法解密或者伪造数据包。

  本来,只用 IPSec 就可以实现 ***,Mac OS X 和 Linux 都支持。但是 Mac OS X 和 iPhone OS 都推荐使用 L2TP over IPSec,在两者的图形介面上也只能设置这个。L2TP / IPSec 是业界标准,微软也支持。而只用 IPSec 的常见于 Linux-to-Linux 的应用,比如将两个位于不同地区的办公室网络安全地连在一起。这多是固定 IP 路由器到固定 IP 路由器级别的连接,只需保证数据包不被中途截获或者伪造就可以,故使用 L2TP 的意义不大。L2TP / IPSec 主要是实现所谓「Road Warrior」的设置,即用变动的客户端连固定的服务器。

  Cisco 的 *** 用的也是 IPSec 加密,但那是一套不同于 L2TP 的私有包装协议,用于提供用户管理之类的功能,因此一般都需要用 Cisco 自家的 *** 客户端连接。iPhone / iPad 的 *** 设置介面中的 IPSec 标签里有 Cisco 的标识,就是这个原因。

  以下是在 Ubuntu 和 Debian 主机上架设 L2TP / IPSec *** 的步骤,一共十四步。你需要有服务器的 root 权限(所以 DreamHost, BlueHost, MediaTemple 这些服务供应商帮你把一切打点周到的主机就无缘了),也需要一些基本的 Linux 知识。不然的话,我们还是推荐您找一位比较熟技术的朋友帮忙。

  一、安装 IPSec。如上所述,IPSec 会对 IP 数据包进行加密和验证。这意味着你的电脑 / 移动设备与服务器之间传输的数据无法被解密、也不能被伪造。我推荐用 openswan 这个后台软件包来跑 IPSec。

  用以下命令安装 openswan:

  sudo aptitude install openswan二、用文字编辑器打开 /etc/ipsecconf,改成这样:

  version 20

  config setup

  nat_traversal=yes

  virtual_private=%v4:10000/8,%v4:19216800/16,%v4:1721600/12

  oe=off

  protostack=netkey

  conn L2TP-PSK-NAT

  rightsubnet=vhost:%priv

  also=L2TP-PSK-noNAT

  conn L2TP-PSK-noNAT

  authby=secret

  pfs=no

  auto=add

  keyingtries=3

  rekey=no

  ikelifetime=8h

  keylife=1h

  type=transport

  left=YOURSERVERIPADDRESS

  leftprotoport=17/1701

  right=%any

  rightprotoport=17/%any三、用文字编辑器打开 /etc/ipsecsecrets,改成这样:

  YOURSERVERIPADDRESS %any: PSK "YourSharedSecret"(别忘了把「YOURSERVERIPADDRESS」这部分换成你的服务器的 IP 地址,把「YourSharedSecret」部分换成随便一个字串,例如你喜欢的一句话,等等。)

  四、运行以下命令:

  for each in /proc/sys/net/ipv4/conf/

  do

  echo 0 > $each/accept_redirects

  echo 0 > $each/send_redirects

  done五、检查一下 IPSec 能否正常工作:

  sudo ipsec verify如果在结果中看到「Opportunistic Encryption Support」被禁用了,没关系,其他项 OK 即可。

  六、重启 openswan:

  sudo /etc/initd/ipsec restart七、安装 L2TP。常用的 L2TP 后台软件包是 xl2tpd,它和 openswan 是同一帮人写的。

  运行以下命令:

  sudo aptitude install xl2tpd八、用文字编辑器打开 /etc/xl2tpd/xl2tpdconf,改成这样:

  [global]

  ipsec saref = yes

  [lns default]

  ip range = 10122-1012255

  local ip = 10121

  ;require chap = yes

  refuse chap = yes

  refuse pap = yes

  require authentication = yes

  ppp debug = yes

  pppoptfile = /etc/ppp/optionsxl2tpd

  length bit = yes这里要注意的是 ip range 一项里的 IP 地址不能和你正在用的 IP 地址重合,也不可与网络上的其他 IP 地址冲突。

  九、安装 ppp。这是用来管理 *** 用户的。

  sudo aptitude install ppp十、检查一下 /etc/ppp 目录里有没有 optionsxl2tpd 这个文件,没有的话就建一个,文件内容如下:

  require-mschap-v2

  ms-dns 20867222222

  ms-dns 20867220220

  asyncmap 0

  auth

  crtscts

  lock

  hide-password

  modem

  debug

  name l2tpd

  proxyarp

  lcp-echo-interval 30

  lcp-echo-failure 4注意 ms-dns 两行我填的是 OpenDNS。如果你想用其他的 DNS 服务器(例如谷歌的公共 DNS),请自行更换。

  十一、现在可以添加一个 *** 用户了。用文字编辑器打开 /etc/ppp/chap-secrets:

  # user server password ip

  test l2tpd testpassword 如果你之前设置过 PPTP ***,chap-secrets 文件里可能已经有了其他用户的列表。你只要把 test l2tpd testpassword 这样加到后面即可。

  十二、重启 xl2tpd:

  sudo /etc/initd/xl2tpd restart十三、设置 iptables 的数据包转发:

  iptables --table nat --append POSTROUTING --jump MASQUERADE

  echo 1 > /proc/sys/net/ipv4/ip_forward十四、因为某种原因,openswan 在服务器重启后无法正常自动,所以我们可以在 /etc/rclocal 文件里写入如下语句:

  iptables --table nat --append POSTROUTING --jump MASQUERADE

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

  for each in /proc/sys/net/ipv4/conf/

  do

  echo 0 > $each/accept_redirects

  echo 0 > $each/send_redirects

  done

  /etc/initd/ipsec restart到这里,设置工作已经基本完成。你可以用 iPhone 或 iPad 试着连一下。记得在「Secret」中填入你在上述第三步里填的 YourSharedSecret。

  如果连接成功,上网也没问题的话,恭喜你,大功告成。如果连不上,恐怕还得多做一步。

  Ubuntu 910 自带的 openswan 版本是 2622, Debian Lenny 带的版本是 2412。这两个版本的 openswan 都有问题。我们的测试结果表明,2624 版的 openswan 可以在上述两版的 Linux 操作系统下正常工作。所以如果做完以上十四步还是连不上的话,请考虑从源码编译 openswan 2624 :

  sudo aptitude install libgmp3-dev gawk flex bison

  wget http://wwwopenswanorg/download/openswan-2624targz

  tar xf openswan-2624targz

  cd openswan-2624

  make programs

  sudo make install编译需要一段时间。你的 Linux 内核版本需要高于 266。

  然后可以删除原先通过 aptitude 安装的 openswan,并重启之:

  sudo aptitude remove openswan

  sudo /etc/initd/ipsec restart

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 什么是VPN?如何制作?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情