VPN技术和应用

VPN即虚拟私有网络,是通过安全隧道在Internet建立的私有专用网。
关于Linux下构建VPN的话题是老话重提!

VPN常用构建技术

  • Point
    to Point Tunneling Protocol (PPTP)
    PPTP源自微软,windows自带PPTP客户端,也有用于Linux和其他系统的客户端实现。实现了点到点的VPN,基于
    非证书的加密机制,所以安全性上要比其他的方式差,不适用于“站到站”的方式构建VPN。

  • Layer
    2 Tunneling Protocol (L2TP)
    微软和Cisco共同研发的基于PPTP和L2F的VPN机制,使用IPSec进行加密提供高强度和基于证书的加密机制,提供
    数据完整性一致性控制。windows 2000,xp,2003内建L2TP客户端,Windows 98, Me, NT4.0客户端可以从微
    软下载,
    用于其他系统的实现有如OpenL2TP等。
    很多防火墙都内建支持L2TP,很适合用于构建“站到站”的VPN应用。

  • Internet
    Protocol Security (IPSec) tunnel mode
    除了使用L2TP协议构建VPN外,IPSec可以使用隧道模式构建VPN链接。这是一种更加广泛被支持的VPN构建方式。

  • Secure
    Sockets Layer (SSL)
    构建基于Web应用的网络访问,使用SSL安全HTTP链接方式。


Server端软件:
Windows 2000 和 2003内建VPN服务器。
大部分的中高端防火墙产品内建VPN服务器,如WindowsISA和Netscreen,CheckPoint等。

关于Linux下VPN技术实现和方案讨论;



Linux下构建VPN涉及到的主要软件和技术
Linux下实现VPN的技术与Windows及其他平台差不多,方式方法上可能主要有三种:
1. 基于IPSec的实现;(用的最为广泛的一种方式)
2. 基于SSL VPN概念的实现,代表软件是OpenVPN,比较完善的SSL VPN开源解决方案;
3. 另类另的实现方案;(例如基于SSH隧道的实现等,这些不是不在本文的讨论范围内)

基于IPSec的VPN实现;
其实本文讨论首先基于IPSec方式的VPN实现。
Linux的IPSec实现有两种方案,2.4时代延续至今的KLIPS kernel Patch以及2.6内核的本地实现(Native)NETKEY;大部分用于构建VPN的软件都支持这两种方式的全部或一种;
Linux下用于构建VPN的常见软件有FreeSWAN和她的后续项目OpenSWAN和StrongSWAN,这两个项目各有所长和由不同的公司支助完成。此外还有Redhat等使用的Ipsec-tools,是BSD KAME的Linux porting以及isakmpd的linuxporting。

Comments

Popular posts from this blog

Freeware Software Top 300 from winAddons.Com!

What is DevOPS?

RPM Build Tips!