报道:linux openvpn是什么

时间:2023-03-17 09:13:00       来源:PHP中文网

本教程操作环境:linux7.3系统、Dell G3电脑。


(资料图)

openvpn是什么

VPN 直译就是虚拟专用通道,是提供给企业之间或者个人与公司之间安全数据传输的隧道,OpenVPN 无疑是 Linux 下开源 VPN 的先锋,提供了良好的性能和友好的用户 GUI。

OpenVPN 是一个基于 OpenSSL 库的应用层 VPN 实现,是一个开源的加密隧道构建工具。OpenVPN可以在Internet中实现点对点的SSL VPN安全连接。使用 OpenVPN 的好处是安全、易用和稳定,且认证方式灵活,具备实现 SSL VPN 解决方案的完整特性。OpenVPN 可以应用于 Linux、Unix、Mac OS 以及Windows 等各种操作系统平台。

OpenVPN 允许参与建立 VPN 的单点使用共享金钥,电子证书,或者用户名/密码来进行身份验证。它大量使用了 OpenSSL 加密库中的 SSLv3 /TLSv1 协议函式库。OpenVPN 能在 Solaris、Linux、OpenBSD、FreeBSD、NetBSD、Mac OS X 与 Windows 上运行,并包含了许多安全性的功能。它并不是一个基于 Web 的 VPN 软件,也不与 IPSec 及其他 VPN 软件包兼容。

虚拟私有网络(VPN)隧道是通过 Internet 隧道技术将两个不同地理位置的网络安全的连接起来的技术。当两个网络是使用私有 IP 地址的私有局域网络时,它们之间是不能相互访问的,这时使用隧道技术就可以使得两个子网内的主机进行通讯。例如,VPN 隧道技术经常被用于大型机构中不同办公区域子网的连接。有时,使用 VPN 隧道仅仅是因为它很安全。服务提供商与公司会使用这样一种方式架设网络,他们将重要的服务器(如,数据库,VoIP,银行服务器)放置到一个子网内,仅仅让有权限的用户通过 VPN 隧道进行访问。如果需要搭建一个安全的 VPN 隧道,通常会选用 IPSec,因为 IPSec VPN 隧道被多重安全层所保护。

VPN (虚拟专用网)发展至今已经不在是一个单纯的经过加密的访问隧道了,它已经融合了访问控制、传输管理、加密、路由选择、可用性管理等多种功能,并在全球的信息安全体系中发挥着重要的作用。也在网络上,有关各种 VPN 协议优缺点的比较是仁者见仁,智者见智,很多技术人员由于出于使用目的考虑,包括访问控制、 安全和用户简单易用,灵活扩展等各方面,权衡利弊,难以取舍;尤其在 VOIP 语音环境中,网络安全显得尤为重要,因此现在越来越多的网络电话和语音网关支持 VPN 协议。

Linux服务器上使用OpenVPN

安装 OpenVPN 客户端

Linux 服务器安装 OpenVPN 相对简单一些,为了方便安装,我们用 yum 直接安装,具体过程如下:

yum -y install epel-releaseyum -y install openvpn
登录后复制

OpenVPN 安装完成后会在 /etc/openvpn 生成对应的文件,具体如下:

[root@ns1 ~]# ll /etc/openvpn/total 8drwxr-x--- 2 root openvpn  34 Jul 26 15:06 clientdrwxr-x--- 2 root openvpn   6 Apr 26 23:04 server
登录后复制

准备配置文件及证书文件

因为我们之前有安装过 OpenVPN 服务端,具体过程参见 OpenVPN 安装配置,在这里我们直接用它提供的配置文件即可。

注意: 我们之前安装的 OpenVPN 服务端集成了 LDAP 统一认证,所以我们不再需要服务端分配给客户端的证书及密钥,只需要配置文件及相应的 key 即可,还有就是我们需要新建账号密码文件 passwd 。

配置文件修改完成后, /etc/openvpn 目录结构如下所示:

[root@ns1 ~]# tree /etc/openvpn//etc/openvpn/├── client│   ├── ca.crt                    # 服务端提供│   └── ta.key                    # 服务端提供├── client.ovpn                    # 客户端配置文件├── passwd                         # 账号密码文件,需要新建,第一行账号,第二行是密码└── server2 directories, 4 files
登录后复制

连接测试

配置完成后,我们用命令行相关命令进行测试,具体命令如下:

openvpn \--daemon \--cd /etc/openvpn \--config client.ovpn \--auth-user-pass /etc/openvpn/passwd \--log-append /var/log/openvpn.log
登录后复制

命令参数说明:

--daemon           # 后台运行--cd               # 配置文件目录路径--config           # 配置文件名称--auth-user-pass   # 指定账号密码文件--log-append       # 日志文件
登录后复制

命令执行完后,可以用以下命令查看相关日志:

tail -f /var/log/openvpn.log
登录后复制

当日志末尾出现类似如下内容说明正常连接了:

Thu Jul 26 15:19:43 2018 /sbin/ip addr add dev tun0 local 10.6.0.226 peer 10.6.0.225Thu Jul 26 15:19:43 2018 /sbin/ip route add 172.16.1.0/24 via 10.6.0.225Thu Jul 26 15:19:43 2018 /sbin/ip route add 10.0.0.0/8 via 10.6.0.225Thu Jul 26 15:19:43 2018 /sbin/ip route add 10.6.0.0/24 via 10.6.0.225Thu Jul 26 15:19:43 2018 Initialization Sequence Completed
登录后复制

最后补充一下配置文件内容:

clientdev tunproto tcpremote x.x.x.x 1194               # x.x.x.x 代表服务端IP地址映射的公网IP地址resolv-retry infinitenobindpersist-keypersist-tunca client/ca.crt;cert client.crt;key client.keyremote-cert-tls servertls-auth client/ta.key 1cipher AES-256-CBCns-cert-type serverauth-user-passcomp-lzoverb 3
登录后复制

推荐学习:《linux视频教程》

以上就是linux openvpn是什么的详细内容,更多请关注php中文网其它相关文章!

关键词: