如何使用OpenBSD架设VPN(一)
如何使用OpenBSD架设VPN(一)
通九互联科技 发表于5年前
如何使用OpenBSD架设VPN(一)
  • 发表于 5年前
  • 阅读 797
  • 收藏 9
  • 点赞 0
  • 评论 0

最近将自己的iBook上的Debian换成了FreeBSD,但是不幸的事情的发生了,FreeBSD对iBook的支持很差。最后只能换成OpenBSD(毕竟OpenBSD继承了NetBSD很多遗产,对iBook支持很给力,但是个人不喜欢NetBSD,所以没安装),现在唯一使用Linux系统的只有我的Baffolu的NAS(发行版是Debian,很希望能换成BSD的系统)。

最开始想把NAS作为我的VPN接入点,让我直接接入公司内,但是那个ARM板内存有点小(256M),跑起任务后就2M可用。所以准备将我的iBook改造成接入点。

那么换成OpenBSD了,我的初步选择就是IPsec了(如果你已经知道IPSec是什么了,那本文对你无帮助,请移步到别处吧,毕竟人的一生时间是有限的)。

这时就引来了一个话题,PPTP,L2TP,L2TP/IPSec这些又是什么东东呢?

首先说PPTP是什么,

PPTP(Point-to-Point Tunneling Protocol)是点对点隧道协议,这个东西说简单点,就是为了建立VPN(废话)。详细说明下,PPTP是通过建立一个安全隧道,让客户端得到一个企业内部的IP(好吧又废话了)。PPTP并没有详细要求使用何种加密方式和何种认证方式,但是一般都是使用MSCHAP-V2或EAP-TLS进行认证和MPPE(某软的东西有专利的说,当然PPTP的制定过程基本上就是某软搞的)进行加密。PPTP看起来对Windows很友好,但是请大家注意一个问题,PPTP移GRE协议进行数据传输,需要TCP的1723端口进行GRE状态管理(很简单,很多家用路由实现的很不好,很多ISP的防火墙不能完整的支持这个穿透,例如某些小ISP商)。

那么L2TP是什么和L2TP/IPSec又有什么关系,

L2TP(Layer Two Tunneling Protocol)第二层隧道协议,这玩意不单单支持TCP/IP的,支持ATM,X.25和帧中继等协议。虽说是工作在OSI的二层(数据链路层)上,但是在IP网络上却是个不折不扣的工作在OSI的六层(会话层)上,就因为有个UDP的注册端口1701。那么L2TP/IPSec又和它有什么关系,因为L2TP本身并不是针对IP协议设计的,所以不会对IP协议进行加密(Internet上,你懂得)。多说一句,是吸取了某软和某科的东西,搞出来的。对防火墙比较友好(穿透力比较强了,一般ISP不会搞死这东西,除了某传说物品),使用IPSec后就有了强大的加密技,并且能提供很好的认证(计算机和用户双认证)。好了说个问题,别忘了这东西是基于UDP的,UDP大家懂得,以国内的网络环境。。。。。。。

好了回到正题上IPsec是什么

IPsec(Internet Protocol Security)是工作在OSI模型的的第三层(网络层),这就意味着我们基本上可以保护所有的TCP和UDP传输(SSH隧道要以来TLS,是工作代OSI模型的第四层(传输层)上的,并且TLS不能保护UDP)。IPSec有两个协议AH和ESP来保证安全。AH(Authentication Header)认证头,是用来保证完整性和稳定性的,同时也被用来做抗重放攻击,认证头试图保护IP数据报的所有字段,那些在传输IP分组的过程中要发生变化的字段就只能被排除外。ESP(Encapsulating Security Payload)封装安全数据负载,提供了源可靠性、完整性和保密性的支持,但是封装安全数据负载不尝试保护IP头。换句话说,AH的加密强度比ESP高,因为AH尝试保护IP头和内部数据,而ESP只管内部数据。在IPSec的照耀下,可以同时使用两种协议同时来保证数据安全(这个地方有点不清楚它会怎么做,因为没见过,但是看起来很强大的样子,但是对传说中的某物恐怕依旧是小儿科,伟大的协议切断和IP封锁根本就是让你连接不上,更别说传输了),但是现实世界中,我们使用ESP协议就足够安全了。

好了讲了半天全是安全,怎么见到VPN的影子呢。IPSec不管怎么加密,都支持两种模式:传输模式和隧道模式(VPN开始了)。传输模式很简单了,就是保护IP内部数据直接通过Internet完成路由,将数据传送到对断,完成的是Host-to-Host的传输。隧道模式呢,会将要传输的整个IP包加密之后(数据包A),外部再添加一个IP头,也就是说一个IP头加上数据包A构成新的数据包传输。这样数据包A中的IP头的IP就可以是对端网络的内部IP了,而后添加的IP头中的IP就是对方Gateway的IP了,这样就能达到VPN的效果,Gateway-to-Gateway或Host-To-Gateway的传输了。

好了有两个问题,Windows对这东西支持不是特别好,并且最重要的是这东西配置起来很麻烦。Windows支持差点,这个嘛,没关系,Windows上安装一个OpenBSD的虚拟机当防火墙好了。第二个问题,我们不断的男人(man手册)好了。




共有 人打赏支持
粉丝 129
博文 40
码字总数 23779
作品 1
×
通九互联科技
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: