Nostr public key:npub17ahz4xa3hvkvvhh4wguzzqknp8p7l5nyzzqc3z53uq538r5qgn0q40z7pw
本方案通过在 VMware 虚拟机中安装 UmbrelOS,实现比特币全节点与 Nostr-Relay 的安装和运行。由于这两个组件均需要通过魔法网络操作,达哥特地将已安装相关组件的 UmbrelOS 镜像分享给大家,以便更多朋友能在自己的电脑上运行比特币全节点。以下是详细的图文教程。
PC硬件要求
CPU:x86架构,8核及以上
内存:≥8G(越大越好)
硬盘剩余空间:≥500G(越大越好)
一、下载软件:
1、从网盘下载以下文件:
https://pan.baidu.com/s/1mStbBH-6qp3wMh7fk8oTPQ?pwd=hjzt
2、解压缩 达哥的虚拟机镜像.rar
二、安装vmware
1、安装 VMware Workstation
运行VMware-Workstation-Lite-17.0.2-21581411-精简安装注册版.exe
全程选择默认设置,依次点击“下一步”完成安装。
2、导入虚拟机镜像
打开 VMware Workstation,选择 打开虚拟机,导入达哥提供的 UmbrelOS 虚拟机镜像。
为虚拟机命名(名称随意),并将其存放在硬盘空间充足(大于 500G)的分区,注意路径需使用全英文字符。
3、耐心等待虚拟机导入完成后,点击编辑虚拟机设置,视情况重新分配内存大小,建议尽量分配6G以上。默认是16G。
4、视实际情况修改完内存和处理器后,运行该虚拟机。
如果出现以下界面,且前端有红色的 *** 滚动提示,请直接选择 电源 -> 重新启动计算机。
5、虚拟机启动成功标志
当系统界面显示类似如下的提示时,说明虚拟机已成功启动。
三、访问Umbrel平台
打开浏览器,访问虚拟机启动界面显示的 IP 地址,例如 http://192.168.112.134(请以实际显示的地址为准)。
默认登录用户名和密码为 btcdage,可在平台内自行修改用户名与密码。
平台内已经安装好了比特币全节点软件和nostr中继器软件。
四、运行比特币全节点
点击平台中的 Bitcoin Node 图标进入全节点界面。
系统首次启动时需要连接其他节点并同步区块。没有魔法网络时可能需要耐心等待。
等待数分钟左右之后,节点会开始自动同步区块。
同步过程时间长短与硬盘性能和网络情况有关。
使用魔法网络和 SSD 硬盘时,可能在 24 小时内完成同步。在普通硬盘和非魔法网络环境下,同步可能需要数日甚至更久。
五、运行 Nostr 中继器
在平台首页点击 Nostr Relay 进入中继器组件。
中继器的连接地址显示在界面右上方,可直接配置到 Nostr 客户端中。
以后发帖或者广播时会把信息一并提交到这个中继。
六、端口映射配置方案
在运行比特币全节点和 Nostr 中继器时,如果你有公网IP,想在互联网访问自己的全节点和中继器,那么端口映射是关键配置,以下是两者的默认端口及映射建议:
由于我们的虚拟机网络配置为使用 NAT 网络模式,公网 IP 无法直接访问虚拟机。因此我们需要先使用 netsh 命令将宿主机端口映射到虚拟机。再通过路由器或其他网络工具,将公网 IP 的端口映射到宿主机对应的端口。
以下是详细配置步骤:
- 比特币全节点端口映射方案
默认端口:
网络通信端口:8333(用于与其他比特币节点通信)
配置建议:
在宿主机上,将 8333 端口转发到虚拟机的 8333 端口。
在路由器上,将公网 8333 端口映射到宿主机的 8333 端口。
- Nostr 中继器端口映射方案
默认端口:4848
配置建议:
在宿主机上,将 4848 端口转发到虚拟机的 4848 端口。
在路由器上,将公网 443 端口映射到宿主机的 4848 端口,以便外部设备通过 HTTPS 访问中继器服务。
- 宿主机到虚拟机端口映射(netsh 配置)
在宿主机上执行以下命令,将特定端口转发到虚拟机:
先查看虚拟机在启动完毕后显示的IP地址,比如:192.168.112.134。
在宿主机命令行中以管理员身份运行以下命令:
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8333 connectaddress=192.168.112.134 connectport=8333
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=4848 connectaddress=192.168.112.134 connectport=4848
使用以下命令查看当前端口转发规则:
netsh interface portproxy show v4tov4
防火墙规则设置:
确保宿主机防火墙允许 8333 和 4848 端口的入站流量:
netsh advfirewall firewall add rule name=”Bitcoin Node” dir=in action=allow protocol=TCP localport=8333
netsh advfirewall firewall add rule name=”Nostr Relay” dir=in action=allow protocol=TCP localport=4848
- 公网到宿主机端口映射
在路由器管理页面配置端口转发规则:
公网 8333 -> 宿主机 8333
公网 443 -> 宿主机 4848
- 使用内网穿透工具(可选)
如果没有公网 IP,可使用 Frp 或 Ngrok 等工具完成端口转发:
示例 Frp 配置:
[bitcoin-node]
type = tcp
local_ip = 127.0.0.1
local_port = 8333
remote_port = 8333
[nostr-relay]
type = tcp
local_ip = 127.0.0.1
local_port = 4848
remote_port = 443
完成以上配置后,您的比特币全节点和 Nostr 中继器服务即可通过公网访问。
通过以上教程,您已经能够成功配置比特币全节点与 Nostr 中继器。祝您体验愉快!
Btcdage
2024.12.03