在当今数字化办公日益普及的背景下,企业或个人用户对远程访问内网资源的需求越来越强烈,OpenVPN作为一个开源、灵活且功能强大的虚拟私人网络(VPN)解决方案,成为许多网络工程师首选的搭建工具,本文将详细介绍如何在Linux服务器上搭建OpenVPN服务,帮助你快速建立一个安全、稳定的远程访问通道。
确保你有一台运行Linux系统的服务器(如Ubuntu 20.04/22.04或CentOS 7/8),并具备公网IP地址和基本的SSH访问权限,我们以Ubuntu 22.04为例进行演示。
第一步:安装OpenVPN及相关工具
使用以下命令更新系统并安装OpenVPN、Easy-RSA(用于证书管理):
sudo apt update && sudo apt install -y openvpn easy-rsa
第二步:配置证书颁发机构(CA)
复制Easy-RSA模板到指定目录,并初始化PKI(公钥基础设施):
make-cadir ~/openvpn-ca cd ~/openvpn-ca sudo ./easyrsa init-pki sudo ./easyrsa build-ca nopass
这里会提示输入CA名称(myca”),无需设置密码,方便自动化部署。
第三步:生成服务器证书和密钥
sudo ./easyrsa gen-req server nopass sudo ./easyrsa sign-req server server
完成后,你会得到server.crt和server.key文件,它们是服务器端的核心凭证。
第四步:生成Diffie-Hellman参数
该步骤用于加密协商过程,建议执行约10分钟:
sudo ./easyrsa gen-dh
第五步:配置OpenVPN服务
创建主配置文件 /etc/openvpn/server.conf如下:
port 1194
proto udp
dev tun
ca /root/openvpn-ca/pki/ca.crt
cert /root/openvpn-ca/pki/issued/server.crt
key /root/openvpn-ca/pki/private/server.key
dh /root/openvpn-ca/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"
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
此配置启用UDP协议、私有子网(10.8.0.0/24)、自动DNS和路由重定向,确保客户端流量通过VPN隧道传输。
第六步:启动服务并配置防火墙
启用IP转发:
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf sysctl -p
配置iptables规则(以Ubuntu为例):
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE sudo ufw allow 1194/udp
第七步:生成客户端配置文件
在客户端设备上,需准备.ovpn配置文件,包含CA证书、客户端证书、密钥及服务器地址,可通过easyrsa gen-req client1 nopass和sign-req client client1生成客户端证书。
测试连接:将配置文件导入OpenVPN客户端(如Windows的OpenVPN GUI或Android的OpenVPN Connect),连接后即可访问内网资源。
OpenVPN不仅安全可靠,还支持多种认证方式(如用户名密码、证书等),通过上述步骤,你可以轻松搭建一个可扩展的企业级VPN服务,为远程办公提供坚实保障,记住定期更新证书和监控日志,确保长期稳定运行。

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






