在当今数字化办公日益普及的背景下,企业或个人用户对远程访问内网资源的需求持续增长,OpenVPN作为一款开源、稳定且功能强大的虚拟私人网络(VPN)解决方案,因其跨平台支持、灵活配置和高安全性,成为众多网络工程师的首选工具,本文将带你一步步完成OpenVPN的搭建过程,无论你是新手还是有一定经验的运维人员,都能从中获得实用指导。
准备环境,建议使用一台运行Linux系统的服务器(如Ubuntu 20.04或CentOS 7),确保该服务器拥有公网IP地址,并开放UDP端口1194(默认端口,也可自定义),登录服务器后,更新系统并安装必要的依赖包:
sudo apt update && sudo apt install -y openvpn easy-rsa
配置证书颁发机构(CA),OpenVPN基于PKI(公钥基础设施)进行身份认证,因此需要生成证书签名请求(CSR)和私钥,进入Easy-RSA目录,初始化PKI环境:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa ./easyrsa init-pki ./easyrsa build-ca nopass # 创建CA根证书,不设置密码便于自动化
为服务器生成证书和密钥:
./easyrsa gen-req server nopass ./easyrsa sign-req server server
再为客户端生成证书(每台客户端需单独生成):
./easyrsa gen-req client1 nopass ./easyrsa sign-req client client1
生成完成后,复制证书到OpenVPN配置目录:
cp pki/ca.crt pki/issued/server.crt pki/private/server.key /etc/openvpn/
现在配置OpenVPN主服务文件,创建 /etc/openvpn/server.conf 文件,内容如下(可根据实际需求调整):
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh 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"
keepalive 10 120
tls-auth ta.key 0
cipher AES-256-CBC
auth SHA256
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
注意:你需要用 openvpn --genkey --secret ta.key 生成一个TLS密钥,用于增强安全性。
启动OpenVPN服务并设置开机自启:
sudo systemctl start openvpn@server sudo systemctl enable openvpn@server
配置防火墙(如UFW)允许UDP流量:
sudo ufw allow 1194/udp sudo ufw reload
客户端方面,下载上述生成的客户端证书、CA证书和TLS密钥,创建.ovpn配置文件,内容包括服务器IP、端口、协议、证书路径等。
client
dev tun
proto udp
remote your-server-ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
tls-auth ta.key 1
cipher AES-256-CBC
auth SHA256
verb 3
将此文件导入OpenVPN客户端(Windows/Linux/macOS均支持),即可连接成功。
通过以上步骤,你已成功搭建了一个安全、可靠的OpenVPN服务,它不仅可用于远程办公,还可用于站点间互联、加密传输等场景,记住定期更新证书、监控日志、优化性能,是保障长期稳定运行的关键,OpenVPN虽强大,但配置需谨慎,建议先在测试环境中验证无误后再部署生产环境。

VPN加速器|半仙VPN加速器-免费VPN梯子首选半仙VPN

