如何设置并使用xmrig-proxy——本质上就是一个中转代理,可以设置ssl

 

 

如何设置并使用xmrig-proxy

王哥哥 挖矿 2021-03-04 3,497 次浏览 没有评论

首先,先简单介绍一下,什么是xmrig-proxy?

 

Xmrig-proxy(矿工代理池)是在矿工和矿池之间增加的一个中转环节,xmrig-proxy即承担了矿池的角色,也同时承担矿工的责任。

 

Xmrig-proxy从矿池获取任务,然后在分配给矿工去进行计算(在此环节中承担矿池角色),矿工计算完成后提交shares到xmrig-proxy,xmrig-proxy再进行归一化提交到矿池。

 

如图:


以上就是xmrig-proxy的基本工作原理了。

 

那么什么情况下,应该使用xmrig-proxy呢?

 

1–拥有大量矿机的矿工,可以使用xmrig-proxy进行算力集中管理。

 

2– 当某一个IP地址有很多矿工连矿池,提交share太频繁,会被矿池认为是DDoS攻击,会被矿池封掉IP,此时可以搞一个代理,对矿池来说,看上去只有一个矿工了。

 

3– 矿池距离较远,中间加一个代理,提高网络的连通性。

 

介绍完xmrig-proxy以后,那么我们开始正式进入xmrig-proxy的使用教程:

 

1、在群文件或者猫池官方github(https://github.com/C3Pool/xmrig-proxy/releases)上可下载猫池专版的xmrig-proxy,并进行解压.

 

2、解压后,会看到俩个文件:xmrig-proxy和config.json文件.

 


我们右键编辑config.json文件,并在其中找到如图中所示的地方,并对其进行修改.

 

图中红框1是内网挖矿端口可以默认使用,如有特殊需求可以自行跟换.修改完后,保存并退出.


3、双击xmrig-proxy运行,启动代理池服务。看下如下图一样的界面,表示你的代理已经启动成功了.


4、Xmrig-proxy启动成功后.我们需要将xmrig挖矿工具的挖矿地址修改为xmrig-proxy所在机器的IP地址:端口,其它可不修改。然后启动xmrig,如下图:





至此你的整个环境流程已经完成,可自己体验一下。

 

 

这是Monero门罗币系列文章的第九篇。这篇文章部分内容有经验成分,可能有不准确的地方。

xmrig-proxy GitHub:https://github.com/xmrig/xmrig-proxy

xmrig-proxy运行图

先介绍一下xmrig-proxy的用途:在矿工和矿池之间加一个中转的环节,xmrig-proxy既承担矿池的责任,也承担矿工的责任。xmrig-proxy从矿池那里获取任务,然后分配给矿工去计算(承担矿池的角色);矿工提交share到xmrig-proxy,xmrig-proxy提交到矿池(承担矿工的角色)。

应用场景:

1、矿池距离较远,中间加一个代理,提高网络的连通性。比如minexmr这个矿池,最近的是新加坡节点,并且网络环境不是很好,我们可以搞个HK的代理。

2、当某一个IP地址有很多矿工连矿池,提交share太频繁,会被矿池认为是DDoS攻击,会被矿池封掉IP,此时可以搞一个代理,对矿池来说,看上去只有一个矿工了。

xmrig-proxy的编译

编译可以参考官方的文档,如果是windows系统,可以直接下载他们编译好的版本

下面是CentOS系统编译步骤:

yum -y install git cmake gcc gcc-c++ libuv-static libstdc++-static libuuid-devel libmicrohttpd-devel
git clone https://github.com/xmrig/xmrig-proxy.git
cd xmrig-proxy
mkdir build
cd build
cmake .. -DUV_LIBRARY=/usr/lib64/libuv.a
make

如果出现“identifier ‘constexpr’ is a keyword in C++11 [-Wc++0x-compat]”错误,打开xmrig-proxy文件夹下的CMakeLists.txt,在“project(xmrig-proxy)”后加入以下一行,保存运行即可。

add_compile_options(-std=c++11)

xmrig-proxy的使用

1、启动xmrig-proxy

根据官方config文件生成器,先生成配置文件,命名为config.json,放到xmrig-proxy执行文件同级(以linux系统为例),然后./xmrig-proxy可以直接运行。

xmrig-proxy,设置

在生成配置文件的时候,BIND端口是矿工连接的端口(比如:0.0.0.0:3333),HTTP API是监控的端口(比如:6666),可以通过 http://ip:6666 查看xmrig-proxy运行的一些基本情况。

2、矿工的设置

矿工方面设置有两点(以xmr-stak为例):

1)把pool_address设置为xmrig-proxy的地址和端口;

2)把use_nicehash设置为ture。

其他方面不用设置,就可以直接开挖了。

xmrig-proxy的优化

1、合理设置固定难度

根据我的经验,矿池接收的是xmrig-proxy提交的share,我们在xmrig-proxy可以设置一个固定的难度(这个需要矿池的支持,并且有一个起始难度),然后在矿工那边也设置固定的难度,根据矿工的算力,可以设置一个较小的难度,可以小于矿池的初始难度。

这样有一个好处,一些矿工,比如是单台电脑,算力可能很小,如果用矿池提供的起始难度,可能需要很长时间才能提交一个share,如果把难度降低,可能更有效率。

但是有文档说,如果矿工提交的share的难度低于xmrig-proxy上设置的难度,是无效的,不会被提交,但是我测试了一下,我在proxy设置的难度是50000,在每个矿工上都设置了15000,矿池的初始难度是35000。从矿池的监控来看,发现还是有算力提交的,从xmrig-proxy看,提交的难度是proxy上设置的难度。

所以我觉得,xmrig-proxy会把低难度的share合并成高难度的,然后再提交给矿池。

2、矿工端使用多矿池

在使用了xmrig-proxy之后,建议在矿工上设置多个矿池,假如xmrig-proxy出问题,矿工检测到之后,会使用第二个矿池。比如首个矿池为xmrig-proxy的地址,次矿池为xmrig-proxy上设置的矿池地址。

 

SSL/TLS for incoming connections——设置ssl加密

https://xmrig.com/docs/proxy/tls

 

Automatic configuration

 

Since v5.10.0 automatic configuration is very easy, proxy will generate TLS certificate and private key. Files (cert.pem and cert_key.pem) will be stored in current working directory or data directory (--data-dir). Once files generated TLS is ready to use, no additional configuration required, you can skip the remaining article, unless you need custom configuration. To disable automatic TLS configuration, use global config option "tls": false, or manually configure it.

Certificate

 

Best option is obtain trusted certificate from Let's Encrypt

. If it is not possible you can use a self-signed certificate, created by yourself or generated by the proxy.

Bind

 

Example bind configuration:

"bind": [
    {
        "host": "0.0.0.0",
        "port": 443,
        "tls": true
    }
],

Command line equivalent is --tls-bind 0.0.0.0:443.

Since v5.10.0 meaning of tls option changed:

  • false TLS autodetection, was disable TLS, default if not specified.
  • true always use TLS.

 

Advanced TLS options

 

Example global tls configuration:

"tls": {
    "enabled": true,
    "cert": "/etc/letsencrypt/live/donate.ssl.xmrig.com/fullchain.pem",
    "cert_key": "/etc/letsencrypt/live/donate.ssl.xmrig.com/privkey.pem",
    "dhparam": "dhparam.pem",
    "protocols": null,
    "ciphers": null,
    "ciphersuites": null
},

Command line equivalent is --tls-cert /etc/letsencrypt/live/donate.ssl.xmrig.com/fullchain.pem --tls-cert-key /etc/letsencrypt/live/donate.ssl.xmrig.com/privkey.pem --tls-dhparam dhparam.pem.

Options cert and cert_key is required, you must property configure it to use TLS, dhparam is optional, but recommended to use for enhanced security. All other options for advanced usage only, usually don't need change it.

Options list

 
load TLS certificate chain from a file in the PEM format.
 
load TLS certificate private key from a file in the PEM format.
 
load DH parameters for DHE ciphers from a file in the PEM format.
 
enable specified TLS protocols.
 
set list of available ciphers (TLSv1.2 and below).
 
set list of available TLSv1.3 ciphersuites.

 

posted @   bonelee  阅读(4006)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
历史上的今天:
2019-07-17 RBF神经网络——直接看公式,本质上就是非线性变换后的线性变化(RBF神经网络的思想是将低维空间非线性不可分问题转换成高维空间线性可分问题)
2019-07-17 如何利用AI识别未知——加入未知类(不太靠谱),检测待识别数据和已知样本数据的匹配程度(例如使用CNN降维,再用knn类似距离来实现),将问题转化为特征搜索问题而非决策问题,使用HTM算法(记忆+模式匹配预测就是智能),GAN异常检测,RBF
2018-07-17 暴力破解研究论文
2018-07-17 利用ModSecurity防御暴力破解
2018-07-17 IRC BOT原来是利用IRC下发C&C命令——在xx云环境遇到了,恶意软件开的是6666端口
2018-07-17 暴力破解字典列表
2018-07-17 暴力破解攻击工具汇总——字典很关键,肉鸡也关键
点击右上角即可分享
微信分享提示