在现代网络环境中,远程访问企业内网资源、安全传输数据已成为刚需,对于预算有限或仅有一块网卡的服务器用户而言,在CentOS系统上搭建一个稳定、安全的VPN服务是一个经济高效的解决方案,本文将详细介绍如何在CentOS 7/8系统中,使用OpenVPN软件包,仅通过单网卡实现可靠的点对点加密通信,适用于小型办公室、远程办公或个人隐私保护场景。
确保你的CentOS服务器已安装并更新至最新状态,执行以下命令:
sudo yum update -y
安装OpenVPN及相关依赖:
sudo yum install epel-release -y sudo yum install openvpn easy-rsa -y
Easy-RSA用于生成证书和密钥,是OpenVPN身份认证的核心组件,安装完成后,复制默认配置文件到工作目录:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑vars文件(vi vars),根据需要修改国家、组织等信息,
export KEY_COUNTRY="CN"
export KEY_PROVINCE="Beijing"
export KEY_CITY="Beijing"
export KEY_ORG="MyCompany"
export KEY_EMAIL="admin@example.com"
运行初始化脚本生成CA根证书:
source ./vars ./clean-all ./build-ca
接着生成服务器证书和密钥:
./build-key-server server
然后为客户端生成证书(可重复执行以支持多个客户端):
./build-key client1
最后生成Diffie-Hellman参数和TLS密钥(增强安全性):
./build-dh openvpn --genkey --secret ta.key
完成证书制作后,将相关文件复制到OpenVPN主目录:
cp keys/ca.crt keys/server.crt keys/server.key keys/dh2048.pem keys/ta.key /etc/openvpn/
现在配置服务器主文件 /etc/openvpn/server.conf,关键配置如下:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh 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 openvpn-status.log
verb 3
push "redirect-gateway" 表示所有客户端流量将被重定向至VPN隧道,实现“透明代理”效果;DNS设置确保客户端解析域名时走加密通道。
启用IP转发并配置iptables规则:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE iptables -A INPUT -p udp --dport 1194 -j ACCEPT
重启服务并开机自启:
systemctl enable openvpn@server systemctl start openvpn@server
至此,单网卡OpenVPN服务器已完成部署,客户端可通过OpenVPN GUI工具导入client1.ovpn配置文件(需手动创建并包含ca.crt、client.crt、client.key、ta.key等文件)连接,此方案成本低、易维护,适合中小规模环境,同时具备良好的安全性与扩展性,建议定期轮换证书、监控日志、结合防火墙策略进一步加固防护。

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

