在当今数字化办公日益普及的背景下,企业员工和家庭用户对远程访问内网资源的需求不断增长,无论是远程办公、异地部署服务器,还是保护敏感数据传输的安全性,搭建一个稳定可靠的虚拟私人网络(VPN)已成为现代网络工程师必备的技能之一,本文将带你从零开始,逐步完成一个基础但实用的OpenVPN服务搭建流程,适用于Linux服务器环境(以Ubuntu为例),帮助你建立一条加密、安全、稳定的远程访问通道。

第一步:准备环境
确保你有一台公网IP的Linux服务器(如阿里云、腾讯云或本地自建服务器),并已安装Ubuntu 20.04或更高版本,你需要具备基本的SSH远程登录权限,建议使用root账户或sudo权限执行后续操作。

第二步:安装OpenVPN及相关工具
通过终端执行以下命令更新系统包列表并安装OpenVPN:

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

Easy-RSA是用于生成证书和密钥的工具,是OpenVPN认证体系的核心组件。

第三步:配置证书颁发机构(CA)
进入Easy-RSA目录并初始化PKI(公钥基础设施):

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa

编辑vars文件,设置你的组织信息(如国家、省份、公司名等),然后运行:

./clean-all
./build-ca

按照提示输入CA名称(MyCompany-CA”),这一步会生成根证书(ca.crt),是所有客户端连接时验证身份的基础。

第四步:生成服务器证书和密钥
运行以下命令生成服务器证书和密钥:

./build-key-server server

同样按提示操作,完成后会在当前目录生成server.crtserver.key文件。

第五步:生成客户端证书和密钥
为每个需要接入的客户端生成独立证书(例如为员工A生成):

./build-key client1

此步骤可重复执行,支持多用户接入。

第六步:生成Diffie-Hellman参数和TLS密钥
这些参数用于增强加密强度:

./build-dh
openvpn --genkey --secret ta.key

第七步:配置OpenVPN服务器
复制示例配置文件到/etc/openvpn/目录,并命名为server.conf

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

编辑该文件,关键修改项包括:

  • port 1194:指定监听端口(默认UDP 1194)
  • proto udp:选择协议(推荐UDP,性能更优)
  • dev tun:使用TUN设备创建点对点隧道
  • 指定证书路径(ca.crt、server.crt、server.key、dh.pem、ta.key)
  • 启用IP转发和NAT(让客户端能访问外网)

第八步:启动服务并设置开机自启

systemctl start openvpn@server
systemctl enable openvpn@server

第九步:配置防火墙与端口转发
若服务器有防火墙(如ufw),需放行UDP 1194端口:

ufw allow 1194/udp

如需让客户端访问公网,还需在服务器上启用IP转发(编辑/etc/sysctl.conf,设置net.ipv4.ip_forward=1)并配置iptables规则。

最后一步:分发客户端配置文件
将生成的client1.ovpn文件(包含证书、密钥、服务器地址等信息)发送给客户端,客户端只需安装OpenVPN GUI(Windows)或使用Linux命令行即可连接。

至此,你已经成功搭建了一个功能完整的个人或小型企业级OpenVPN服务,它不仅提供了加密通信能力,还具备灵活的用户管理与扩展性,建议定期更新证书、监控日志,并结合Fail2Ban等工具防范暴力破解攻击,掌握这项技术,让你在网络世界中拥有更安全、自由的连接方式。

手把手教你搭建VPN,从零开始构建安全远程访问通道  第1张

半仙加速器-海外加速器|VPN加速器|vpn翻墙加速器|VPN梯子|VPN外网加速