在企业网络管理和远程办公日益普及的今天,构建一个安全可靠的虚拟私人网络(VPN)服务器变得尤为重要,CentOS 7作为一款长期支持(LTS)的Linux发行版,因其稳定性与安全性广受企业和运维人员青睐,本文将详细介绍如何在CentOS 7系统上部署并配置OpenVPN服务,实现安全的远程访问功能,适用于小型团队、远程办公或站点间互联场景。
第一步:准备工作
确保你有一台运行CentOS 7的物理机或云服务器(推荐使用阿里云、腾讯云或AWS),并具备root权限,登录后执行以下命令更新系统:
yum update -y
接着安装EPEL源(用于获取OpenVPN及相关工具):
yum install epel-release -y
第二步:安装OpenVPN和Easy-RSA
OpenVPN是开源的SSL/TLS协议实现,支持多种认证方式,使用YUM安装OpenVPN和管理证书的工具Easy-RSA:
yum install openvpn easy-rsa -y
第三步:配置证书颁发机构(CA)
证书体系是OpenVPN身份验证的核心,我们使用Easy-RSA生成CA根证书和服务器/客户端证书:
-
复制Easy-RSA模板到默认路径:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
-
编辑vars文件,修改如下参数(根据实际情况填写):
export KEY_COUNTRY="CN" export KEY_PROVINCE="Beijing" export KEY_CITY="Beijing" export KEY_ORG="MyCompany" export KEY_EMAIL="admin@mycompany.com" export KEY_CN="server" export KEY_NAME="server" export KEY_OU="OpenVPN" -
执行初始化和签发CA证书:
source ./vars ./clean-all ./build-ca
-
生成服务器证书和密钥:
./build-key-server server
-
生成客户端证书(每个用户需单独生成):
./build-key client1
-
生成Diffie-Hellman参数(增强加密强度):
./build-dh
第四步:配置OpenVPN服务器
复制示例配置文件并编辑:
cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn/ vi /etc/openvpn/server.conf
关键配置项如下(可根据需要调整):
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/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"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0
cipher AES-256-CBC
auth SHA256
user nobody
group nobody
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
第五步:启用IP转发和防火墙规则
允许内核转发流量:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
配置iptables(或firewalld)开放UDP端口1194并启用NAT:
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE iptables -I INPUT -p udp --dport 1194 -j ACCEPT service iptables save
第六步:启动OpenVPN服务
设置开机自启并启动服务:
systemctl enable openvpn@server systemctl start openvpn@server
将生成的客户端配置文件(client1.ovpn)分发给用户,包含ca.crt、client1.crt、client1.key和ta.key(可合并为一个文件),用户只需导入该配置即可连接至你的OpenVPN服务器。
通过以上步骤,你可以在CentOS 7上成功搭建一个功能完备、安全可靠的OpenVPN服务器,满足远程办公、跨网段通信等需求,建议定期备份证书和配置文件,并监控日志以保障服务可用性。

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

