目录
- VPN 服务器简介
- 准备工作
- 安装 OpenVPN
- 配置 VPN 服务器 4.1. 生成证书和密钥 4.2. 配置 OpenVPN 服务 4.3. 启动 OpenVPN 服务
- 配置 VPN 客户端 5.1. Windows 客户端 5.2. macOS 客户端 5.3. 移动设备客户端
- FAQ
VPN 服务器简介
*VPN(Virtual Private Network)*是一种广泛应用的网络技术,它可以建立一个安全的私有网络连接,使用户能够通过公共网络安全地访问资源。在 Ubuntu 系统上搭建 VPN 服务器是一个常见的需求,可以为用户提供稳定、安全的网络访问。
准备工作
在开始搭建 VPN 服务器之前,请确保您的 Ubuntu 系统满足以下要求:
- Ubuntu 18.04 或更高版本
- 公网 IP 地址
- 良好的网络连接
安装 OpenVPN
OpenVPN 是一款开源的 VPN 软件,我们将使用它来搭建 VPN 服务器。可以通过以下命令安装 OpenVPN:
bash sudo apt-get update sudo apt-get install openvpn
配置 VPN 服务器
生成证书和密钥
VPN 服务器需要使用数字证书和密钥来验证客户端身份并建立加密连接。我们可以使用 Easy-RSA 工具来生成这些证书和密钥:
bash sudo apt-get install easy-rsa sudo mkdir -p /etc/openvpn/easy-rsa sudo cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/ cd /etc/openvpn/easy-rsa sudo ./easyrsa init-pki sudo ./easyrsa build-ca nopass sudo ./easyrsa generate-req server nopass sudo ./easyrsa sign-req server server sudo openvpn –genkey –secret /etc/openvpn/ta.key
配置 OpenVPN 服务
接下来,我们需要编辑 OpenVPN 的配置文件:
bash sudo nano /etc/openvpn/server.conf
在配置文件中添加以下内容:
port 1194 proto udp dev tun ca /etc/openvpn/easy-rsa/pki/ca.crt cert /etc/openvpn/easy-rsa/pki/issued/server.crt key /etc/openvpn/easy-rsa/pki/private/server.key dh /etc/openvpn/easy-rsa/pki/dh.pem server 10.8.0.0 255.255.255.0 push “redirect-gateway def1 bypass-dhcp”push “dhcp-option DNS 8.8.8.8″push “dhcp-option DNS 8.8.4.4″keepalive 10 120 cipher AES-256-CBC auth SHA512 user nobody group nogroup persist-key persist-tun status /var/log/openvpn/openvpn-status.log log-append /var/log/openvpn/openvpn.log verb 3
启动 OpenVPN 服务
最后,我们启动 OpenVPN 服务:
bash sudo systemctl start openvpn@server sudo systemctl enable openvpn@server
配置 VPN 客户端
Windows 客户端
-
下载并安装 OpenVPN 客户端软件:
- 官方下载地址: https://openvpn.net/community-downloads/
-
将服务器生成的证书和密钥文件复制到 OpenVPN 客户端的
config
目录下。 -
在 OpenVPN 客户端中导入配置文件,并连接到 VPN 服务器。
macOS 客户端
-
下载并安装 Tunnelblick:
- 官方下载地址: https://tunnelblick.net/downloads.html
-
将服务器生成的证书和密钥文件复制到 Tunnelblick 的
config
目录下。 -
在 Tunnelblick 中导入配置文件,并连接到 VPN 服务器。
移动设备客户端
-
在 iOS 或 Android 设备上下载 OpenVPN Connect 应用程序。
- iOS: https://apps.apple.com/us/app/openvpn-connect/id590379981
- Android: https://play.google.com/store/apps/details?id=net.openvpn.openvpn
-
将服务器生成的证书和密钥文件导入到 OpenVPN Connect 应用程序中。
-
在 OpenVPN Connect 应用程序中添加新的 VPN 连接,并连接到 VPN 服务器。
FAQ
1. 如何查看 VPN 服务器的状态和日志?
可以使用以下命令查看 OpenVPN 服务的状态和日志:
bash sudo systemctl status openvpn@server sudo tail -n 100 /var/log/openvpn/openvpn.log
2. 如何增加 VPN 服务器的安全性?
可以考虑以下措施来增加 VPN 服务器的安全性:
- 使用强密码保护 OpenVPN 服务器的管理界面
- 限制 VPN 客户端的访问权限
- 启用 OpenVPN 的 TLS 验证机制
- 定期更新 OpenVPN 软件到最新版本
3. 如何监控 VPN 服务器的流量和用户连接情况?
可以使用 sudo openvpn --status /var/log/openvpn/openvpn-status.log 10
命令查看当前连接的 VPN 客户端信息。也可以使用第三方监控工具如 Grafana 和 InfluxDB 来监控 VPN 服务器的流量和用户连接情况。
4. 如何在 Ubuntu 上更新 OpenVPN 到最新版本?
可以通过以下步骤更新 OpenVPN 到最新版本:
-
删除现有的 OpenVPN 软件包: bash sudo apt-get remove openvpn
-
添加 OpenVPN 官方仓库并安装最新版本: bash sudo add-apt-repository ppa:openvpn-org/openvpn sudo apt-get update sudo apt-get install openvpn
-
重新配置 OpenVPN 服务器并重启服务。