简介:面向零基础用户的以太坊节点搭建指南,专注于在云服务器上部署属于自己的ETH中转节点,并实现抽水功能。文档从minerProxy软件下载与运行讲起,覆盖首次启动自动生成config.yml、后台WEB端登录、新建端口并配置中转或抽水比例、SSL协议连接注意事项,以及云服务器安全组端口放行等关键环节;对于每个配置项的含义、不同内核软件的SSL链接格式差异也做了说明,帮助读者避开常见的连接失败问题。资源为单个docx格式文档,压缩包大小265KB,内容按操作顺序组织,配有阿里云服务器选购入口与Windows系统运行说明,既适合完全没有接触过节点搭建的入门用户,也可作为日常运维时的速查手册。目前已有一千余人学习下载,整体步骤清晰、篇幅紧凑,按文档操作即可快速完成属于自己的中转抽水节点。 做矿场运维这些年,被问得最多的一个问题就是:能不能自己搭一个ETH中转节点?问的人里面,有刚入场的矿工,也有管着几百台机器的大矿主。大家想要的其实很简单——让矿机连得更稳、延迟更低,最好节点还能带抽水功能,把该收的手续费收上来。这篇博文就围绕:ETH中转节点、抽水功能、零基础搭建这三个关键词,拆解一套适合从零起步的方案。不管你是想优化自家矿机连接,还是想给矿场做统一接入管理,都可以照着思路落地。
相关服务:新加坡高防服务器租用
先说明一点:现在以太坊已经转为权益证明,传统PoW挖矿的币种主要是ETC等。不过ETC、RVN等币种在矿池协议上继续沿用ETH时代的Stratum协议,所以“ETH中转节点”这套玩法完全通用。下面所有步骤,换成ETC或者其他显卡币矿池,只需要改端口和地址,原理不变。
1. 中转节点是什么,为什么要自己搭
1.1 从直连矿池到中转节点
矿机默认的工作方式,是直接连到矿池服务器。比如你打开矿机后台,填写 asia2.ethermine.org:4444 ,矿机就会和这个地址建立TCP连接,然后不停地提交算力、接收任务。
直连最大的问题是网络不可控。你矿机在香港机房,矿池服务器在欧美,跨海光缆一抖动,延迟直接飙到两三百毫秒。挖矿协议里,延迟越高,无效份额越多,算力损耗肉眼可见。更麻烦的是,矿池偶尔会重启、维护,或者主动断掉你这个IP的连接,矿机就得反复重连,每次重连都会有几十秒甚至几分钟的算力空窗。
中转节点就是在矿机和矿池之间加一层代理。矿机只连你的节点,节点再和真正的矿池保持长连接。这样做有三个明显好处:
- 矿池到节点之间的连接是长连接,不会因为矿机掉线而断开,矿机重新上线后能秒回原有会话。
- 节点可以放在离矿池近的机房,延迟从“矿机到矿池”变成“矿机到节点”“节点到矿池”两段,综合延迟更容易控制。
- 所有矿机统一连接到一个地址,方便你在节点上做监控、限速、动态切换矿池,也方便集中管理。
所以中转节点不是“花架子”,它是矿场降本增效很实用的一层基础设施。
1.2 自建节点和第三方中转怎么选
市场上有很多付费中转服务,按算力比例收费,号称“零延迟、不掉线”。我个人的建议是:如果你手里矿机超过二十台,或者已经形成一个小型矿场,一定要自建节点,别长期用第三方。
第三方中转有几个天然短板:
- 你没法看到对方后台,不知道它到底抽了多少水。
- 节点一旦跑路,最直接的后果就是矿机全部断连,损失算力。
- 第三方服务器上可能有多个用户共用,安全性和稳定性没有保障。
自建节点的优势在于:所有数据都在自己手里,抽水规则由自己定义,矿机接入情况一目了然。更重要的是,你可以在节点层面统一设置钱包地址,矿机出问题时能快速切换矿池。缺点是前期需要花点时间配置,还需要一台公网服务器。后面这套步骤,就是冲着“零基础也能搞定”去写的。
提示:如果你只是三五台矿机的家庭作坊,直接连矿池或者用免费中转更省事。自建节点的成本分摊到矿机数量上,才显得划算。
2. 搭建前的准备工作
2.1 服务器和配置选型
搭建中转节点,需要一台有公网IP的云服务器。选配时不用贪高,关键看两点:带宽和稳定性。
我自己在用的配置是2核CPU、4G内存、30G SSD硬盘,带宽跑满50Mbps,系统用的Ubuntu 22.04 LTS。这套配置带几百台矿机的连接没什么问题。中转节点的瓶颈通常不在CPU和内存,而在带宽和TCP连接数。如果你矿机数量上千,就把带宽升级到100Mbps以上,内存加到8G更稳妥。
机房位置的选择也很有讲究。节点负载是“矿机到节点”和“节点到矿池”两段。所以服务器尽量选在离矿机集群近的位置,同时又能顺畅访问目标矿池。国内用户的话,香港和新加坡机房是热门选择;如果你的矿机在海外,就选矿机附近的机房。别为了省钱选个偏僻区域,延迟上去以后,省下的服务器费用还不够填算力损失。
2.2 端口、域名与常用工具
端口规划是整个搭建过程中最容易被忽略的一步。中转节点需要对外暴露一个TCP端口,矿机通过这个端口接入。常见矿池端口如下:
| 币种/矿池 | 常见端口 |
|---|---|
| Ethermine(ETC) | 4444、14444 |
| F2Pool(ETC) | 8118、8018 |
| 自定义端口 | 3000-9999 任意未占用端口 |
端口原则上可以随便选,但要注意:不要用22端口做矿机接入,否则和SSH管理端口冲突,安全隐患很大。建议把中转监听端口设置为类似 18000 这样的高位端口,好记又不容易被扫描工具盯上。
域名这步可做可不做。用IP也能连,但矿机很多时候要重填地址,记住一长串IP没有记域名方便。我习惯给节点配一个子域名,比如 pool.myfarm.com ,解析到服务器IP,这样即使以后换服务器,只要改解析记录就行,矿机端不用动。
部署工具方面,最简单的方案是使用通用端口转发工具 gost 。它支持TCP端口转发、TLS加密、负载均衡,配置起来不复杂。有人问为什么不直接用 iptables 转发?因为 iptables 无法实现连接复用和动态切换矿池,灵活性不够;用 gost 这类应用层工具,后续改动配置更优雅。
3. 快速搭建流程
3.1 服务器初始化和安全项
服务器买回来后,先别急着配中转,把基础环境收拾干净,能省掉后面一堆麻烦。
第一步,用 root 账号SSH登录服务器,更新系统软件包:
apt update && apt upgrade -y
第二步,创建普通用户,避免长期使用root操作。这个用户用来登录和管理节点:
adduser miner
usermod -aG sudo miner
第三步,配置SSH密钥登录。在本地电脑生成一对密钥,然后把公钥写到服务器的 ~/.ssh/authorized_keys 里。这样比密码登录安全得多,基本不怕暴力破解。
第四步,开启防火墙,只放行必要端口。以Ubuntu自带的 ufw 为例:
ufw allow 22/tcp
ufw allow 18000/tcp
ufw enable
这一步很多人偷懒,直接把防火墙关了,结果服务器没跑两天就被入侵变成肉鸡。中转节点上跑的是真金白银的算力流量,安全必须从第一步就拉满。
3.2 用 gost 完成最简单的端口中转
初始化完成后,开始部署 gost 。先从GitHub下载最新版本到服务器,并解压到指定目录。为了照顾零基础读者,我把完整操作路径写出来:
cd /opt
wget https://github.com/ginuerzh/gost/releases/download/v2.11.5/gost_2.11.5_linux_amd64.tar.gz
tar -zxvf gost_2.11.5_linux_amd64.tar.gz
mv gost /usr/local/bin/
chmod +x /usr/local/bin/gost
然后启动一个最基础的TCP转发命令。比如把服务器的 18000 端口,转发到Ethermine矿池的 asia2.ethermine.org:4444 :
gost -L tcp://:18000/asia2.ethermine.org:4444
启动后,矿机后台的矿池地址直接填 你的服务器IP:18000 ,钱包地址不变。矿机连接后,流量就会经过服务器转发到真实矿池。这个过程中,矿机以为是直接连了矿池,矿池也只会看到一个来自服务器IP的正常连接。
如果你想同时转发多个矿池端口,比如一个连ETH主矿池,一个连备用矿池,可以多开几个监听端口。gost支持多组转发,比如:
gost -L tcp://:18001/asia2.ethermine.org:4444 -L tcp://:18002/etc-pool.f2pool.com:8118
这样就能实现多矿池备用,矿机断线时手动切换端口即可。
注意:直接用命令行启动的进程,在SSH断开后就会停止。生产环境务必用systemd把gost做成守护进程,见下一节。
3.3 systemd 守护进程
手工启动的方式只适合临时验证。为了让节点在服务器重启后能自动拉起,我用systemd来管理。在 /etc/systemd/system/ 下新建一个服务文件:
vim /etc/systemd/system/gost.service
写入下面这个最小配置:
[Unit]
Description=Gost ETH Relay
After=network.target
[Service]
ExecStart=/usr/local/bin/gost -L tcp://:18000/asia2.ethermine.org:4444
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target
保存后,执行:
systemctl daemon-reload
systemctl enable gost
systemctl start gost
这样节点就进入常驻状态了。查看运行日志用 journalctl -u gost -f ,停止服务用 systemctl stop gost ,比手动杀进程干净得多。
跑完这步,一个“最小可用”的中转节点已经上线:矿机能连、流量能转、重启能自动恢复。但如果你只做到这一步,那它还不带抽水功能。接下来讲抽水部分。
4. 配置抽水功能的合规姿势
4.1 抽水的实现原理
“抽水”在技术上的本质是份额替换。挖矿时,每台矿机都会持续向矿池提交算力份额,这些份额最终会和矿机绑定钱包地址挂钩。开启抽水功能后,中转程序会在转发过程中,按你设置的比例,把一部分份额替换成你指定的收益地址,再提交给矿池。矿池看到这类份额,就把对应收益记到你的地址下。
举个例子:你给节点设置了1%抽水,矿机提交的每100份有效份额中,节点会把其中1份替换成你的收费地址。从矿机角度看,它确实在正常挖矿;从矿池角度看,这1%的份额属于你的钱包。最终结果就是矿机实际到账收益减少了1%,而这1%进了你的口袋。
这个机制本身是中性的。矿场主对自己名下的矿机设置抽水比例,等于直接从产出的收益里扣除电费和维护费,省得每台矿机单独结算。很多自建节点的矿场都在这么玩。前提是:矿机必须是自有或经授权的,抽水规则要透明。如果未经矿工同意,偷偷抽取别人矿机的收益,那就是盗窃行为,不仅会砸了自己的信誉,还可能面临法律追责。
4.2 如何透明地设置服务费率
了解了原理后,怎么落地?目前社区里有很多开源的中转程序,比如 MinerProxy 、 EthMinerProxy 等,它们都带抽水配置项。因为这类程序更新很快,配置格式差异也大,我这里不给具体软件包,只讲通用的设计思路。
大多数抽水配置都会包含以下几个关键字段:
| 配置项 | 作用 |
|---|---|
| 上游矿池地址 | 真实矿池的域名和端口 |
| 监听端口 | 矿机接入的端口 |
| 抽水比例 | 例如0.01代表1% |
| 抽水钱包地址 | 手续费收益地址 |
| 抽水矿池地址 | 手续费份额提交到哪个矿池 |
实际配置时,我建议把抽水比例默认设为 0 ,也就是先纯转发跑几天。等确认节点稳定、算力统计和矿池后台对得上之后,再从 0.005 (千分之五)开始调。这样能避免因为网络抖动导致“多抽”,也方便你比对抽水前后矿池后台的算力变化,确保比例计算准确。
另外,如果这个节点同时服务别人的矿机,一定要把抽水规则写明。可以在接入文档里直接写清楚:“本节点服务费为1%,按矿池有效份额扣除。”让矿工知情并同意,这是最稳妥的做法。遮遮掩掩的收费方式,短期能占到便宜,长期一定会被用户用脚投票淘汰。
提示:抽水比例不是越高越好。抽水过高会导致矿机端收益明显下降,矿工发现后立刻跑路。矿场中转节点的合理抽水范围一般在0.5%到2%之间,既能覆盖运营成本,又不会让矿工觉得肉疼。
5. 常见问题排查与避坑
5.1 算力为什么变低了
搭好节点后,最常遇到的就是矿池后台显示算力比原来低。遇到这种问题,先别急着怀疑抽水设置。排查顺序应该是:
- 检查节点与矿池之间的延迟。用
ping和tcping测一下服务器到矿池的连通性,如果延迟超过100ms,就需要换一个更靠近矿池的机房。 - 检查矿机到节点之间的延迟。如果矿机在本地网络环境,节点距离太远,同样会增加无效份额。
- 确认抽水比例是否设置正确。有时候不是抽水功能在运行,而是矿机提交的份额本身就有一部分无效,跟抽水无关。
我曾经踩过一个坑:节点配置了1%抽水,但矿池后台显示的算力却下降了5%。排查半天发现,是矿机连接时使用了备用的备用端口,而那个端口的抽水配置写错了,把比例误设成5%。所以每次改完配置,一定要去矿池后台核对“服务器算力”和“钱包算力”的差值,确保只少了预期的比例。
5.2 连接频繁断开怎么查
矿机老是“掉线重连”,大多不是节点软件问题,而是网络链路问题。常见原因有三个:
- 服务器带宽被打满。矿机数量多、流量大,如果带宽不足,连接会被强行丢弃。
- UDP和TCP握手失败。部分云服务商默认屏蔽了国外矿池的IP段,导致转发出去的数据包被丢弃。
- 防火墙规则太严格。有些内存优化脚本会顺手关闭TIME_WAIT连接,导致代理频繁重建会话。
排查时,先看 journalctl -u gost -f 日志里有没有大量 connection reset 。如果有,再测服务器到矿池的链路质量,用 tcping 连续测试50次,丢包率超过1%就说明链路不稳定。解决方法是换机房,或者给gost加上TLS加密模式,这样能有效绕过一些TCP层的限制。
5.3 抽水设置的法律边界
最后再强调一遍:抽水功能可以用于自有矿机管理,但绝不能用它来偷别人的算力。实际操作中,给外部矿工提供中转服务时,务必做到两点:一是接入前让矿工知晓费率,最好有书面或聊天记录确认;二是定期提供收益明细,证明抽水比例和矿池后台统计一致。
如果你没有权限使用某台矿机,却在节点后台私自给它拔了一部分算力,这在很多司法管辖区都构成计算机信息系统入侵或盗窃罪。千万别因为短期利益,给自己挖一个更大的坑。
我个人在搭建节点时有一个习惯:先把抽水比例设为0,跑满一个月,把所有矿机的收益曲线、矿池后台数据都留底。之后如果需要收费,再通过文档和公告形式通知,而不是直接在后台改抽水比例。这样既保护了用户的信任,也让自己的节点运营长期走得稳健。最后再分享一个小技巧:中转节点记得开启流量监控。用 nload 或 iftop 盯住实时带宽,一旦流量曲线异常飙升,赶紧检查是不是有矿机在恶意刷连接,节点扛不住DDoS很容易被打瘫痪。节点这东西,跑起来容易,稳下来才见功力。