注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

itoedr的it学苑

记录从IT文盲学到专家的历程

 
 
 

日志

 
 

用OpenVPNP实现SSL VPN  

2013-11-05 16:15:39|  分类: linux vpn |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

    如何利用OpenVPN实现SSL VPN

    注:另外一款值得借鉴我ssl-vpn方案是openconnect(vpn-client),服务器一端则是ocserv(http://www.infradead.org/ocserv/);

    OPENVPN是近年新出现的一个基于开源软件体系的VPN项目(www.openvpn.net),具备SSL VPN解决方案的全部特征,支持灵活的客户端认证方式、分组权限控制,负载平衡,容错技术等。此外,它还有支持平台多的优点,包括windows,linux,bsd,mac os等。
     需要说明的是OpenVPN与其它常见的SSL VPN产品不同,不只是一个基于web浏览器的VPN产品,而是一个全功能的VPN解决方案,支持所有协议,甚至IPX
     假设一个简单的网络环境,展示OpenVPN的强大和易用:某公司职员在外出差,计划利用互联网与公司内部网络进行数据交互,并且利用VPN技术保证数据的安全性。其网络结构如下:
     OpenVPN
作为一款完善、稳定的VPN软件,完全可以胜任此项任务。其有两种安全模式,一种是预先共享的静态密钥(Static Key)方式,另一种是基于使用SSL/TLSRSA证书和密钥的方式。前者具有配置简单,无需维护X509 PKI的优点,但限制了用户数量,只支持一对一的连接方式,此外,客户端必须预先部署静态密钥,安全性也不够高;后者则保证了安全性,但需要额外维护 PKI,相对前者配置比较复杂。在企业环境中,推荐使用在此RSA证书和密钥的方式进行安全认证。

      本文选用静态密钥方式实施OPENVPN。
一、软件下载及安装
    
在ubuntu下,使用apt-get install openvpn即可完成安装openvpn.

     在windows体系下,架设VPN之前,我们需要从http://openvpn.net下载安装程序。
    
服务器和客户端都需要安装OpenVPN程序。安装后,系统会多增加TAP-Win32 Adapter V8的虚拟网卡(无VPN连接时,状态为断开)。
二、生成静态密钥文件
   
此安全模式的关键是一个2048 bit OpenVPN static key。生成操作很简单,点击以下快捷方式就会随机产生一个2048位的静态密钥文件(key.txt)并保存在OpenVPN目录下的config文件夹:
    开始 -> 程序 -> OpenVPN ->Generate a static OpenVPN key
    然后把key.txt分别部署到服务器和客户端的config文件夹。
三、修改配置文件
   
程序安装时,OpenVP自带了两种配置文件范例保存在sample-config文件夹下, sample.ovpn是在静态密钥方式下的配置文件范例,我们只需要简单的修改一下就可以达到我们的需要:
1) 远程服务器设置 (remote myremote):如果是客户端,则把myremote用服务器的地址来代替;

      如果是服务端,则应把此行用“;”或“#”号注释掉,否则会出现” Cannot resolve host address: myremote: [HOST_NOT_FOUND] The specified host is unknown.”的错误提示。
2) 连接方式( dev tap)由于本实验使用点对点IP连接,故把此行改为dev tun 。相应的,注释掉tap的配置信息,取消tun两条配置信息(tun-mtuifconfig)的注释使其生效,并对ifconfig的两个IP进行配 置。其中,前一个IP地址(默认为10.3.0.1)为本机在虚拟局域网中的IP地址(非本地真实IP),第二个IP地址(默认为10.3.0.2)为远程计算机在虚拟局域网中的IP地址。需要说明的是,虚拟局域网的IP分配并不是随意的,不能与本地和远程的计算机所在局域网的IP段冲突,否则就会造成路由混乱,无法正常通讯。我们在此试验中,保持默认IP不变。
3) 除以上两点需要修改外,其他选项可以按需要修改,比如是通讯端口,静态密钥文件,是否采用压缩等。
四、防火墙配置
请确保OpenVPN服务段的UDP1149端口开放。
五、VPN测试
    右击配置文件,选择“Start OpenVPN on this config file”,分别启动服务端和客户端,虚拟网卡的状态会由断开转为正常。成功连接后,OpenVPN会根据配置文件自动分配IP给虚拟网卡(请确保系统的 DHCP Client服务启动,否则会不能获得IP)。
    为了验证VPN已经建立,可以使用ping 命令测试一下。
    在此基础上,简单的配置一下路由信息,就可以让VPN客户端访问VPN服务端所在网段的全部资源。由此可见,OpenVPN的配置是很简单的,即使通过基于使用SSL/TLSRSA证书和密钥进行认证也不是很复杂。
   OpenVPN
实现了利用SSL来保证网络通讯安全性的目的,同时避免了当前大多数SSL VPN产品仅提供简单的web应用的不足。

  评论这张
 
阅读(138)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017