在当前网络环境日益复杂的背景下,企业与个人用户对远程访问安全性的需求不断提升,对于资源有限但又需要实现安全远程接入的场景,使用一台仅配置单网卡的CentOS服务器搭建OpenVPN服务是一个经济高效的选择,本文将详细介绍如何在CentOS系统上完成这一部署,确保你无需额外硬件即可建立加密、稳定、可管理的远程连接通道。
确保你的CentOS系统已安装并更新至最新版本(推荐使用CentOS Stream或CentOS 7/8),登录服务器后,执行以下命令更新系统:
sudo yum update -y
安装OpenVPN及相关依赖组件:
sudo yum install epel-release -y sudo yum install openvpn easy-rsa -y
Easy-RSA用于生成证书和密钥,是OpenVPN认证体系的核心工具。
下一步,初始化证书颁发机构(CA)环境,复制默认配置到本地目录:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑vars文件,设置国家、省份、组织名称等信息(export KEY_COUNTRY="CN"),然后执行:
source ./vars ./clean-all ./build-ca
接下来生成服务器证书和密钥:
./build-key-server server
为客户端生成证书(每个客户端一个):
./build-key client1
同时生成Diffie-Hellman参数以增强密钥交换安全性:
./build-dh
准备OpenVPN主配置文件,创建 /etc/openvpn/server.conf如下(可根据实际需求调整端口、协议、IP段):
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/dh2048.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
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
注意:server 10.8.0.0 255.255.255.0 表示分配给客户端的虚拟IP段,需与本机网段不冲突。
启用IP转发并配置iptables规则,使客户端流量能通过主机上网:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT iptables -A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
启动OpenVPN服务并设置开机自启:
systemctl enable openvpn@server systemctl start openvpn@server
至此,你已成功在单网卡CentOS服务器上部署了一个功能完整的OpenVPN服务器,客户端只需导入证书和配置文件即可连接,适用于家庭办公、远程运维等多种场景,建议定期备份证书、监控日志,并考虑结合Fail2Ban加强安全防护。

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

