- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[精华] [原创]用OpenVPN构建安全VPN [OpenVPN + CA]
作者: wenzk??发表于:2008-12-25 11:43:51
【 发表评论】【 查看原文】【 VPN讨论区】【 关闭】
[原创]用OpenVPN构建安全VPN?[OpenVPN?+?CA] 一直想写一片关于VPN配置方面的文章,由于时间等等很多问题,一直没有落实,现在终于和大家见面了,由于本人知识有限也并非专业从事这方面工作的,难免有错误,望指正,共同提高。 自从认识VPN以来,一直在找寻一个容易配置、功能强大、支持多系统的VPN程序,由于一直没有找到合适的软件,Linux下的FreeSWAN、OpenBSD?FreeBSD下的IPSec、Windows下的PPTP都试了试,始终不能满足自己的要求,直到OpenVPN的出现。 关于各种VPN软件或者硬件的优缺点,在这里我就不再叙述了,因为这个掺杂着很多人为的因素在里边(萝卜好吃还是青菜好吃?),一个软件:稳定、符合自己的要求、自己用的习惯就是一个好软件。 对于OpenVPN,在CU的VPN版面也有过很多的讨论,其中也不乏精华的文章,但是都是使用Static?key验证的,从字面上就可以看出来Static?key使用的就是预先生成的key对数据进行加密和解密,也就是常说的对称试加密,加密和解密双方必须预先知道加密的Key。本文讨论的是基于TLS加密方式,使用CA验证VPN?Client的身份,OpenVPN使用TLS加密是通过使用公开密钥(非对称密钥,加密解密使用不同的key,一个称为Public?key,另一个是Private?key)对数据进行加密的,对于TLS传输的工作原理,大家可以去Google一下,资料一大堆。对于OpenVPN使用TLS?mode,首先Server和Client要有相同CA签发的证书,双方通过交换证书验证双方的合法性以决定是否建立VPN连接,然后使用对方CA把自己目前使用的数据加密方法(类似于密钥)加密后发送给对方,由于使用对方CA加密的,所以只有对方CA对应的Private?key才能解密该字串,保证了此密钥的安全性,并且此密钥定期改变,对于窃听者来说,可能还没有破解出密钥,通信双方已经更换密钥了。 我个人对OpenVPN的感觉(或者说是我使用OpenVPN的理由),NAT穿透力特强,支持HTTP代理,对动态地址支持很好,可配置性强,配置安全,开源便于二次开发...其他没有想好:)。 关于OpenVPN的相关内容可以在上找到。 下面开始正式讨论OpenVPN的安装和配置方法,本文是在Fedora?Core?2环境下配置的,由于机器在网络中不是在网关的位置,所以使用NAT方式来访问内网,否则还涉及到配置网络设备的路由。假设我的VPN?Server有2块网卡,eth0对外,IP:?eth1对内,IP:,内网地址:/16 本文除配置文件中行首的#是注释外,其他行首的#都是提示符,如果在非配置文件一行中第二次出现#说明后面的是注释,书写命令时可以省略。 获取并安装Openvpn: 首先检查系统是否安装lzo实时压缩工具 $rpm?-qa?|?grep?lzo 如果没有安装可以在/opensource/lzo/找到并安装,安装方法详见压缩包中的INSTALL文件,当然也可以用rpm包安装,记住一定要安装lzo-devel开头的那个包,因为OpenVPN需要使用lzo的头文件。 $wget?/sourceforge/openvpn/openvpn-2.0_rc16.tar.gz $tar?-zxvf?openvpn-2.0_rc16.tar.gz $cd?openvpn-2.0_rc16 $./configure $make $su? #make?install 按照INSTALL文件中的说明,做如下操作: #mknod?/dev/net/tun?c?10?200 #创建一个tun设备 #echo?alias?char-major-10-200?tun?;;?/etc/modprobe.conf #echo?1?;?/proc/sys/net/ipv4/ip_forward #打开系统的转发功能 接下来就生成服务器客户端需要使用的keys了,为了方便,我们使用OpenVPN包自带的脚本生成。 #mkdir?/etc/openvpn #cp?-r?easy-rsa?/etc/openvpn?#切换到OpenVPN源代码目录执行 修改vars?文件 -------------CUT?Here------------- #?easy-rsa?parameter?settings #?NOTE:
原创力文档


文档评论(0)