openvpn基础知识

openvpn基础知识

如果对运维课程感兴趣,可以在b站上、csdn或微信视频号 上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频

1.vpn介绍

全称virtual private network虚拟专用网络,是依靠ISP和其他的NSP,在公共网络中建立专用的数据通信网络的技术,可以为企业之间或者个人与企业之间提供安全的数据传输隧道服务。在vpn中任意两点之间的连接并没有传统专网所需的端到端的物理链路,而是利用公共网络资源动态组成的,可以理解为通过私有的隧道技术在公共数据网络上模拟出来的和专网有同样功能的点到点的专线技术,所谓虚拟是指不需要去拉实际的长途物理线路,而是借用了公共的Internet网络实现。

2.vpn的作用

vpn功能可以帮助公司里的远程用户(如出差或家里)和自己的公司内部网络之间建立可信的安全连接或者是局域网连接,确保数据的加密安全传输和业务访问,对于运维工程师来说,还可以连接不同的机房为局域网,处理相关的业务流。

vpn的用途分类:

1)远程访问vpn的服务,即通过个人电脑远程拨号到企业办公网络或拨号IDC机房维护内网服务器。

2)企业内部网络之间的vpn服务,如分支机构和公司总部之间的vpn连接。

3)互联网公司多IDC机房之间的vpn服务。

4)企业外部vpn服务。供应商或合作伙伴和本公司建立的vpn连接。

3.常见的隧道协议介绍

1)PPTP:

点对点隧道协议(PPTP)是由包括微软和3Com等公司组成的PPTP论坛开发的一种点对点隧道协议,基于拨号使用的PPP协议,使用PAP或CHAP之类的加密算法,或者使用Mcrosoft的点对点加密算法MPPE,其通过跨越基于TCP/IP的数据网络创建VPN实现了从远程客户端到专用企业服务器之间数据的安全传输。PPTP支持通过公共网络建立按需的,多协议的虚拟专用网络。PPTP允许加密IP通讯,然后在要跨越公司IP网络或公共IP网络发送的IP头中对其进行封装。PPTP属于点对点方式的应用,比较适合远程的企业用户拨号到企业内部进行办公等的应用。PPTP不支持隧道验证。

2)L2TP协议

L2TP第2层隧道协议是就L2F开发的PPTP的后续版本,是一种工业标准Internet隧道协议,其可以为跨越面向数据包的媒体发送点到点协议(PPP)框架提供封装。L2TP可以提供隧道验证。

IPSec协议:(两个机房或两个企业之间应用的比较多)

也叫IP安全协议,实际上是一套协议包而不是一个独立的协议。IPSec隧道模式隧道是由封装、路由与解封装的整个过程。隧道将原始数据包隐藏在新的数据包内部,该新的数据包可能会有新的寻址与路由信息,从而使其能够通过网络传输。一般配合L2TP或PPTP使用。

3)SSL 协议:(主要应用:open vpn)

SSL协议提供了数据私密性、端点验证、信息完整性等特性。SSL协议由握手协议和记录协议组成。握手协议允许服务器和客户端在应用协议传输第一个数据字节以前,彼此确认,协商一种加密算法和密码钥匙,在数据传输期间,记录协议利用握手协议生成的秘钥加密和解密后来交互的数据。

典型的SSL VPN应用:OpenVPN,是一个非常好的开源软件。OpenVPN允许参与建立VPN的单点使用预设的私钥,第3方证书,或者用户名/密码来进行身份验证。它大量使用了OpenSSL加密库,以及SSLv3/TLSv1协议,能在linux、windows、Mac OSX上运行,是一个C/S架构的软件,需要单独安装openvpn客户端。(该点不如PPTP VPN的唯一一个点)

4.实现vpn功能的常见开源产品:

1)PPTP VPN

使用PPTP VPN的最大优势在于,无需在windows客户端单独安装客户端软件,windows默认就支持PPTP VPN拨号连接功能。PPTP VPN属于点对点方式的应用,比较适合远程的企业用户拨号到企业进行办公等的应用,但是很多小区及网络设备不支持PPTP导致无法访问。

2)SSL VPN(即OPENVPN)

PPTP 主要为那些经常外出移动或家庭办公的用户考虑,而OpenVPN不但可以使用于PPTP的应用场景,还适合针对企业异地两地总分公司之间的VPN不间断按需连接。缺点:需要单独安装客户端软件。

3)IPSEC VPN

也适合针对企业异地两地总分公司或多个IDC机房之间的VPN不间断按需连接,并且在部署使用上更简单方便。ipsec vpn的常见开源产品:openswan。

根据企业生产场景需求选择vpn方案建议:

1)如果领导愿意花钱,可以选择相关硬件产品,不错的成熟的很多,例如:防火墙、负载均衡等硬件产品都附带有vpn功能。

2)对于多数互联网公司,为了体现运维价值,建议选择开源产品,省钱,可扩展。

3)对于开源产品,老师建议

a)个人拨号选择openvpn,功能强大,稳定可靠。

b)如果不希望单独安装客户端拨号,则可选择PPTP

c)多个企业之间或者多个IDC机房直接互联,选择ipsec vpn。

一般openvpn 和ipsec vpn这两种都会了,就可以满足各种企业需求。

5.openvpn产品介绍:

openvpn是linux下开源vpn的先锋,提供了良好的访问性能和友好的用户GUI。

openvpn是一个用于创建虚拟专用网络加密通道的软件包,openvpn允许参与建立vpn的单点使用预设的私钥,第三方证书,或者用户名/密码来进行身份验证。它大量使用了OpenSSL加密库,以及SSLv3/TLSv1协议。openvpn能在linux、windows运行,是一个服务器和客户端软件,而不是一个基于web的vpn软件,也不与ipsec 及其他vpn软件包兼容。

6.openvpn依赖的SSL语TLS协议:

SSL安全套接层,是一种安全协议,诞生的目的是为了网络通信提供安全及数据完整性保障,SSL在传输层中对网络通信进行加密。SSL采用公开秘钥技术,保证两个应用间通信的保密性和可靠性,使客户端与服务器应用之间的通信不被攻击者窃听。现行的Web浏览器也普遍将http和ssl相结合,从而实现安全通信。SSL协议的继任者是TLS。加强了SSL功能。

7.openvpn的加密通信原理过程:

openvpn使用TLS加密是通过使用公开秘钥对(非对称秘钥,公钥和私钥)对数据进行加密的。首先Server和client要有相同的CA签发的证书,双方通过交互证书验证双方的合法性以决定是否建立VPN连接,然后使用对方的CA把自己目前使用的数据加密方法(类似秘钥)加密后发送给对方,由于使用对方CA加密的,所以只有对方CA对应的私钥才能解开该字符串,保证了此秘钥的安全性,并且此秘钥定期改变,对于窃听者来说,可能还没有破解出秘钥,通信双方已经更换秘钥了。

8.openvpn的多种身份验证方式:

openvpn提供了多种身份验证方式,用以确认参与连接双方的身份,包括:预享私钥,第三方证书及用户名/密码组合等。预享秘钥最为简单,但同时只能用于建立点对点的vpn,基于pki的第三方证书提供了最完善的功能,但是需要额外的精力去维护一个pki证书体系。用户名/密码组合的身份验证方式,可以省略客户端预享私钥,但仍有一份服务器CA证书需要被用作加密。最常用使用方式是:用户名/密码+CA证书方式。比较好的验证方式还有ldap或域控制器统一验证等。

9.openvpn的通讯原理:

openvpn所有的通信都基于一个单一的IP端口(默认是1194),默认使用UDP协议通讯,同时TCP也被支持。推荐使用TCP协议。

openvpn服务器具有向客户端推送某些网络配置信息的功能,这些信息包括IP地址,路由设置等。

openvpn的技术核心是虚拟网卡,其次是SSL协议的实现。 

10.办公电脑拨号到openvpn的示意图:

办公电脑拨号到vpn服务器上后,vpn服务上会给办公电脑分配一个10.8.0.x的IP地址,同时vpn服务器端也会产生一个10.8.0.x的IP地址,这两台机器相当于处于局域网。

如果对运维课程感兴趣,可以在b站上、csdn或微信视频号 上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维实战课程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值