本文详细拆解 以太坊节点搭建 的每一步,帮助你在 3–4 小时内拥有一套可靠、无需质押 ETH 的主网节点。核心关键词已在文中自然分布,例如 以太坊节点搭建、Geth 安装、Lighthouse 共识客户端、执行客户端、同步、UJ 认证 等,兼顾搜索流量与技术深度。
章节速览
- 准备:硬件与系统
- 初始化:服务器环境配置
- 安装:Geth 与 Lighthouse
- 启动:JWT 认证+节点运行
- 监控:同步状态与常见问题
- 快速 FAQ
硬件与系统要求
- CPU:4 核以上(推荐快速多核)
- 内存:≥ 16 GB(8 GB 勉强能跑,16 GB 以上更稳)
- 硬盘:≥ 1 TB NVMe SSD(主网目前 > 700 GB,每季度递增)
- 带宽:25 Mbps+ 上行,保证 200–300 个对等节点
- 系统:Ubuntu 22.04 LTS(CentOS/RHEL 亦可)
本文示范机:
16 核 CPU / 128 GB DDR5 ECC / 2×1.92 TB NVMe / 1 Gbps / Ubuntu 22.04。
一、服务器基础环境
# 更新系统
sudo apt update && sudo apt dist-upgrade -y
# 必备工具
sudo apt install wget git vim unzip screen gcc automake autoconf libtool make liblz4-tool aria2 -y二、创建存储目录结构
sudo mkdir -p /eth/{geth,lighthouse,data}
cd /eth关键词:以太坊节点搭建、目录结构 一并融入。
三、安装 Geth 执行客户端
- 下载并解压
wget https://gethstore.blob.core.windows.net/builds/geth-linux-amd64-1.12.0-e501b3b0.tar.gz
tar -zxvf geth-linux-amd64-1.12.0-e501b3b0.tar.gz
sudo mv geth-linux-amd64-1.12.0-e501b3b0 geth
rm geth-linux-amd64-1.12.0-e501b3b0.tar.gz- 添加环境变量
echo 'export PATH=/eth/geth:$PATH' | sudo tee -a /etc/profile
source /etc/profile验证:
geth version四、安装 Lighthouse 共识客户端
cd /eth
wget https://github.com/sigp/lighthouse/releases/download/v4.2.0/lighthouse-v4.2.0-x86_64-unknown-linux-gnu.tar.gz
tar -zxvf lighthouse-v4.2.0-x86_64-unknown-linux-gnu.tar.gz
rm lighthouse-*.tar.gz
echo 'export PATH=/eth:$PATH' | sudo tee -a /etc/profile
source /etc/profile
lighthouse --version五、配置 JWT 认证
节点互通需 UJ 认证:
sudo mkdir -p /secrets
openssl rand -hex 32 | sudo tee /secrets/jwt.hex > /dev/null
sudo chmod 600 /secrets/jwt.hex六、启动节点全流程
1. 启动 Geth(执行客户端)
建议使用 screen 或多重终端,命令一次即可:
screen -S geth
geth --cache 32768 \
--datadir /eth/data \
--http --http.addr 0.0.0.0 --http.api "eth,net,engine,web3" \
--ws --ws.api "eth,net,engine,web3" \
--authrpc.addr 0.0.0.0 --authrpc.port 8551 \
--authrpc.jwtsecret /secrets/jwt.hex \
--maxpeers 2000快照同步模式 = 更快上线,3–4 小时即可追上主网最新高度。
2. 启动 Lighthouse(共识客户端)
开第 2 个 screen:
screen -S lighthouse
lighthouse bn \
--network mainnet \
--execution-endpoint http://127.0.0.1:8551 \
--execution-jwt /secrets/jwt.hex \
--checkpoint-sync-url https://sync-mainnet.beaconcha.in \
--disable-deposit-contract-sync \
--http参数速读:
--execution-endpoint:指向上一步的 Geth 引擎 API。--checkpoint-sync-url:官方社区公共检查点,15 分钟检索 共识状态。--disable-deposit-contract-sync:本节点不跑验证器,关闭合约同步,减少 30 % 带宽。
👉 想知道如何让节点 24×7 低延迟高安全?这份监控清单教你万无一失。
七、实时监控与优化
Geth 调试模式:
geth attach http://127.0.0.1:8545常用命令:
eth.syncing // 输出同步信息
net.peerCount // 当前对等节点数
eth.blockNumber // 返回已同步区块高度同步完成时 eth.syncing 返回 false,eth.blockNumber 与 主网最新高度 一致。
遇到日志卡 0 是正常现象(快速对齐区块头)。
可拉起 Prometheus + Grafana 面板,实时观测 执行客户端 与 共识客户端 的磁盘/内存与网络指标。
快速 FAQ
Q1:是否必须质押 32 ETH?
A:本教程为 观测节点 或 RPC 服务节点,无需质押。
Q2:快照是否安全可靠?
A:快照来自官方与社区 CDN,最终状态由 Beacon 链 + Execution 链 双重 Merkle 根校验,可 100 % 验证。
Q3:磁盘快满了怎么办?
A:Geth 支持 --state.scheme path、--syncmode snap 以及区块裁剪参数,可释放 30–40 % 空间;同时定期跑 geth snapshot prune-state。
Q4:Windows 可行吗?
A:可行,但建议使用 WSL2 + Ubuntu 子系统,性能与原生 Linux 相差 < 5 %。
Q5:节点失联、对等节点减少?
A:检查防火墙端口 30303 / 9000 是否开放,IPv6 禁用后部分运营商更稳。
👉 立即获取一键端口检查脚本,30 秒解决网络瓶颈。
Q6:能否一键升级?
A:使用官方提供的静态二进制(如上步骤下载地址),直接覆盖旧文件即可,配置文件保持不变。
结语
至此,一套 以太坊节点搭建 Geth + Lighthouse 组合已在线运行。它不仅支持你自己的 DApp、钱包或浏览器查询,还可作为无私钥的 公共 RPC 终点,为 Web3 生态添砖加瓦。祝你成为网络最前沿的 执行层 与 共识层 运营者!