github项目地址
https://github.com/Nyr/openvpn-install
wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh
OpenVPN 是一个开源的、快速的、流行的创建VPN(虚拟私人网络)的程序。它使用TCP和UDP传输协议,VPN隧道通过OpenVPN协议以及SSL/TLS认证、证书、凭证进行安全保护,还可以选择MAC地址锁定以及多因素认证。
OpenVPN 可以在多种设备和系统上使用。和大多数VPN协议一样,它采用客户端-服务器架构。OpenVPN 访问服务器运行在Linux系统上,客户端可以安装在其他Linux系统、Windows、macOS以及Android、Windows Mobile和iOS等移动操作系统上。
下面将详细介绍Ubuntu 22.04/Ubuntu 20.04上搭建OpenVPN 并访问服务器,并从其他Linux系统连接VPN客户端。
第1步:在Ubuntu上设置OpenVPN服务器
1. 适用脚本安装
在下载和运行脚本之前,请注意脚本将自动检测服务器的私有IP地址,但你需要记下服务器的公共IP地址,特别是如果它运行在NAT后面。
要找出你的服务器的公共IP地址,运行以下wget命令或dig命令。
$ wget -qO - icanhazip.com
# or
$ dig +short myip.opendns.com @resolver1.opendns.com
2. 现在使用cURL命令行工具下载安装脚本,然后使用chmod命令使其可执行,如下所示。
$ curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
$ chmod +x openvpn-install.sh
3. 接下来,运行可执行的安装脚本,如下所示。
$ sudo bash openvpn-install.sh
当第一次执行时,脚本会问你一些问题,请仔细阅读并根据你的偏好提供答案,以设置OpenVPN服务器。
4. 完成VPN安装过程后,客户端配置文件将被写入当前工作目录。这是你将用于配置OpenVPN客户端的文件,如下一节所述。
5. 接下来,确认OpenVPN 服务是否正在运行,使用以下systemctl命令检查其状态。
$ sudo systemctl status openvpn
6. 另外,确认OpenVPN 守护进程是否在脚本指示使用的端口上监听,使用ss命令,如下所示。
$ sudo ss -tupln | grep openvpn
7. 如果你检查你的网络接口,会为VPN隧道创建一个新的接口,你可以使用IP命令确认这一点。
$ ip add
第2步:在Ubuntu中设置OpenVPN客户端
8. 现在到了设置你的OpenVPN 客户端并将其连接到VPN服务器的时间了。首先,在客户端机器上安装OpenVPN 包,如下所示:
$ sudo yum install openvpn #基于RHEL的系统
$ sudo apt install openvpn #基于Debian的系统
$ sudo dnf install openvpn #Fedora Linux
9. 在桌面系统上,你还需要安装network-manager-openvpn 包,以便通过图形界面进行VPN设置。
$ sudo yum install network-manager-openvpn #基于RHEL的系统
$ sudo apt install network-manager-openvpn #基于Debian的系统
$ sudo dnf install network-manager-openvpn #Fedora Linux
10. 安装上述包后,启动OpenVPN 服务,现在启用它,以便在系统启动时自动启动,并检查其状态以确认它正在运行。
$ sudo systemctl start openvpn
$ sudo systemctl enable openvpn
$ sudo systemctl status openvpn
11. 现在你需要从OpenVPN服务器导入OpenVPN 客户端设置。打开终端窗口,并使用SCP命令获取文件,如下所示。
$ cd ~
$ scp tecmint@10.42.0.247:/home/tecmint/tecmint.ovpn .
12. 打开系统设置,然后转到网络。在VPN下,点击添加按钮以获取必要的选项。
13. 在弹出窗口中,选择“从文件导入”,如以下截图中所示。然后浏览你的文件管理器并选择你从服务器下载的.ovpn
客户端配置文件。
14. 在其他Linux桌面系统上,点击系统面板上的网络图标,转到网络连接。然后点击加号按钮添加新连接。从下拉菜单中选择“导入一个已保存的VPN配置…”,如以下截图中所示。
创建连接并导入文件。
15. 导入文件后,VPN设置应如以下截图所示。然后点击添加。
16. 你的VPN客户端设置应成功添加。你可以通过打开VPN连接到OpenVPN 服务器,如以下截图中所示。
17. 现在VPN连接应成功建立,如以下截图所示。
18. 如果你使用IP add命令检查你的网络接口连接,现在应该存在一个VPN隧道接口,如以下截图所示。
$ ip add
第3步:在Linux中设置OpenVPN客户端
19. 要将另一个Linux服务器作为VPN客户端连接,请确保你已经安装了OpenVPN包,并启动和启用了OpenVPN服务,如上所述。
然后下载.ovpn
客户端文件,并将其复制到/etc/openvpn/目录中,如下所示。
$ scp tecmint@10.42.0.247:/home/tecmint/tecmint.ovpn .
$ ls
$ sudo cp tecmint.ovpn /etc/openvpn/client.conf
20. 接下来,启动VPN客户端服务,启用它,并使用以下命令检查其状态。
$ sudo systemctl start openvpn@client.service
$ sudo systemctl enable openvpn@client.service
$ sudo systemctl status openvpn@client.servic
21. 然后使用IP add命令,确认已创建VPN隧道接口,如下所示。
$ ip add
22. 要在其他操作系统上设置其他OpenVPN客户端,请使用以下客户端:
- Windows:官方的OpenVPN社区客户端Windows版。
- Android:Android的OpenVPN客户端。
- iOS:官方的OpenVPN Connect客户端iOS版。
第4步:从Ubuntu卸载OpenVPN
23. 如果你想添加一个新的VN用户或撤销现有用户或从系统中移除OpenVPN服务器,只需再次运行安装脚本。然后从选项列表中选择你想要执行的操作,并按照提示进行。
$ sudo bash openvpn-install.sh
以上就是Ubuntu 22.04/Ubuntu 20.04上OpenVPN的详细安装过程。