我想创建 minecraft 服务器来与我的朋友一起玩,我需要将我的 Orange Pi 连接到 WireGuard 服务器,因为它位于 NAT 下(如果我理解正确的话)。但是当我尝试时apt install wireguard
,它还会安装 linux 内核:
orangepi@orangepi4:~$ sudo apt install wireguard
[sudo] password for orangepi:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
linux-image-5.10.0-27-rt-arm64 linux-image-rt-arm64 wireguard-tools
Suggested packages:
linux-doc-5.10 debian-kernel-handbook
Recommended packages:
firmware-linux-free apparmor
The following NEW packages will be installed:
linux-image-5.10.0-27-rt-arm64 linux-image-rt-arm64 wireguard wireguard-tools
0 upgraded, 4 newly installed, 0 to remove and 27 not upgraded.
Need to get 44.8 MB of archives.
After this operation, 252 MB of additional disk space will be used.
Do you want to continue? [Y/n] n
Abort.
orangepi@orangepi4:~$
当我第一次尝试应用 WireGuard 配置时,它说有关未知设备类型(没有确切的消息)。我搜索了一下,认为这是因为没有应用内核模块。重启后,我无法通过 SSH 连接到我的 Orange Pi。我重新安装了系统并尝试再次安装 WireGuard。现在我看到它试图安装内核 6.x,并认为这可能是 Orange Pi “死机”的原因。我发现错误/etc/apt/sources.list
并进行了更改:
-deb http://mirror.docker.ru/debian/ stable main contrib non-free-firmware
+deb http://mirror.docker.ru/debian/ bullseye main contrib non-free
我安装了 wireguard,因为看到现在它的内核版本几乎相同。但在意识到modprobe
不想应用新模块后,我删除了它。这是我安装后的内核:
orangepi@orangepi4:/boot$ dpkg --list | grep linux-image
ii linux-image-5.10.0-27-rt-arm64 5.10.205-2 arm64 Linux 5.10 for 64-bit ARMv8 machines, PREEMPT_RT (signed)
ii linux-image-current-rk3399 3.0.6 arm64 Linux kernel, version 5.10.43 # <-- that one is which I had in the start
ii linux-image-rt-arm64 5.10.205-2 arm64 Linux for 64-bit ARMv8 machines (meta-package)
orangepi@orangepi4:/boot$ sudo find /boot/ -iname "vmlinuz*"
/boot/vmlinuz-5.10.43 # <-- that one is which I had in the start
/boot/vmlinuz-5.10.0-27-rt-arm64
我认为重新启动后我的 Orange Pi 可能会再次“死机”并使用内核删除 WireGuard。
那么如何在 Orange Pi 4B 上安装 wireguard?或者我应该使用其他解决方案(例如 OpenVPN)?
以下是一些可能有用的附加信息:
orangepi@orangepi4:~$ uname -a
Linux orangepi4 5.10.43 #3.0.6 SMP Mon Aug 1 18:31:02 CST 2022 aarch64 GNU/Linux
Debian 映像:Google 云端硬盘
Orange Pi 4B 下载部分:orangepi.org
答案1
我终于解决了我的问题。首先,我尝试wireguard
忽略内核不匹配进行安装,但没有成功。我找到了 HDMI 电缆并测试了 Orange Pi 是否可以加载,或者只是网络出现问题。不幸的是,这是第一种情况。
我猜没有简单的方法可以将 WireGuard 安装到我在帖子中提供的 Debian 映像中。我想自己构建 WireGuard,但没有找到linux-headers
它的内核。所以我只是用 Armbian 映像替换了 DebianOrange Pi 4。一开始我以为它不行,因为在我看来 Orange Pi 4 不等同于 Orange Pi 4B,但出乎意料的是它确实可以!
Armbian 有一些脚本可以自动安装 wireguard(我认为那是吗?所以我运行它,同意所有问题,删除配置后,用自己的配置替换它。这是我使用的命令(所有命令都以 运行root
):
wireguard-manager
# here would be much questions to setup Orange Pi as server
wg-quick down wg0
rm -rf /etc/wireguard/clients
nano /etc/wireguard/wg0.conf
# here you should change config to your settings
wg-quick up wg0
curl ifconfig.me # to be sure your IP has been changed
我已关闭 PuTTY 日志,因此无法提供更多信息。