在当今数字化办公日益普及的背景下,企业员工、远程工作者甚至家庭用户都越来越依赖于虚拟私人网络(VPN)来实现安全、加密的远程访问,无论是访问公司内网资源、保护公共Wi-Fi上的数据传输,还是绕过地理限制获取内容,一个稳定可靠的VPN服务器都是不可或缺的技术基础设施,本文将详细介绍如何从零开始安装和配置一台基于OpenVPN的Linux服务器,适用于初学者和中级网络工程师。
第一步:准备环境
你需要一台运行Linux系统的服务器(推荐Ubuntu 20.04 LTS或CentOS Stream 9),具备公网IP地址,并确保防火墙允许UDP端口1194(OpenVPN默认端口),建议使用云服务商如阿里云、腾讯云或AWS部署虚拟机,便于快速初始化和管理。
第二步:安装OpenVPN和Easy-RSA
登录服务器后,更新系统包列表并安装OpenVPN及相关工具:
sudo apt update && sudo apt install openvpn easy-rsa -y
Easy-RSA用于生成证书和密钥,是OpenVPN认证体系的核心组件。
第三步:配置证书颁发机构(CA)
复制Easy-RSA模板到本地目录并初始化PKI(公钥基础设施):
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa sudo ./easyrsa init-pki sudo ./easyrsa build-ca nopass
这里会提示你输入CA的Common Name(MyCompany-CA),之后会生成ca.crt和ca.key文件,它们是所有客户端和服务端信任的基础。
第四步:生成服务器证书和密钥
执行以下命令为服务器签发证书:
sudo ./easyrsa gen-req server nopass sudo ./easyrsa sign-req server server
完成后你会得到server.crt和server.key,这是服务端身份的凭证。
第五步:生成Diffie-Hellman参数和TLS密钥
这些用于增强加密强度:
sudo ./easyrsa gen-dh sudo openvpn --genkey --secret ta.key
第六步:配置OpenVPN服务端
创建主配置文件 /etc/openvpn/server.conf示例如下:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
tls-auth ta.key 0
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
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
此配置启用了TUN模式、动态IP分配(10.8.0.0/24)、DNS重定向和压缩功能,适合大多数场景。
第七步:启用IP转发与防火墙规则
开启内核IP转发:
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf sysctl -p
配置iptables规则以允许流量转发和NAT:
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE iptables -A INPUT -p udp --dport 1194 -j ACCEPT
保存规则:iptables-save > /etc/iptables/rules.v4
第八步:启动服务并测试
systemctl enable openvpn@server systemctl start openvpn@server
你可以使用客户端配置文件连接,客户端只需包含ca.crt、client.crt、client.key和ta.key即可建立安全隧道。
通过以上步骤,你已经成功搭建了一个可扩展、高安全性的OpenVPN服务器,后续可根据需要添加多用户认证(如LDAP)、日志审计、负载均衡等高级功能,定期更新证书、监控日志、备份配置文件是保障长期稳定运行的关键。

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









