安装 OpenVPN

首先需要安装 OpenVPN 客户端。一般来说直接使用 apt-get 即可。执行如下命令安装:
  1. # apt-get install openvpn
OpenVPN 安装完成后,会创建 <font style="color:rgb(51, 51, 51);background-color:rgb(250, 250, 252);">/etc/openvpn/</font>文件夹
  1. # ll /etc/openvpn/
  2. drwxr-xr-x 4 root root 4096 Jul 5 11:04 ./
  3. drwxr-xr-x 101 root root 4096 Jul 5 10:08 ../
  4. drwxr-xr-x 2 root root 4096 Mar 22 22:40 client/
  5. drwxr-xr-x 2 root root 4096 Mar 22 22:40 server/
  6. -rwxr-xr-x 1 root root 1468 Mar 22 22:40 update-resolv-conf*

:::color4 注意⚠️:

新版本 OpenVPN 可能会多 client 和 server 文件夹,我们直接忽略这两个文件夹即可

:::

配置 OpenVPN 客户端

作为客户端,OpenVPN 并没有特定的配置文件,而是由服务器提供方给出一个配置文件。 对于认证,OpenVPN 提供了两种认证方法:基于用户名/密码的认证与SSL证书认证。用户名/密码的认证方法无法(或较难)限制一个账号同时连接多个客户端,而采用证书,则可保证同一证书同一时间只能有一个客户端连接。当然,这些都是由服务器端决定的,不需要客户端进行选择。 首先将 OpenVPN 服务器提供商发给你的配置文件解压,并将所有文件都复制到 <font style="color:rgb(51, 51, 51);background-color:rgb(250, 250, 252);">/etc/openvpn/</font>中。 这些文件中至少包含一个 <font style="color:rgb(51, 51, 51);background-color:rgb(250, 250, 252);">.ovpn</font> 文件,如:client.ovpn;如果服务器需要证书认证,则应该还存在另外三个证书文件。 下面是一个<font style="color:rgb(51, 51, 51);background-color:rgb(250, 250, 252);">.ovpn</font>配置示例:
  1. client
  2. dev tun
  3. proto tcp
  4. remote 192.168.135.75 1194
  5. resolv-retry infinite
  6. nobind
  7. mute-replay-warnings
  8. redirect-gateway
  9. ca /etc/openvpn/ca.crt
  10. cert /etc/openvpn/client.crt
  11. key /etc/openvpn/client.key
  12. comp-lzo
  13. verb 4
一般来说,证书相关的内容可能需要你进行修改,修改成这三个证书文件文件的实际位置,然后保存即可。

连接 OpenVPN

在配置好<font style="color:rgb(51, 51, 51);background-color:rgb(250, 250, 252);">.ovpn</font>文件后,执行下面命令即可连接服务器(注意该目录下对应文件的权限)。
  1. openvpn /etc/openvpn/client.ovpn
此时,终端会回显很多连接日志。如果连接不成功,则可以通过这些日志来确定出错位置。如果要断开,只需要通过 <font style="color:rgb(51, 51, 51);background-color:rgb(250, 250, 252);">Ctrl+C</font> 强制终止即可。 在测试成功后,使用以下命令即可在后台连接OpenVPN:
  1. openvpn /etc/openvpn/client.ovpn > /dev/null &
如果希望开机即自动连接OpenVPN,或者是VPN常年在线,则可将上述命令行加入 /etc/rc.localbash /etc/rc.local 注意,命令末尾的 <font style="color:rgb(51, 51, 51);background-color:rgb(250, 250, 252);">&</font> 符号不能省略,否则将可能阻塞系统的正常启动。

参考文档

Ubuntu下OpenVPN客户端配置教程