雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

在 Proxmox VE 上安装和配置 OpenWrt VM

2024-07-11 39

在本文中,我们将介绍在 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 使用的更深入的指南。保持联系并保重!


更新于:2个月前
赞一波!3

文章评论

全部评论