老薛主机上的VPN配置实战,从零搭建企业级安全网络通道

dfbn6 2026-05-22 VPN翻墙 12 0

在当今数字化办公日益普及的背景下,远程访问企业内网资源已成为许多公司员工的日常需求,作为一名资深网络工程师,我最近协助一位客户“老薛”完成了他在自建主机上部署VPN服务的全过程,老薛是一家小型科技公司的IT负责人,希望为团队提供一个稳定、安全且可管理的远程接入方案,本文将详细记录这一过程,帮助读者理解如何在Linux服务器(如Ubuntu或CentOS)上部署OpenVPN服务,实现远程安全访问。

我们需要明确目标:通过在老薛的主机上搭建一个基于OpenVPN的虚拟专用网络(VPN),使员工能够安全地连接到公司内网,访问内部文件服务器、数据库和开发环境,该方案不仅成本低(无需额外硬件),而且灵活性高,支持多用户认证与细粒度权限控制。

第一步是准备服务器环境,老薛使用的是阿里云ECS实例,操作系统为Ubuntu 22.04 LTS,我们首先更新系统并安装必要软件包:

sudo apt update && sudo apt upgrade -y
sudo apt install openvpn easy-rsa -y

使用Easy-RSA工具生成证书颁发机构(CA)、服务器证书和客户端证书,这一步至关重要,因为它构成了整个VPN通信的信任基础,执行以下命令初始化PKI目录:

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa
sudo ./easyrsa init-pki
sudo ./easyrsa build-ca nopass
sudo ./easyrsa gen-req server nopass
sudo ./easyrsa sign-req server server

然后生成Diffie-Hellman密钥交换参数和TLS密钥:

sudo ./easyrsa gen-dh
sudo openvpn --genkey --secret ta.key

第二步是配置OpenVPN服务器,我们创建主配置文件 /etc/openvpn/server.conf包括监听端口(默认1194)、协议(UDP更高效)、IP地址池(例如10.8.0.0/24)、加密算法(AES-256-GCM)以及证书路径等,关键配置如下:

port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
key /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/easy-rsa/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"
tls-auth ta.key 0
cipher AES-256-GCM
auth SHA256
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3

第三步是启用IP转发和防火墙规则,老薛主机需要允许数据包转发,并配置iptables或ufw以开放UDP 1194端口,同时设置NAT规则让客户端流量能正确路由回内网:

echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
sysctl -p
ufw allow 1194/udp
ufw enable

最后一步是生成客户端配置文件,每个用户都需要一个独立的证书和.ovpn配置文件,包含CA证书、客户端证书、密钥及服务器地址,老薛团队有5名成员,我们分别生成了各自的客户端配置,并分发给他们。

部署完成后,老薛测试了多个设备(Windows、macOS、Android)的连接稳定性,均表现良好,更重要的是,所有流量都经过加密传输,有效防止了中间人攻击,目前该VPN已稳定运行三个月,成为公司远程办公的核心基础设施之一。

通过这个案例可以看出,即使没有专业网络团队,只要掌握基本命令和原理,普通人也能在自己的主机上搭建可靠的VPN服务,建议定期更新证书、监控日志,并结合双因素认证进一步提升安全性。

老薛主机上的VPN配置实战,从零搭建企业级安全网络通道

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