项目说明:本篇文章介绍利用PiVPN快速搭建OpenVPN和WireGuardVPN实现移动办公,或者分支互联。
一、项目准备
1.1、VMware ESXi
-
VMware vSphere Hypervisor (ESXi) 8.0U2: ESXi 是 VMware 的虚拟化操作系统,用于在物理服务器上运行虚拟机。它是构建 VMware 虚拟化平台的关键组件。
-
VMware vCenter Server 8.0U2a: vCenter Server 是用于集中管理和监控虚拟化基础设施的中心化管理平台。它可以帮助您管理多个 ESXi 主机和虚拟机。
-
VMware vSphere Replication 8.8.0.2: vSphere Replication 是一种灾难恢复解决方案,可实现虚拟机级别的复制和备份。
-
VMware Aria Automation Orchestrator 8.14.1: Automation Orchestrator 是用于自动化 IT 运维工作流程的工具,使您能够创建、管理和执行自动化任务。
-
VMware NSX 4.1.2.1 For vShield Endpoint: NSX 是软件定义网络(SDN)平台,为虚拟化环境提供网络虚拟化和安全性功能。
-
VMware Tools 12.3.5: VMware Tools 是安装在虚拟机中的增强工具,提供了增强的性能、协作和管理功能。
1.2、Ubuntu镜像
- arm64: 这是针对 64 位 ARM 架构的镜像。ARM 是一种流行的处理器架构,在许多嵌入式设备、移动设备和单板计算机中使用,例如 Raspberry Pi 和某些 Android 设备。
- ppc64el: 这是 PowerPC 64 位架构(ppc64le)的镜像。PowerPC 架构曾用于苹果 Macintosh 计算机和某些服务器,ppc64el 则是用于支持低端序(little-endian)的 64 位 PowerPC 架构。
- s390x: 这是针对 IBM 的 System z 架构的镜像。System z 是用于大型企业的主机和服务器架构,s390x 是其 64 位版本。
1.3、Debian镜像
- Cinnamon: 这是一种由 Linux Mint 开发的桌面环境,基于 GNOME 3,提供直观的用户界面和现代化的体验。
- GNOME: 这是一个流行的桌面环境,具有现代化、简洁和用户友好的界面,适合寻求简单和美观的用户。
- KDE: 这是一个称为 KDE Plasma 的桌面环境,提供高度可定制性和功能丰富的体验。它通常被认为是功能强大且外观漂亮的桌面环境。
- LXDE: 这是一个轻量级的桌面环境,注重性能和资源使用效率,适合旧设备或对系统资源要求较低的用户。
- MATE: 这是一个由 GNOME 2 衍生出来的桌面环境,保留了传统的桌面设计风格,并提供了一些现代特性。
- Standard: 这通常是指基本的 Debian 安装,没有特定的桌面环境,默认使用基本的命令行终端。
- Xfce: 这是一个轻量级但功能齐全的桌面环境,注重性能和资源利用率,同时提供良好的用户体验。
1.4、PiVPN官网
1.5、OpenVPN官网
1.6、WireGuard官网
1.7、SSH工具
1.7.1、MobaXterm激活
二、部署Ubuntu
Ubuntu系统在VMware ESXi中安装设置请参考 Ubuntu搭建OpenVPN配置分流规则指南!第二步)
三、安装PiVPN+OpenVPN
3.1、PiVPN之OpenVPN
mkdir pivpn && cd pivpn
curl -L https://install.pivpn.io | bash
3.2、OpenVPN服务端配置优化
ip addr
nano /etc/openvpn/server.conf
server 100.255.255.0 255.255.255.0
systemctl restart openvpn@server.service
ip addr
3.3、创建客户端配置文件
pivpn add
3.4、修改配置文件
nano /home/openvpn/ovpns/pi-ovpn.ovpn
3.5、MobaXterm左侧下载
3.6、OpenVPN连接测试
四、安装PiVPN+WireGuard
4.1、PiVPN之WireGuard
sudo adduser wireguard
4.2、重新运行PiVPN
curl -L https://install.pivpn.io | bash
4.3、重启进入
ip addr
4.4、修改wg0网卡ip
nano /etc/wireguard/wg0.conf
4.5、重启服务
systemctl restart wg-quick@wg0.service
4.6、查看服务
systemctl status wg-quick@wg0.service
4.7、查看wg0网卡IP
ip addr
4.8、创建WireGuard客户端
pivpn wg -a -n wg0-client
4.9、查看客户端配置
cat /home/wireguard/configs/wg0-client.conf
4.10、MobaXterm左侧下载
4.11、测试连接
五、开启上网
5.1、开启路由转发
-
临时开启路由转发:
这会立即在系统中启用路由转发,但重启后会失效。sudo sysctl -w net.ipv4.ip_forward=1
-
永久开启路由转发:
这会使系统在每次启动时都启用路由转发。- 编辑
/etc/sysctl.conf
文件:sudo nano /etc/sysctl.conf
- 在文件中找到并取消注释以下行(如果不存在,则添加):
net.ipv4.ip_forward=1
- 保存并关闭文件,然后重新加载配置:
sudo sysctl -p
- 编辑
5.2、配置iptables
iptables -I INPUT -p tcp --dport 1194 -m comment --comment "openvpn" -j ACCEPT
iptables -t nat -A POSTROUTING -s 100.255.255.0/24 -j MASQUERADE
iptables -I INPUT -p udp --dport 51820 -m comment --comment "wireguard" -j ACCEPT
iptables -t nat -A POSTROUTING -s 100.255.254.0/24 -j MASQUERADE
5.3、安装iptables-persistent
sudo apt-get install -y iptables-persistent
sudo service netfilter-persistent save
5.4、关闭防火墙
ufw disable
5.5、重启WireGuard
systemctl restart wg-quick@wg0.service
5.6、重启OpenVPN
systemctl restart openvpn@server.service
5.7、客户端测试