您的位置:首页 > 技术中心 > 运维 >

OpenVPN是怎么在Linux上使用的?

时间:2022-02-28 15:05

下面由linux系统教程栏目给大家介绍Linux OpenVPN 客户端如何连接配置,希望对需要的朋友有所帮助!

最近北京机房的机器需要连接上海机房的服务器,上海机房用的 VPN 服务是 OpenVPN。又听说 OpenVPN 客户端可以在 Linux 服务器上运行,所以研究了一下 OpenVPN 如何在 Linux 服务器上使用。

Linux 服务器信息如下:

系统: CentOS Linux release 7.5.1804 (Core)

内存: 8G

硬盘: 100G

安装 OpenVPN 客户端

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

yum -y install epel-release
yum -y install openvpn

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

[root@ns1 ~]# ll /etc/openvpn/
total 8
drwxr-x--- 2 root openvpn  34 Jul 26 15:06 client
drwxr-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                         # 账号密码文件,需要新建,第一行账号,第二行是密码
└── server
2 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.225
Thu Jul 26 15:19:43 2018 /sbin/ip route add 172.16.1.0/24 via 10.6.0.225
Thu Jul 26 15:19:43 2018 /sbin/ip route add 10.0.0.0/8 via 10.6.0.225
Thu Jul 26 15:19:43 2018 /sbin/ip route add 10.6.0.0/24 via 10.6.0.225
Thu Jul 26 15:19:43 2018 Initialization Sequence Completed

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

client
dev tun
proto tcp
remote x.x.x.x 1194               # x.x.x.x 代表服务端IP地址映射的公网IP地址
resolv-retry infinite
nobind
persist-key
persist-tun
ca client/ca.crt
;cert client.crt
;key client.key
remote-cert-tls server
tls-auth client/ta.key 1
cipher AES-256-CBC
ns-cert-type server
auth-user-pass
comp-lzo
verb 3

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

以上就是OpenVPN是怎么在Linux上使用的?的详细内容,更多请关注gxlcms其它相关文章!

热门排行

今日推荐

热门手游