Cum să configurați un server de domiciliu și să îl utilizați ca nod Bitcoin

Ce este un nod Bitcoin?

Acest ghid necesită să utilizați interfața liniei de comandă sau CLI și un client SSH. SSH (Secure Shell) este un instrument popular pentru a „controla la distanță” dispozitivele în siguranță. În principiu, funcționează similar cu un VPN, cu excepția faptului că obțineți acces la un computer, mai degrabă decât la întregul internet.

ferestre

Windows 10 are o interfață de linie de comandă nativă, deși este posibil să nu fie instalat implicit. Pentru a instala:

  1. Mergi la Setări > Aplicații
  2. Clic Gestionați funcțiile opționale sub Aplicații & caracteristici

Dacă un client SSH este instalat pe aparatul dvs., acesta trebuie să apară aici. Dacă nu, îl puteți adăuga dând clic Adăugați o caracteristică și apoi Client OpenSSH. Nu instalați serverul OpenSSH.

Pentru a utiliza clientul SSH, trebuie să deschideți mai întâi un PowerShell, care se poate face făcând clic dreapta pe meniul Start sau apăsând Windows + X și apoi selectând PowerShell.

După ce ați lansat PowerShell, introduceți SSH pentru a fi gata.

Mac OS

Deschideți terminalul cu Spotlight, Launch Pad sau Finder.

Linux

Deschideți linia de comandă cu Ctrl + Alt + T

Sfaturi utile când folosiți linia de comandă

  • Copiere / lipire: Ctrl + C și Ctrl + V standard nu vor funcționa în linia de comandă, dar puteți utiliza în schimb Ctrl + Shift + C și Ctrl + Shift + V. Puteți utiliza, de asemenea, indicatorul mouse-ului pentru a selecta textul, apoi îl puteți copia / lipi făcând clic dreapta pe zona marcată. Adesea puteți lipi conținut făcând clic pe tasta mijlocie sau pe roata de pe mousepad sau mouse.
  • Folosind sus jos săgețile din tastaturile dvs. vă vor permite să parcurgeți comenzile executate recent, ceea ce este foarte util dacă tot ce aveți nevoie este să schimbați o tastatură mică.
  • Folosiți Ctrl + C pentru abort o comandă care este blocată. Acest lucru vă va scoate, de asemenea, din majoritatea meniurilor sau programelor.
  • Linia de comandă este, de asemenea, un pic ca un explorator de fișiere unidimensionale. Folosiți comanda ls pentru a vedea ce fișiere există în folderul curent sau pe cd pentru a vă deplasa într-un director specific. cd .. va muta un director în jos și cd ~ / merge înapoi la folderul de origine.

O captură de ecran a liniei de comandă.

  • Vedeți ce unități sunt conectate în prezent și cât sunt utilizate cu opțiunea df -h.
  • Puteți utiliza butonul Tab pentru a completa complet mai multe cazuri, de exemplu, atunci când selectați un folder în care să vă mutați cu cd, copiați cu cp, mutați cu mv sau ștergeți cu rm. Tastarea cd d urmată de butonul Tab va completa automat un dosar începând cu d, dacă există. Dacă există mai multe foldere care încep cu d, puteți apăsa din nou butonul Tab pentru a vedea lista completă.

O captură de ecran a liniei de comandă.

Obțineți un server privat virtual

Orice server o va face. Cu puțin efort, puteți converti chiar și un laptop vechi sau puteți utiliza un mini PC pentru aproximativ 100 USD. Chiar și un computer la fel de mic ca un Raspberry Pi ar fi suficient teoretic.

În cazul nostru, vom închiria un server privat virtual (VPS) de la Lunanode. Am ales Lunanode pentru că este relativ ușor să vă înscrieți fără identificare – acceptă Bitcoin – și este fiabil. O altă alternativă excelentă este Cryptohost (care are chiar și Lightning!). Cel mai scump, dar care necesită și mai puține informații personale pentru înregistrare este Njal.la.

În mod alternativ, puteți opta, de asemenea, pentru unul dintre cei mai mari furnizori, cum ar fi AWS, Digital Ocean sau Rackspace.

Inscrie-te

Pentru a vă înscrie la Lunanode, va trebui să vă verificați adresa de e-mail și numărul de telefon, apoi selectați țara dvs. și alegeți o parolă. Puteți depune imediat Bitcoin în contul dvs. pentru a începe să plătiți pentru serverul dvs. sau să introduceți un card de credit pentru a vă factura automat.

Prețuri

Recomandăm serverul m2 pentru 7 USD pe lună. În scopul exploatării Bitcoin, vom adăuga 80 GB stocare pentru un plus de 2,7 USD pe lună.

Găsiți-vă cheia SSH

  • În ferestre, utilizați clientul SSH (vezi mai sus).
    1. Dacă este prima dată când utilizați clientul SSH, tastați ssh-keygen -o -b 4096 -t rsa pe linia de comandă pentru a genera o cheie.
    2. După ce ați generat o cheie sau dacă aveți deja o cheie, găsiți-o la C: \ Users \ YourUserName \ .ssh \ id_rsa.pub
    3. Deschideți acest fișier cu blocul dvs. de notes și adăugați-l în panoul dvs. Lunanode
  • În Mac OS, deschide terminalul cu Spotlight, Lansare Pad sau Finder
    1. Creați o cheie SSH cu comanda: ssh-keygen -o -b 4096 -t rsa
    2. Apoi, puteți găsi cheia SSH sub ~ / .ssh / id_rsa.pub
    3. Deschideți acest fișier cu blocul dvs. de notes și adăugați-l în panoul dvs. Lunanode.
  • În Linux, deschide un terminal cu comanda: Ctrl + Alt + T
    1. Creați un SSH cu comanda: ssh-keygen -o -b 4096 -t rsa
    2. Apoi, puteți găsi cheia SSH sub ~ / .ssh / id_rsa.pub
    3. Deschideți acest fișier cu blocul dvs. de notes și adăugați-l în panoul dvs. Lunanode.

Adăugați cheia SSH

În tabloul de bord Lunanode, găsiți opțiunea „Taste SSH” în partea stângă. Dați-i unui nume cheii SSH și lipiți conținutul blocului de notițe în întregul său câmp în cheia publică, apoi faceți clic pe „Adăugare funcție cheie SSH”. Apoi va apărea în listă.

Lansați serverul

Pentru a crea mașina virtuală, faceți clic pe „Creați VM” din colțul din stânga sus al tabloului de bord Lunanode. Alegeți o locație, un plan și un sistem de operare, apoi decideți un nume de gazdă. În cazul nostru, acesta este Toronto, m2 pe Ubuntu 18.04 (64 biți) și l-am numit Torontola. De asemenea, va trebui să adăugați funcția de cheie pentru a vă putea conecta în siguranță.

Conectați-vă la serverul dvs.

La „mașină virtuală” ar trebui să vedeți instanța dvs. acum. Faceți clic pe numele său și ar trebui să vedeți, printre altele, adresa sa externă de IP. Vă puteți conecta la serverul dvs. deschizând o fereastră Terminal și introducând comanda:

ssh ubuntu @

de exemplu: ssh [email protected]

Întrucât este prima dvs. conectare, vi se va spune că autenticitatea gazdei dvs. nu va putea fi confirmată. Introduceți da pentru a adăuga mașina dvs. la lista de dispozitive de încredere. Veți fi din nou avertizat dacă se schimbă cheia.

Configurați serverul

Configurați un firewall simplu pentru a proteja serverul. Ufw (firewall necomplicat) ar trebui să fie preinstalat pe aparat. Verificați dacă este instalat sau activat tastând starea sudo ufw

Dacă nu s-a afișat un răspuns „Status”, puteți să-l instalați cu sudo apt install ufw

Mai important, permiteți SSH să se conecteze la mașina noastră de la distanță. Săriți acest pas dacă aveți acces direct la server, adică puteți conecta un monitor și o tastatură în el. Dacă nu puteți, trebuie să activați SSH cu sudo ufw permite ssh

Acum pornește firewallul cu sudo ufw activat

Actualizați-vă serverul

Asigurați-vă că serverul dvs. este actualizat, executând comenzile sudo apt update și sudo apt upgrade.

Acum ești totul setat! Următorii pași descriu modul de configurare a nodului Bitcoin.

***

Pare un fel de joncțiune electrică cu un logo Bitcoin pe ea.

Cum să vă configurați propriul nod Bitcoin

Include un nod complet, Lightning, suport Tor, portofel Zap și iOS, ejabberd și Server BTCPay.

1. Adăugați un volum de server

Pentru a începe, pregătiți serverul pentru minerit Bitcoin.

În partea stângă a panoului Lunanode, veți găsi opțiunea Volume.

Ar trebui să-l vedeți imediat în lista de volume. Faceți clic pe „Gestionați” și „Atașați la VM”. Asigurați-vă că mașina virtuală la care o atașați este cea corectă (dacă ați achiziționat spațiu de stocare suplimentar, folosiți-o).

Vom păstra driverul de disc implicit la „virtio”.

În terminalul dvs., conectat la serverul dvs., puteți rula acum comanda sudo fdisk -l pentru a confirma numele volumului. Este foarte probabil la fel ca al nostru, / dev / vdc

Pentru a atașa permanent volumul la serverul nostru, deveniți temporar un utilizator. Deveniți un super utilizator rulând comanda: sudo -i

Numele nostru de utilizator se schimbă acum în root @ torontola și putem rula următoarele comenzi fără sudo:

mkfs.ext4 / dev / vdc (formează unitatea goală)
mkdir / media / bitcoin (creează un punct de montaj)
mount / dev / vdc / media / bitcoin (montează dispozitivul în punctul de montare)
echo ‘/ dev / vdc / media / bitcoin ext4 default 0 2’ >> / etc / fstab (face punctul de montare permanent)
chown -R ubuntu / media / bitcoin (ne permite să scriem ulterior date pe această unitate ca utilizator ubuntu implicit)

Reveniți la utilizatorul nostru obișnuit (mai sigur), tastând ieșirea

Serverul nostru este acum gata să fie un nod Bitcoin!

2. Instalați și configurați Bitcoind

Conectați-vă la (sau rămâneți conectat) la server.

Instalați Bitcoind

Pentru a instala Bitcoind, mai întâi trebuie să adăugați depozitul Bitcoin:

sudo add-apt-repository ppa: bitcoin / bitcoin

Confirmă alegerea, actualizează managerul de pachete cu actualizare sudo apt

Instalați Bitcoind cu comanda: sudo apt install bitcoind

Creați un fișier de configurare simplu

Sincronizați Bitcoin în volumul nostru suplimentar, care necesită o adăugare de linie la fișierul de configurare. S-ar putea să doriți să-l tăiați, ceea ce înseamnă limitarea dimensiunii Blockchain doar prin păstrarea blocurilor recente pe disc.

Tăierea ne permite să economisim spațiu de stocare și costuri. Creați un director bitcoin cu comanda: mkdir .bitcoin (punctul important)

Apoi un fișier de configurare cu comanda: nano ~ / .bitcoin / bitcoin.conf

Acum copiați / inserați următoarele în ea:
datadir = / media / Bitcoin
daemon = 1
emonda = 70000

Salvați fișierul cu tastele Ctrl + O și închideți fereastra cu comanda: Ctrl + X

Porniți Bitcoind

Porniți Bitcoind cu comanda bitcoind

Ar trebui să obțineți răspunsul „Pornirea serverului Bitcoin”. Pentru a vedea ce face nodul dvs. Bitcoin, puteți rula comanda tail -f /media/bitcoin/debug.log

Puteți, de asemenea, să deschideți o nouă fereastră de terminal, SSH în mașina dvs. și să păstrați această fereastră deschisă dacă doriți. Acesta vă va oferi o imagine de ansamblu ușoară asupra tuturor. Puteți ieși din fereastră ținând simultan tastele Ctrl + C.

Verificați-vă pe computer

Verificați starea de sănătate a nodului nostru, de asemenea, tastând bitcoin-cli –getinfo

În exemplul de mai jos, puteți vedea că am sincronizat 388.343 blocuri (de ~ 566.000) și sunt conectate la 16 colegi.

O captură de ecran a comenzilor terminalului.

Rulați oricând topul comenzii pentru a vedea câte resurse sunt consumate. Acest lucru ar putea fi util și atunci când vedeți dacă un proces este încă în curs. Mai jos putem vedea că Bitcoind consumă cea mai mare parte a memoriei noastre, dar relativ puțin CPU.

O captură de ecran de Terminal.

Acum … Stai

Sincronizarea Bitcoin va dura ceva. Cel mai bine este să vă întrerupeți aici și să continuați mai târziu. Puteți verifica periodic pe nodul dvs. folosind comanda bitcoin-cli –getinfo sau respectând jurnalele folosind tail -f /media/bitcoin/debug.log

Opțional: porturi deschise

Permiteți conexiunile primite la viitorul nostru nod Bitcoin cu sudo ufw permit 8333 / tcp

Porturile deschise ajută rețeaua, deoarece creează mai mult spațiu pentru conectarea altora.

Opțional: Cumpărați timp suplimentar pentru procesor

Sincronizarea nodului pentru prima dată poate fi intens procesor. În panoul dvs. de administrare Lunanode, accesați „Mașini virtuale”, faceți clic pe serverul dvs., apoi pe „CPU”.

Schimbați opțiunea din „Nu” în „Da” la „Plăți pentru utilizarea procesorului peste performanța de bază?” O sincronizare completă a unui nod Bitcoin nu ar trebui să coste mai mult de 4 USD.

3. Descărcați și instalați Go

Urmărim aproximativ ghidul de instalare găsit în Lightning Network Github, adaptat instanței Lunanode pe care o avem deja. Vom încerca să menținem ghidul actualizat, dar dacă observați erori neașteptate, ar putea merita să verificați dacă s-a schimbat ceva.

Descarcă Go

Descărcați codul Go cu comanda: wget https://dl.google.com/go/go1.11.5.linux-amd64.tar.gz

Verificați dacă datele sunt corecte tastând sha256sum go1.11.5.linux-amd64.tar.gz | awk -F " " „{print $ 1}”

Acest lucru ne arată hash-ul SHA256 al datelor descărcate. Ne așteptăm ca ieșirea să fie ff54aafedff961eb94792487e827515da683d61a5f9482f668008832631e5d25

Instalați Go

Fișierul este comprimat, similar cu un fișier zip. Despachetați Intrați în directorul principal tar -C ~ / -xzf go1.11.5.linux-amd64.tar.gz

Copiați-l într-un loc mai potrivit cu sudo mv ~ / go / usr / local

În continuare, spuneți serverului unde poate găsi codul Go. Acest lucru poate diferi de la mașină la mașină. În cazul nostru este:

export GOROOT = / usr / local / go
export GOPATH = $ HOME / go
export PATH = $ GOPATH / bin: $ GOROOT / bin: $ PATH

Pentru a face acest lucru permanent, adăugați liniile în fișierul .bashrc. Deschideți fișierul folosind nano ~ / .bashrc apoi derulați în partea de jos și lipiți acolo.

Salvați și închideți nano apăsând butoanele Ctrl + O și Ctrl + X

Verificați dacă funcția go este instalată corect

Testați dacă Go este instalat corespunzător tastând versiunea go
Așteptați-vă la ieșire: mergeți versiunea go1.11.5 linux / amd64

4. Instalați lnd

Cerințe preliminare

Descărcați informațiile esențiale înainte de a începe instalarea.

Rulați comanda: sudo apt-get install -y build-essential
Asigurați-vă că Git este instalat. Dacă nu, instalați-l cu sudo apt install git

Descărcați lnd

Pentru a instala lnd, descărcați codul accesați -d github.com/lightningnetwork/lnd

Instalați lnd

Mutați-vă în directorul lnd cu comanda: cd ~ / go / src / github.com / lightningnetwork / lnd

În general, este recomandat să respectați cea mai recentă versiune, mai degrabă decât să actualizați la cel mai recent cod din master. Verificați care este cea mai recentă versiune de lnd aici. În cazul nostru, este versiunea v0.5.2-beta. Vom „verifica” această versiune cu comanda
git fetch –tags
git checkout v0.5.2-beta

În cele din urmă, instalați lnd cu comanda: make && face instalare

Acum navigați înapoi la folderul principal cu CD ~ /

Verificați dacă lnd este instalat corect

Acum ar trebui să puteți vedea dacă lnd este instalat tastând lnd –version și lncli –version

Ar trebui să citească versiunea 0.5.2-beta commit = v0.5.2-beta

Configurați lnd

Creați un fișier de configurare pentru lnd. Realizați directorul cu mkdir ~ / .lnd

Editează-l imediat folosind nano ~ / .lnd / lnd.conf

O captură de ecran a terminalului.

Nu uitați să completați câmpurile albastre cu propriile informații! Puteți alege în mod liber un nume și o culoare pentru nodul dvs..

Găsiți adresa dvs. IP în tabloul de bord al Lunanode (dacă folosiți pentru serverul dvs.).

Veți avea nevoie de un nume de utilizator și o parolă pentru pasul următor. Pentru simplitate, poate fi o idee bună să evitați caracterele speciale.

# [Opțiuni de aplicare]
alias =< numele nodului >
color =< culoarea ta preferată în hex >

# [Bitcoin]
bitcoin.active = 1
bitcoin.mainnet = 1
bitcoin.node = bitcoind

bitcoind.rpchost = 127.0.0.1
bitcoind.rpcuser =< nume de utilizator >
bitcoind.rpcpass =< parola Dvs >

bitcoind.zmqpubrawblock = tcp: //127.0.0.1: 28332
bitcoind.zmqpubrawtx = tcp: //127.0.0.1: 28333

# [LND]
externalip =< ip-ul tău >

Configurați Bitcoind

Va trebui să aducem unele modificări Bitcoind. Vom deschide fișierul de configurare cu nano ~ / .bitcoin / bitcoin.conf

Va trebui să adăugăm următoarele rânduri:
rpcuser =< nume de utilizator >
rpcpassword =< parola Dvs >
zmqpubrawblock = tcp: //127.0.0.1: 28332
zmqpubrawtx = tcp: //127.0.0.1: 28333

Salvați și închideți fișierul de configurare cu Ctrl + O și Ctrl + X și reporniți Bitcoind cu sudo bitcoind restart

5. Lansați lnd și creați un portofel

Cerințe preliminare

Pentru a începe acest pas, asigurați-vă că Bitcoind este complet sincronizat și gata. Testați acest lucru rulând comanda: bitcoin-cli –getinfo și comparați valoarea blocurilor cu un explorator de blocuri, de exemplu, Blockstream.info.

Înălțimea blocului afișată de exploratorul blocului trebuie să fie aceeași cu ieșirea „blocurilor” din comanda noastră. Dacă numărul afișat de exploratorul de bloc este mai mare, nodul nu este încă sincronizat.

Utilizați tail -f /media/bitcoin/debug.log pentru a vedea jurnalele. Acest lucru va fi, de asemenea, afișat atunci când ultimul bloc a fost creat și sincronizarea progresează. Nodul nostru va fi sincronizat până la această dată.

O captură de ecran de Terminal.

Lansați lnd

Lansați lnd tastând lnd în terminalul dvs. Alternativ, puteți încerca, de asemenea, ~ / go / bin / lnd

Pare a fi rezultatul de mai jos? Grozav, totul merge conform planului. Dacă vedeți un mesaj de eroare, asigurați-vă că Bitcoin rulează sau mergeți din nou la pasul pe care mesajul de eroare sugerează că este greșit. Toate fișierele de configurare sunt corecte?

O captură de ecran de la Terminal

Când ieșirea dvs. pare a fi cea de mai sus, închideți din nou apăsând tastele Ctrl + C

Rulați permanent lnd în fundal cu comanda: lnd &>/ Dev / null

Tastați dezactivat pentru a vă asigura că sarcina este încă în curs, chiar dacă deconectat sau terminalul este închis.

Opțional: Respectați lnd prin jurnalele de depanare

Deschide un nou terminal, SSH înapoi în server și deschide jurnalele lnd pentru a avea o idee bună despre ce se întâmplă în fundal.

Este destul de interesant, dar vă va avertiza, de asemenea, dacă ceva nu merge bine. În noua fereastră a terminalului, tastați: tail -f ~ / .lnd / logs / bitcoin / mainnet / lnd.log

Lăsați oricând această vizualizare apăsând Ctrl + C

Creați un portofel

În timp ce lnd rulează în fundal, rulați comanda: lncli create

Introduceți o parolă portofel, apoi confirmați-o.

În continuare, suntem întrebați dacă avem o mnemonică semințială de cifru existentă. Deoarece acesta este un nou nod Lightning (spre deosebire de cel care este restaurat), vom folosi n

Opțional puteți cripta semința de cifrare – o idee bună dacă păstrați semința într-o locație accesibilă altora (sub saltea), dar trebuie să vă amintiți cheia de criptare.

Alegem să nu criptăm sămânța în acest exemplu. Mai jos, semințele de criptă sunt negre.

O captură de ecran Terminal a seminței de cifrare.

Deblocați portofelul

Dacă ați creat un portofel nou, acesta ar fi trebuit să se deblocheze automat. Dacă ceva nu a mers corect sau reîncepeți lnd, trebuie să deblocați portofelul cu comanda: lncli deblochează

Sincronizare lnd

Deoarece aceasta este prima dată când începeți lnd, va trebui să o sincronizăm.

6. Deschideți un canal

Dacă preferați să părăsiți linia de comandă în acest moment, treceți la pasul următor și conectați Zap Desktop sau Zap iOS la nodul dvs. Puteți apoi să deschideți canale și să efectuați plăți în interiorul unei interfețe de utilizator corecte.

Asigurați-vă că este activat și sincronizat

Faceți acest lucru cu comanda: lncli getinfo. Ar trebui să citească sincronizat cu lanț: adevărat.

Dacă nu este sincronizat, trebuie să ne asigurăm că Bitcoind rulează și se sincronizează, de exemplu, rulând bitcoin-cli –getinfo și comparând înălțimea blocului curent al nodului nostru cu cea a unui explorator de blocuri.

Verificați jurnalele pe care le rulează Bitcoind (tail -f /media/ubuntu/bitcoin/debug.log) și lnd (tail -f ~ / .lnd / lnd.log)..

Depuneți monede în nodul dvs.

Generați o nouă adresă cu comanda: lncli newaddress p2wkh

Produsul ar trebui să fie de genul BC1 …

Acum puteți trimite Bitcoin pe această adresă copiind / lipind adresa în portofelul Bitcoin. Dacă portofelul cumva nu poate trimite la o adresă în format BC1 …, puteți, de asemenea, genera o adresă moștenire începând cu „3” folosind comanda: lncli newaddress np2wkh

Verificați soldul oricând folosind comanda: lncli walletbalance

Acesta va afișa atât soldul confirmat, cât și cel neconfirmat în Satoshi. 1 Bitcoin este 100 milioane Satoshi.

Conectați-vă la un nod

În pasul următor, ne vom conecta la un nod. Poate aveți deja un nod pentru a vă conecta sau cunoaște un prieten care rulează un nod Lightning. Puteți alege, de asemenea, unul dintre cele mai populare noduri enumerate pe 1ml.com

URI-ul unui nod Lightning arată astfel: 0331f80652fb840239df8dc99205792bba2e559a05469915804c08420230e23c7c@74.108.13.152: 9735

Conține cheia publică a nodului înainte de @, apoi IP-ul sau numele de domeniu și portul.

Conectați-vă la acest nod folosind comanda: lncli connect [0331f80652fb840239df8dc99205792bba2e559a05469915804c08420230e23c7c@74.108.13.152: 9735]

Când este conectat cu succes, ieșirea ar trebui să fie pur și simplu o deschidere și o paranteză strânsă fără un mesaj de eroare.

Deschideți un canal

După ce depozitul a fost confirmat pe Bitcoin Blockchain, deschideți un canal. Puteți deschide canalul cu nodul conectat cu cele de mai sus, dar este recomandat să vă conectați la un grup divers de noduri. De asemenea, sunteți bineveniți să deschideți canale cu mai multe noduri.

Vom deschide un canal cu comanda: lncli openchannel 0331f80652fb840239df8dc99205792bba2e559a05469915804c08420230e23c7c 200000, unde șirul lung care începe cu 0331 este cheia publică a celuilalt nod, iar numărul 200000 reprezintă suma de fonduri pe care dorim..

După ce canalul dvs. este deschis cu succes, veți obține tranzacția de finanțare. Când această tranzacție este confirmată pe Blockchain, canalul dvs. va fi deschis și activ. Până atunci va fi afișat în sec canale în așteptare.

În general, este nevoie de trei confirmări pentru ca canalul dvs. să devină activ.

O captură de ecran a unui canal deschis în terminal.

Fa o plata

Pentru a efectua o plată, veți avea nevoie de lichiditate de ieșire (aveți fonduri pe canale cu alte noduri). Pentru a face acest lucru, tot ce ai nevoie este să depui Bitcoin în nodul tău și să deschizi canale cu rețeaua.

În mod ideal, aceste canale sunt direct legate de contrapartidele cu care tranzacționați sau cu noduri bine conectate în rețea.

Puteți verifica întotdeauna nodul cu comanda: lncli getinfo

Nodul dvs. ar trebui să fie întotdeauna sincronizat cu lanțul și ar trebui să aveți cel puțin un canal activ.

O factură Lightning arată astfel: lnbc10u1pwfxg42pp553wyha3ag66tn40zls69eeaeq0cyluj6ja54sygp7vh50gcy0rnsdqlxycrqvpqwdshgueqvfjhggr0dcsry7qcqzysyrmxj0554vrg4ej2we83m8n7rxj94s8c5a8rwjud07ptc6dw7j2hr42sxt7lnazglku3pfe9jkl8f0gupkuz7jly5xnq35qr202jwwqqy8qs9a

Decodează-l cu comanda: lncli decodepayreq [Factură fulger]

Aceasta va arăta suma, unde se efectuează plata și când expiră factura.

O captură de ecran a unei plăți primite în Terminal.

Pentru a efectua o plată vom folosi comanda: lncli payinvoice [factură fulgeră]

După confirmarea sumei și destinației, nodul va încerca să efectueze plata. Odată ce plata a fost reușită, se vor primi informații despre plată, precum hamei și taxe.

Primește o plată

Pentru a primi plăți, veți avea nevoie de lichidități primite. Încurajați-i pe alții să deschidă canale cu dvs. (în timp, deoarece nodul dvs. rămâne online, acest lucru se va întâmpla automat).

De fiecare dată când efectuați o plată prin canalele dvs., veți elibera automat și lichiditățile primite. De exemplu, dacă depuneți 10 USD în nodul dvs., deschideți un canal și efectuați o plată peste 2 USD, veți avea imediat 2 USD în capacitate de intrare.

Pentru a primi o plată, generați o factură. Factura urmează formatul lncli addinvoice –memo „un memo” –amt –expiry < timpul de expirare în câteva secunde >

De exemplu, putem rula lncli addinvoice –memo „pentru servicii VPN” – amenda 90000 – expiratie 3600 pentru o factură Satoshi de 90.000 care este valabilă pentru o oră.

Rezultatul va include a r_hash, A pay_req si un add_index. Pay_req este factura noastră pe care o putem transmite.

O captură de ecran a unei solicitări de plată în Terminal.

Verificați plățile

Vedeți facturile emise și starea lor cu comanda: lncli listinvoices. Mai jos, putem vedea că factura pe care am emis-o mai sus nu a fost încă plătită, întrucât „decontat” este setat pe fals.

O captură de ecran a unei plăți în Terminal.

7. Comenzi utile cu lnd

De departe, cea mai utilă comandă în lnd este lncli help. Listează toate comenzile disponibile. Obțineți informații suplimentare despre fiecare comandă adăugând cuvântul „ajutor”. De exemplu, lncli addinvoice help vă va afișa opțiunile disponibile atunci când creați o factură.

  • lncli getinfo vă arată informații de bază despre nodul dvs.
  • lncli listchannels vă arată canalele pe care le aveți deschise în prezent și starea lor
  • Lncli getnetworkinfo vă arată sfera rețelei Lightning din punctul dvs. de vedere
  • lncli feereport vă arată cât de mult a câștigat nodul dvs. din plățile de rutare
  • lncli connect Dacă un canal de plată este offline sau inactiv, puteți încerca să vă conectați la coleg pentru a-l reînvia manual
  • Valoarea portofoliului lncli vă arată câte Satoshis dețineți în lanț
  • Lncli channelbalance vă arată câte Satoshis dețineți pe canale

8. Alternativă: Conectați Zap Zap Desktop

Zap este o interfață de utilizator pentru nodul Lightning care poate fi rulat pe computer. Dacă executați Lightning pe mașina dvs. locală, este banal să vă conectați. Dar dacă nodul dvs. este în cloud, va trebui să mai faceți câțiva pași.

Pentru ca acest pas să funcționeze, atât Bitcoind, cât și nodul dvs. lnd trebuie să fie sincronizate complet. Verificați dacă lnd este sincronizat cu comanda: lncli getinfo. Ar trebui să citească „sincronizat la lanț: adevărat”.

Dacă nu sunt sincronizate, asigurați-vă că Bitcoind rulează și sincronizează, fie verificând jurnalul cu tail -f /media/bitcoin/debug.log, fie rulând bitcoin-cli –getinfo și comparând înălțimea blocului cu un alt nod, sau verificând exploratorul de blocuri.

Descărcați Zap

Descărcați Zap pentru desktop aici. Am descărcat cea mai recentă versiune, care în exemplul nostru este v0.4.1 beta. Asigurați-vă că veți obține versiunea potrivită pentru sistemul dvs. de operare! Pentru Windows, adică ZapDesktop-win32-v0.4.1-beta.exe

Modifica lnd.conf

Deschideți fișierul nostru de configurare cu nano ~ / .lnd / lnd.conf

Modificați următoarele rânduri:

rpclisten = 0.0.0.0: 10009
tlsextraip =< adresa dvs. IP >
Salvați și închideți fișierul cu Ctrl + O și Ctrl + X

Opreste-l

Pentru ca modificările să intre în vigoare, reporniți lnd. Pentru a opri lnd, rulați lncli stop
Așteptați câteva secunde înainte de a începe din nou. Dacă aveți jurnalele deschise, puteți vedea când s-a oprit lnd. Puteți verifica, de asemenea, cu partea de sus

Ștergeți tls cheia și certificatul

Dacă ați făcut modificări la fișierul de configurare care afectează cheia Tls și certificatul, va trebui să le ștergeți. Faceți acest lucru cu comanda: rm ~ / .lnd / tls.cert și rm ~ / .lnd / tls.key

Pentru a începe din nou, executați lnd &>/ dev / nul și renunțat

Deschideți firewallul

Pentru a utiliza Zap, conectați-vă la nodul Lightning. Deschideți firewallul cu comanda: sudo ufw activez 10009 / tcp

Copiați peste certificatul macaroon și TLS

Pentru a autentifica aplicația și serverul, va trebui să copiați două fișiere (prezentate mai jos).

Zap va verifica dacă tasta TLS este corectă pentru a se asigura că este întotdeauna conectată la serverul corect (și nu la una care să o înțeleagă). Pentru a ști ce cheie TLS are dreptate, va trebui să îi spunem lui Zap certificatul TLS.

ferestre:

Deschideți un nou PowerShell cu comanda: scp ubuntu @< nodurile dvs. ip >: ~ / .lnd / tls.cert C: \ Users \ YourUserName \ Desktop \ pentru a copia certificatul tls pe desktop.

Folosiți comanda: scp ubuntu @< nodurile dvs. ip >: ~ / .lnd / data / chain / bitcoin / mainnet / admin.macaroon C: \ Users \ YourUserName \ Desktop \ pentru a copia macaroonul. Dacă doriți, îl puteți copia în orice folder cu ajutorul exploratorului.

Mac sau Linux:

Deschide un terminal nou și folosește comanda: scp ubuntu @< nodurile dvs. ip >: ~ / .lnd / tls.cert ~ / Desktop pentru a copia certificatul tls.

Folosiți comanda: scp ubuntu @< nodurile dvs. ip >: ~ / .lnd / data / chain / bitcoin / mainnet / admin.macaroon ~ / Desktop pentru a copia macaroon-ul. Puteți, de asemenea, să-l copiați în orice folder folosind Finder sau Fișiere.

Configurați Zap

Deschideți Zap fie făcând clic pe fișierul descărcat anterior sau găsindu-l în aplicații. Alegeți opțiunea Conectați-vă propriul nod în ecranul de pornire.

O captură de ecran a ecranului de conexiune Zap.

Apoi, introduceți adresa dvs. IP și calea către certificat.

ferestre:

Poate arăta astfel:
192.168.1.21:10009
C: \ Users \ numedeutilizator \ Desktop \ tls.cert
C: \ Users \ admin.macaroon numedeutilizator \ Desktop \

Mac sau Linux:

Poate arăta astfel:
192.168.1.21:10009
~ / Desktop / tls.cert
~ / Desktop / admin.macaroon

O captură de ecran a ecranului detaliilor conexiunii Zap.

Autentificare

După ce faceți clic pe Următor → și confirmând selecția dvs., ar trebui să fiți conectat la nodul dvs. Îți poți vedea soldul, precum și plățile recente.

8b. Alternativă: Conectați Zap iOS

Zap este o interfață de utilizator pentru nodul dvs. Lightning care este încă în alfa, dar vă puteți înscrie pentru a fi un tester aici. Îl puteți utiliza pentru a vă conecta de la distanță, pentru a vă verifica fondurile, pentru a deschide canale sau pentru a efectua și primi plăți.

Descărcați Zap pentru iOS

După ce v-ați alăturat ca tester, descărcați și instalați aplicația prin Testflight, instrumentul Apple pentru descărcarea software-ului de testare. Se va afișa apoi ca o aplicație obișnuită pe ecranul de domiciliu.

Descărcați lndconnect

Pentru a autentifica aplicația și serverul, va trebui să trecem datele de la serverul nostru la telefon. Când conectați Zap pe desktop, două fișiere sunt copiate pe mașina noastră, dar acest lucru nu este posibil pe un telefon. În schimb, utilizați un instrument numit lndconnect care va genera un cod QR pentru noi.

Descărcați lndconnect cu comanda:
accesați -d github.com/LN-Zap/lndconnect

Instalați lndconnect

Pentru a instala lndconnect, treceți în director cu ajutorul comenzii:
cd ~ / go / src / github.com / LN-Zap / lndconnect

Instalați programul cu marca && face instalare

Rulați lndconnect

Tastați conectarea în terminalul dvs. pentru a face să apară codul QR. Este posibil să fiți nevoit să micșorați un pic și să măriți fereastra cu Ctrl ++ (mențineți apăsat controlul și apăsați în plus semnul plus sau minus pentru a mări sau a micșora)

Conectați Zap

Deschideți aplicația Zap în telefon și faceți clic pe scanda atunci când este dată opțiunea. Scanați codul QR generat cu lndconnect.

Acum vă puteți vedea soldul, efectua și primi plăți și vă puteți gestiona canalele cu aplicația.

9. Opțional: Configurați Bitcoind prin Tor

Confidențialitatea este excelentă. Afacerea noastră Bitcoin este doar afacerea noastră și niciun Furnizor de servicii de internet sau guvern nu ar trebui să poată vedea cum o folosim.

Dar confidențialitatea este foarte bună și pentru securitate. Dacă ne putem ascunde activitatea Bitcoin, nu putem fi ușor vizați de organizațiile criminale. Și, dacă nodul nostru nu poate fi găsit, nu poate fi corupt sau alimentat cu ușurință informații false.

Instalați tor

Instalați rapid tor cu comanda: sudo apt install tor

Configurați tor

În primul rând, direcționați toate tranzacțiile Bitcoin prin rețeaua Tor. Apoi, permiteți tranzacțiile primite doar printr-un serviciu ascuns.

Pentru a face acest lucru, va trebui să creăm o parolă și hash-ul acesteia. Pentru a crea o parolă, utilizați managerul de parole (sau utilizați-o pe a noastră) pentru a genera o parolă aleatorie cu 30 de caractere cu litere mari, litere mici și numere.

Lipiți-l deocamdată într-un bloc de note, dar nu îl salvați.

Creați hash-ul său folosind tor cu comanda: tor –hash-parolă „yourpassword”

Lipiți deocamdată ieșirea într-un bloc de note.

Acum editați fișierul de configurare tor. Deschide-l cu comanda: sudo nano / etc / tor / torrc

Fișierul de configurare este deja scris anterior, dar totul este comentat (așa cum este indicat de liniile care încep cu # semne. Spre partea de jos a primei secțiuni, găsiți expresia #ControlPort 9051

Eliminați semnul #, astfel încât acesta să citească ControlPort 9051

De asemenea, eliminați semnele # din aceste două rânduri

HashedControlPassword < parola Dvs >
CookieAuthentication 1

Înlocuiți HashedControlPassword existent cu hash-ul obținut în pasul de mai sus. Acum ștergeți hash-ul din blocul de notițe.

Salvați și închideți noul fișier de configurare cu Ctrl + O și Ctrl + X

Reporniți tor cu comanda: repornirea serviciului sudo tor

Configurați Bitcoind

Introduceți fișierul de configurare Bitcoin cu nano ~ / .bitcoin / bitcoin.conf

Modificați fișierul cu următoarea configurație:

  • proxy = 127.0.0.1: 9050 (indică nodul Bitcoin către proxy Tor Socks, astfel încât toate datele să treacă prin tor)
  • asculta = 1 (va asculta conexiunile primite)
  • onlynet = ceapa (pentru a se conecta doar prin tor)
  • listenonion = 1 (va asculta conexiunile primite printr-o adresă de ceapă)
  • Discover = 0 (deci adresa noastră IP nu este difuzată)
  • torcontrol = 127.0.0.1: 9051 (arată nodul bitcoin cum să controleze Tor, de exemplu, pentru a crea un serviciu ascuns)
  • torpassword =< YourTorPassword > (modul în care nodul Bitcoin se va autentifica la nodul Tor)

Lipiți parola creată anterior, apoi închideți blocul de notițe.

Închideți editorul cu comenzile: Ctrl + O și Ctrl + X
Reporniți Bitcoind cu comanda: repornire bitcoind service sudo

Închideți portul

Portul 8333 Bitcoin nu mai trebuie deschis. Închideți-o cu comanda: sudo ufw refuză 8333 / tcp

Testează-ți configurarea cepei

Acum vă puteți conecta la nodurile cepei. Ar trebui să găsiți o listă cu astfel de noduri în wiki Bitcoin.

De exemplu, conectarea la nodul BlueMatt necesită comanda: bitcoin-cli addnode "nkf5e6b7pl4jfd4a.onion ”adaugă

Nodul dvs. Bitcoin se poate conecta la adrese IP obișnuite, dar acceptă doar conexiuni primite prin rețeaua Tor. Adresa dvs. de ceapă va apărea în jurnalele dvs. la pornire, în cazul în care doriți să vă conectați la ea în mod specific dintr-un alt nod pe care îl controlați. Puteți găsi, de asemenea, în partea de jos cu comanda bitcoin-cli getnetworkinfo