1. 程式人生 > >Cgminer-4.10.0 Linux 挖礦

Cgminer-4.10.0 Linux 挖礦

前言

本文為自己在Centos 6.0下,利用Cgminer-4.10.0進行比特幣挖礦並利用Tcpdump進行抓包分析的測試記錄。

Step 1 Download and install

wget http://ck.kolivas.org/apps/cgminer/cgminer-4.10.0.tar.bz2 #下載最新版本挖礦軟體

tar jxvf cgminer-4.10.0.tar.bz2 #解壓縮在當前目錄

cd  cgminer-4.10.0.tar.bz2  #進入目錄

./configure --prefix=/usr/local/cgminer --enable-opencl --enable-maintainer-mode --enable-scrypt --enable-cpumining # --enable-cpumining這個引數是允許使用CPU進行挖礦,在沒有GPU的情況下使用,如果有了GPU,不建議使用。
make make check make install ln -s /usr/local/cgminer/bin/cgminer /usr/bin vim /usr/local/cgminer/etc/cgminer.conf #配置cgminer.conf cgminer挖礦指令: cgminer -o stratum+tcp://us.multipool.us:3332 -u Cherishao_0 -p x #-0 指定礦池 -u 制定礦工 -p 密碼
#挖礦成功輸出“Echo”
  cgminer version 4.10
.0 - Started: [2018-05-29 16:20:09] CPU Algo: c -------------------------------------------------------------------------------- (5s):664.3 (avg):647.7 Kh/s | Q:7 A:0 R:0 HW:0 E:0% U:0.0/m TQ: 0 ST: 2 SS: 0 DW: 0 NB: 1 LW: 0 GF: 0 RF: 0 WU: 0.0 Connected to http://us.multipool.us:3332 with LP as user Cherishao_0 Block: 00000003
e78a45bc9db17b5654bbe400... Started: [16:20:09] -------------------------------------------------------------------------------- [P]ool management [S]ettings [D]isplay options [Q]uit CPU 0: | 647.0/647.7Kh/s | A:0 R:0 HW:0 U:0.00/m -------------------------------------------------------------------------------- [2018-05-29 16:20:09] Started cgminer 4.10.0 [2018-05-29 16:20:11] Need to specify at least one pool server. Input server details. URL: http://us.multipool.us:3332 Username: Cherishao_0 Password: x [2018-05-29 16:20:13] Probing for an alive pool [2018-05-29 16:20:14] Pool 0 http://us.multipool.us:3332 alive [2018-05-29 16:20:16] Long-polling activated for http://us.multipool.us:3332/listenChannel

Step2 tcpdump

@監視指定網路介面的資料包

tcpdump -i eth1

@指定ip,例如截獲所有210.27.48.1 的主機收到的和發出的所有的資料包

tcpdump host 210.27.48.1 

@監視指定主機和埠的資料包 如果想要獲取主機210.27.48.1接收或發出的telnet包,使用如下命令

tcpdump tcp port 23 and host 210.27.48.1

@對本機的udp 123 埠進行監視 123 為ntp的服務埠

tcpdump udp port 123 

tcpdump 與wireshark

Wireshark(以前是ethereal)是Windows下非常簡單易用的抓包工具。但在Linux下很難找到一個好用的圖形化抓包工具。
還好有Tcpdump。我們可以用Tcpdump + Wireshark 的完美組合實現:在 Linux 裡抓包,然後在Windows 裡分析包。

tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap

(1)tcp: ip icmp arp rarp 和 tcp、udp、icmp這些選項等都要放到第一個引數的位置,用來過濾資料報的型別
(2)-i eth1 : 只抓經過介面eth1的包
(3)-t : 不顯示時間戳
(4)-s 0 : 抓取資料包時預設抓取長度為68位元組。加上-S 0 後可以抓到完整的資料包
(5)-c 100 : 只抓取100個數據包
(6)dst port ! 22 : 不抓取目標埠是22的資料包
(7)src net 192.168.1.0/24 : 資料包的源網路地址為192.168.1.0/24
(8)-w ./target.cap : 儲存成cap檔案,方便用ethereal(即wireshark)分析

使用tcpdump抓取HTTP包

tcpdump  -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854

@0x4745 為”GET”前兩個字母”GE”,0x4854 為”HTTP”前兩個字母”HT”。

tcpdump 對截獲的資料並沒有進行徹底解碼,資料包內的大部分內容是使用十六進位制的形式直接列印輸出的。顯然這不利於分析網路故障,通常的解決辦法是先使用帶-w參 數的tcpdump 截獲資料並儲存到檔案中,然後再使用其他程式(如Wireshark)進行解碼分析。當然也應該定義過濾規則,以避免捕獲的資料包填滿整個硬碟。

Step 3

@可參考礦池配置

 "pools": [
        {
            "url": "aeon-pool.sqlnetcat.com:5555",                          // URL of mining server
            "user": "WmsJrZGye77apyyprQRSfG6s3wyBivswtKFd3BeVQz3tQJhL7WHGpToJR4ALKmPTKMJYMVqCxaak2J3LiRgUEYqz33vzHAExq",                         // username for mining server
            "pass": "x",                        // password for mining server
            "use-tls" : false,                  // enable tls for pool communication (need pool support)
            "keepalive": true,                  // send keepalived for prevent timeout (need pool support)
            "nicehash": false                   // enable nicehash/xmrig-proxy support
        },
        {
            "url": "xmr.sqlnetcat.com:7777",                          // URL of mining server
            "user": "47HMfFjaYKj7cXVVGrABeFdBQZGTsi4GSYxANQ3qAnDRDJuj3uNTDmmiVg845L3sbHWSV8k9EAjqdeCb4gFMhCWiLQjTYVe",                         // username for mining server
            "pass": "x",                        // password for mining server
            "use-tls" : false,                  // enable tls for pool communication (need pool support)
            "keepalive": true,                  // send keepalived for prevent timeout (need pool support)
            "nicehash": false                   // enable nicehash/xmrig-proxy support
        },
        {
            "url": "pool.minexmr.com:443",                          // URL of mining server
            "user": "47HMfFjaYKj7cXVVGrABeFdBQZGTsi4GSYxANQ3qAnDRDJuj3uNTDmmiVg845L3sbHWSV8k9EAjqdeCb4gFMhCWiLQjTYVe",                         // username for mining server
            "pass": "x",                        // password for mining server
            "use-tls" : false,                  // enable tls for pool communication (need pool support)
            "keepalive": true,                  // send keepalived for prevent timeout (need pool support)
            "nicehash": false                   // enable nicehash/xmrig-proxy support
        },
        {
            "url": "xmr.crypto-pool.fr:443",                          // URL of mining server
            "user": "47HMfFjaYKj7cXVVGrABeFdBQZGTsi4GSYxANQ3qAnDRDJuj3uNTDmmiVg845L3sbHWSV8k9EAjqdeCb4gFMhCWiLQjTYVe",                         // username for mining server
            "pass": "x",                        // password for mining server
            "use-tls" : false,                  // enable tls for pool communication (need pool support)
            "keepalive": true,                  // send keepalived for prevent timeout (need pool support)
            "nicehash": false                   // enable nicehash/xmrig-proxy support
        }
    ],