手把手教你搭建虚拟机中的VPN服务,从零开始的网络隔离与远程访问解决方案

dfbn6 2026-04-25 半仙VPN 1 0

在当今数字化办公和远程协作日益普及的背景下,如何安全、高效地实现远程访问内网资源成为许多企业和个人用户的核心需求,虚拟机(VM)作为灵活、可复用的计算环境,成为部署轻量级VPN服务的理想平台,本文将详细讲解如何在虚拟机中搭建一个基于OpenVPN的私有VPN服务,适用于家庭网络、小型企业或开发测试环境。

你需要准备一台运行虚拟化软件(如VMware Workstation、VirtualBox或Proxmox VE)的主机,并安装一个Linux发行版作为虚拟机操作系统(推荐Ubuntu Server 22.04 LTS或CentOS Stream),确保虚拟机具备静态IP地址,并能通过宿主机访问外网,以便后续配置。

第一步:更新系统并安装OpenVPN依赖包
登录虚拟机终端后,执行以下命令:

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

easy-rsa 是用于生成SSL证书和密钥的工具,是OpenVPN认证机制的核心组件。

第二步:初始化PKI(公钥基础设施)
复制EasyRSA模板到指定目录:

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

编辑 vars 文件,设置国家、组织名称等信息(如CN=China, O=MyCompany),然后执行:

./easyrsa init-pki
./easyrsa build-ca nopass

这会生成根证书(ca.crt),用于后续所有客户端和服务端的身份验证。

第三步:生成服务器证书和密钥

./easyrsa gen-req server nopass
./easyrsa sign-req server server

生成的 server.crtserver.key 是服务端核心文件。

第四步:生成Diffie-Hellman参数(提升加密强度)

./easyrsa gen-dh

第五步:配置OpenVPN服务端
创建 /etc/openvpn/server.conf 文件,内容示例如下:

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"
keepalive 10 120
tls-auth /etc/openvpn/easy-rsa/pki/ta.key 0
cipher AES-256-CBC
auth SHA256
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3

此配置启用UDP协议、分配子网10.8.0.0/24、推送DNS和路由规则,确保客户端连接后可访问内网资源。

第六步:启动服务并配置防火墙

sudo systemctl enable openvpn@server
sudo systemctl start openvpn@server
sudo ufw allow 1194/udp

第七步:为客户端生成证书
在虚拟机中运行:

./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1

导出 client1.crtclient1.keyca.crt 到本地,组合成 .ovpn 配置文件即可使用OpenVPN客户端连接。

至此,你的虚拟机已成功部署一个安全、稳定的私有VPN服务,该方案不仅成本低廉(无需额外硬件),还能灵活扩展,适合开发者、远程办公人员或小团队快速构建专属网络隧道,记住定期更新证书和补丁,以保障长期安全性。

手把手教你搭建虚拟机中的VPN服务,从零开始的网络隔离与远程访问解决方案

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