Ubuntu系统中配置OpenVPN服务的完整指南,从安装到安全连接

作为一名网络工程师,我经常被问到如何在Linux服务器或桌面环境中部署安全的虚拟私人网络(VPN),Ubuntu作为最受欢迎的开源操作系统之一,其稳定性和灵活性使其成为搭建OpenVPN服务的理想选择,本文将详细介绍如何在Ubuntu系统上安装、配置并测试OpenVPN服务,帮助你建立一个安全、可靠的远程访问通道。

确保你的Ubuntu系统是最新的,打开终端,执行以下命令更新系统包列表和已安装的软件:

sudo apt update && sudo apt upgrade -y

安装OpenVPN及其依赖项,Ubuntu官方仓库中包含OpenVPN软件包,我们可以通过apt直接安装:

sudo apt install openvpn easy-rsa -y

easy-rsa是用于生成证书和密钥的工具,对于建立TLS/SSL加密的OpenVPN连接至关重要。

安装完成后,我们需要配置证书颁发机构(CA)和服务器证书,默认情况下,EasyRSA的配置文件位于 /usr/share/easy-rsa/,建议将其复制到自定义目录,/etc/openvpn/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

然后编辑 vars 文件(使用 nanovim),根据需要修改国家、省份、组织等信息。

export KEY_COUNTRY="CN"
export KEY_PROVINCE="Beijing"
export KEY_CITY="Beijing"
export KEY_ORG="MyCompany"
export KEY_EMAIL="admin@example.com"

初始化PKI(公钥基础设施)并生成CA证书:

./easyrsa init-pki
./easyrsa build-ca nopass

这里使用 nopass 表示不设置CA密码,便于自动化脚本运行;生产环境建议设置强密码保护。

下一步是生成服务器证书和密钥:

./easyrsa gen-req server nopass
./easyrsa sign-req server server

之后,生成Diffie-Hellman参数(用于密钥交换):

./easyrsa gen-dh

生成TLS认证密钥(增强安全性):

openvpn --genkey --secret ta.key

我们创建OpenVPN服务器配置文件,在 /etc/openvpn/server/ 目录下新建一个名为 server.conf 的文件(若不存在,请先创建该目录):

sudo mkdir -p /etc/openvpn/server
sudo nano /etc/openvpn/server/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
topology subnet
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 SHA256
tls-auth /etc/openvpn/easy-rsa/ta.key 0
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3

保存并退出后,启用IP转发功能以支持NAT:

echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

配置防火墙(如果使用UFW):

sudo ufw allow OpenSSH
sudo ufw allow 1194/udp
sudo ufw enable

启动OpenVPN服务并设置开机自启:

sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server

至此,OpenVPN服务器已在Ubuntu上成功部署,客户端可使用.ovpn配置文件连接,该文件需包含CA证书、客户端证书、密钥及服务器地址等信息。

通过以上步骤,你可以构建一个基于OpenVPN的安全远程访问解决方案,适用于家庭办公、企业分支机构互联或个人隐私保护等多种场景,记住定期更新证书、监控日志、强化防火墙规则,是保障长期安全的关键。

Ubuntu系统中配置OpenVPN服务的完整指南,从安装到安全连接

半仙加速器-海外加速器|VPN加速器|vpn翻墙加速器|VPN梯子|VPN外网加速

@版权声明

转载原创文章请注明转载自半仙加速器-海外加速器|VPN加速器|vpn翻墙加速器|VPN梯子|VPN外网加速,网站地址:https://web-banxianjiasuqi.com/