在 Proxmox VE 上安装和配置 OpenWrt VM
在本文中,我们将介绍在 Proxmox 虚拟环境中安装 OpenWrt。 OpenWrt 可以安装在普通 PC、虚拟机或服务器硬件上,并享受 x86 (Intel/AMD) 架构所能提供的强大功能。 OpenWrt 项目基于 Linux 操作系统,旨在适应嵌入式设备中路由流量的应用程序。此外,OpenWrt 提供了一个完全可写的文件系统,具有包管理功能,可以释放集成的力量。
OpenWrt 可用于各种功能,例如:
- 配置您的私人 VPN 服务器或客户端
- 设置动态 DNS
- 增强您的网络安全
- 提高多设备网络的整体性能
- 在路由器设备内运行 BitTorrent 客户端
- 通过连接到 OpenWrt 路由器的外部存储驱动器在设备之间共享文件
- 使用 OpenWrt 创建可以从 LAN 访问的网络打印机
- 对网络中的特定设备执行带宽限制
- 用于实时网络监控
1.下载OpenWrt镜像进行安装
我们将在 Proxmox 虚拟环境上安装 OpenWRT。但首先我们需要下载适用于我们的 CPU 架构的最新映像文件。我在 x86_64 上。
获取最新版本标签。您应该在 Proxmox 服务器中运行命令。
VER=$(curl --silent "https://api.github.com/repos/openwrt/openwrt/releases/latest";|grep '"tag_name"'|sed -E 's/.*"([^"]+)".*/\1/'|sed 's/v//')
将最新的 OpenWRT 映像文件下载到您的 Proxmox 服务器路径中。
wget -O openwrt.img.gz https://downloads.openwrt.org/releases/$VER/targets/x86/64/openwrt-$VER-x86-64-generic-ext4-combined.img.gz
该文件实际上很小,如下所示。
$ du -sh openwrt.img.gz
11M openwrt.img.gz
解压下载的存档以获取原始图像文件
$ gunzip ./openwrt.img.gz
gzip: ./openwrt.img.gz: decompression OK, trailing garbage ignored
让我们将原始磁盘的大小增加到 5GB。
$ qemu-img resize -f raw ./openwrt.img 5G
Image resized.
2.在Proxmox VE上创建OpenWrt虚拟机
登录到 Proxmox VE shell 并设置创建虚拟机所需的变量。
VM_NAME=OpenWrt
VM_ID=$(pvesh get /cluster/nextid)
RAM=2048
CORES=1
BRIDGE=vmbr0
IMAGE=./openwrt.img
然后使用 qm
命令行工具创建虚拟机。
qm create --name $VM_NAME \
$VM_ID --memory $RAM \
--cores $CORES --cpu cputype=kvm64 \
--net0 virtio,bridge=$BRIDGE \
--scsihw virtio-scsi-pci --numa 1
您可以使用以下命令列出可用的存储域:
# pvesm status
Name Type Status Total Used Available %
local dir active 772966856 53281488 680347384 6.89%
在STORAGE变量中设置存储值。
STORAGE=local
接下来我们将镜像导入到虚拟机的磁盘中。
# qm importdisk $VM_ID $IMAGE $STORAGE
...
transferred 3.0 GiB of 5.0 GiB (59.75%)
transferred 3.1 GiB of 5.0 GiB (61.41%)
transferred 3.2 GiB of 5.0 GiB (63.07%)
transferred 3.2 GiB of 5.0 GiB (64.73%)
transferred 3.3 GiB of 5.0 GiB (66.39%)
transferred 3.4 GiB of 5.0 GiB (68.05%)
transferred 3.5 GiB of 5.0 GiB (69.71%)
transferred 3.6 GiB of 5.0 GiB (71.37%)
transferred 3.7 GiB of 5.0 GiB (73.03%)
transferred 3.7 GiB of 5.0 GiB (74.69%)
transferred 3.8 GiB of 5.0 GiB (76.35%)
transferred 3.9 GiB of 5.0 GiB (78.01%)
transferred 4.0 GiB of 5.0 GiB (79.67%)
transferred 4.1 GiB of 5.0 GiB (81.33%)
transferred 4.1 GiB of 5.0 GiB (82.99%)
transferred 4.2 GiB of 5.0 GiB (84.65%)
transferred 4.3 GiB of 5.0 GiB (86.31%)
transferred 4.4 GiB of 5.0 GiB (87.97%)
transferred 4.5 GiB of 5.0 GiB (89.63%)
transferred 4.6 GiB of 5.0 GiB (91.29%)
transferred 4.6 GiB of 5.0 GiB (92.95%)
transferred 4.7 GiB of 5.0 GiB (94.61%)
transferred 4.8 GiB of 5.0 GiB (96.27%)
transferred 4.9 GiB of 5.0 GiB (97.93%)
transferred 5.0 GiB of 5.0 GiB (99.59%)
transferred 5.0 GiB of 5.0 GiB (100.00%)
transferred 5.0 GiB of 5.0 GiB (100.00%)
Successfully imported disk as 'unused0:local:102/vm-102-disk-0.raw'
导入后,磁盘未连接到虚拟机。运行以下命令来附加它。
# qm set $VM_ID --scsihw virtio-scsi-pci --virtio0 $STORAGE:$VM_ID/vm-$VM_ID-disk-0.raw
update VM 102: -scsihw virtio-scsi-pci -virtio0 local:102/vm-102-disk-0.raw
设置串行控制台和启动顺序优先级。
qm set $VM_ID --serial0 socket --vga serial0
qm set $VM_ID --boot c --bootdisk virtio0
将实例配置为在系统启动时启动。
qm set $VM_ID --onboot 1
3.访问OpenWrt虚拟机控制台
单击 Proxmox 中的实例名称并从控制台启动虚拟机。
一旦启动,它将落入外壳中。
使用 passwd
命令设置新的 root 密码。
passwd
如屏幕截图所示。
要列出当前网络信息,请运行:
uci show network
要在虚拟机中设置静态 IP 信息,请编辑网络配置文件。
# vim /etc/config/dhcp
您可以编辑该文件并设置静态 IP 地址、网络掩码和网关。
重新启动网络服务以使更改生效。
service network restart
或者直接用脚本执行。
/etc/init.d/network restart
当实例连接到互联网后,您可以更新系统包索引。
opkg update
要安装包,请使用;
opkg install <package-name>
4. 访问OpenWrt Web界面
启动您的网络浏览器并输入 OpenWrt IP 地址。使用之前设置的用户名root和密码登录。
您将可以访问 OpenWrt Web 管理仪表板,您可以在其中执行许多配置。
结论
OpenWrt 是一种高度可扩展且灵活的解决方案,可在嵌入式设备中运行并作为路由器运行。它是网络和系统爱好者中流行的解决方案,他们希望完全控制其网络硬件和设计。在我们以后的文章中,我们将提供有关 OpenWrt 使用的更深入的指南。保持联系并保重!
更新于:4个月前