服务器创建VPN,从零开始搭建安全远程访问通道

hyde1011 14 2026-04-01 01:18:07

在当今数字化办公和远程协作日益普及的背景下,企业与个人用户对网络安全、稳定性和灵活性的需求不断上升,虚拟私人网络(Virtual Private Network,简称VPN)作为实现远程安全访问的核心技术之一,正被广泛应用于企业内网扩展、员工远程办公、跨地域数据传输等场景,而通过服务器搭建自己的VPN服务,不仅成本更低、控制权更强,还能根据业务需求灵活定制策略,本文将详细介绍如何在Linux服务器上搭建一个基于OpenVPN的自建VPN服务,帮助网络工程师快速掌握核心配置流程。

准备工作必不可少,你需要一台运行Linux系统的服务器(推荐CentOS 7或Ubuntu 20.04以上版本),具备公网IP地址,并确保防火墙开放UDP端口1194(OpenVPN默认端口),建议使用云服务商如阿里云、腾讯云或AWS部署服务器,并提前绑定弹性公网IP,需准备好本地客户端设备(如Windows、Mac或移动设备)用于连接测试。

第一步是安装OpenVPN及相关工具,以Ubuntu为例,可通过以下命令安装:

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

Easy-RSA用于生成证书和密钥,这是建立安全连接的关键,需要初始化证书颁发机构(CA),并生成服务器和客户端证书,进入Easy-RSA目录后执行:

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

这些步骤会生成服务器证书(server.crt)、私钥(server.key)以及客户端证书(client1.crt)和私钥(client1.key)。

第二步是配置OpenVPN服务器,复制示例配置文件到/etc/openvpn/目录下:

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/

编辑该文件,关键配置包括:

  • port 1194:指定监听端口;
  • proto udp:选择UDP协议,性能更优;
  • dev tun:使用隧道模式;
  • ca ca.crtcert server.crtkey server.key:引用生成的证书;
  • dh dh.pem:生成Diffie-Hellman参数(使用./easyrsa gen-dh命令);
  • push "redirect-gateway def1 bypass-dhcp":强制客户端流量走VPN;
  • push "dhcp-option DNS 8.8.8.8":指定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 FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -s 10.8.0.0/24 -d 10.8.0.0/24 -j ACCEPT

启动OpenVPN服务并设置开机自启:

systemctl start openvpn@server
systemctl enable openvpn@server

至此,你的自建VPN服务器已成功上线,客户端只需将生成的client1.crt、client1.key和ca.crt合并为.ovpn文件,并导入OpenVPN客户端即可连接,此方案不仅满足基础远程办公需求,还可扩展支持多用户认证、日志审计、动态IP分配等功能,是企业级网络架构中值得推广的安全实践。

服务器创建VPN,从零开始搭建安全远程访问通道

上一篇:安卓设备连接VPN的完整指南,安全、稳定与实用技巧全解析
下一篇:深入解析VPN Host,构建安全远程访问网络的关键技术
相关文章
返回顶部小火箭