홈 서버를 설정하고이를 비트 코인 노드로 사용하는 방법

비트 코인 노드 란??

이 안내서에서는 명령 행 인터페이스 또는 CLI 및 SSH 클라이언트를 사용해야합니다. SSH (Secure Shell)는 장치를 안전하게 “원격 제어”하는 데 널리 사용되는 도구입니다. 원칙적으로 전체 인터넷이 아닌 컴퓨터에 액세스 할 수 있다는 점을 제외하면 VPN과 유사하게 작동합니다..

윈도우

Windows 10에는 기본 명령 줄 인터페이스가 있지만 기본적으로 설치되어 있지 않을 수 있습니다. 설치하려면 :

  1. 이동 설정 > 앱
  2. 딸깍 하는 소리 선택적 기능 관리 앱에서 & 풍모

시스템에 SSH 클라이언트가 설치되어 있으면 여기에 나타납니다. 그렇지 않은 경우 클릭하여 추가 할 수 있습니다 기능 추가 그리고 OpenSSH 클라이언트. OpenSSH 서버를 설치하지 마십시오.

SSH 클라이언트를 사용하려면 먼저 시작 메뉴를 마우스 오른쪽 단추로 클릭하거나 Windows + X를 누른 다음 PowerShell을 선택하여 PowerShell을 열어야합니다..

PowerShell을 시작하면 SSH를 입력하여 준비하십시오..

맥 OS

Spotlight, Launch Pad 또는 Finder로 터미널을 엽니 다..

리눅스

Ctrl + Alt + T를 사용하여 명령 행을여십시오.

명령 줄을 사용할 때 유용한 팁

  • 복사 / 붙여 넣기 : 표준 Ctrl + C 및 Ctrl + V는 명령 줄에서 작동하지 않지만 대신 Ctrl + Shift + C 및 Ctrl + Shift + V를 사용할 수 있습니다. 마우스 포인터를 사용하여 텍스트를 선택한 다음 표시 한 영역을 마우스 오른쪽 단추로 클릭하여 복사 / 붙여 넣기 할 수도 있습니다. 마우스 패드 나 마우스의 가운데 키나 휠을 클릭하여 내용을 붙여 넣을 수도 있습니다..
  • 사용하여 위아래 키보드의 화살표를 사용하면 최근에 실행 한 명령을 탐색 할 수 있습니다. 이는 작은 오타를 변경하는 것만으로도 매우 유용합니다..
  • Ctrl + C를 사용하여 중단하다 붙어있는 명령. 또한 대부분의 메뉴 나 프로그램에서 벗어날 수 있습니다..
  • 명령 행은 1 차원 파일 탐색기와도 비슷합니다. ls 명령을 사용하여 현재 폴더에 어떤 파일이 있는지 확인하거나 cd를 사용하여 특정 디렉토리로 이동하십시오. cd ..는 한 디렉토리 아래로 이동하고 cd ~ /는 홈 폴더로 돌아갑니다..

명령 줄의 스크린 샷

  • 현재 연결되어있는 드라이브와 df -h 옵션에 얼마나 많은 드라이브가 사용되는지 확인.
  • 예를 들어 cd로 이동하거나 cp로 복사, mv로 이동 또는 rm으로 삭제하는 폴더를 선택할 때 탭 단추를 사용하여 많은 인스턴스를 자동 완성 할 수 있습니다. cd d 다음에 Tab 버튼을 누르면 d로 시작하는 폴더가 있으면 자동으로 완성됩니다. d로 시작하는 폴더가 여러 개인 경우 Tab 버튼을 다시 눌러 전체 목록을 볼 수 있습니다.

명령 줄의 스크린 샷

가상 사설 서버 확보

모든 서버가 할 것입니다. 적은 노력으로 오래된 랩톱을 변환하거나 약 100 USD의 미니 PC를 사용할 수도 있습니다. 라즈베리 파이처럼 작은 컴퓨터라도 이론적으로 충분할 것입니다.

이 경우 Lunanode에서 가상 사설 서버 (VPS)를 임대합니다. 우리는 Lunanode를 선택했습니다. Bitcoin을 허용하지 않고 식별없이 비교적 쉽게 가입 할 수 있고 신뢰할 수 있기 때문입니다. 또 다른 훌륭한 대안은 Cryptohost입니다 (심지어 Lightning!). Njal.la는 가격이 적게 들지만 가입에 필요한 개인 정보가 더 적습니다..

또는 AWS, Digital Ocean 또는 Rackspace와 같은 대규모 제공 업체 중 하나를 선택할 수도 있습니다..

가입하기

Lunanode에 가입하려면 이메일 주소와 전화 번호를 확인한 다음 국가를 선택하고 비밀번호를 선택해야합니다. Bitcoin을 계정에 즉시 입금하여 서버 지불을 시작하거나 신용 카드를 입력하여 자동 청구.

가격

매월 7 USD에 m2 서버를 권장합니다. 비트 코인 채굴을 위해 월 2.7 USD에 80GB의 스토리지를 추가합니다..

SSH 키 찾기

  • 윈도우, SSH 클라이언트 사용 (위 참조).
    1. SSH 클라이언트를 처음 사용하는 경우 명령 행에 ssh-keygen -o -b 4096 -t rsa를 입력하여 키를 생성하십시오..
    2. 키를 생성했거나 이미 키가 있으면 C : \ Users \ YourUserName \ .ssh \ id_rsa.pub에서 키를 찾으십시오.
    3. 메모장으로이 파일을 열고 Lunanode 패널에 추가하십시오.
  • 맥 OS, Spotlight, Launch Pad 또는 Finder로 터미널을 엽니 다
    1. 다음 명령으로 SSH 키를 작성하십시오. ssh-keygen -o -b 4096 -t rsa
    2. ~ / .ssh / id_rsa.pub에서 SSH 키를 찾을 수 있습니다.
    3. 메모장으로이 파일을 열고 Lunanode 패널에 추가하십시오..
  • 리눅스, 다음 명령으로 터미널을 엽니 다. Ctrl + Alt + T
    1. 다음 명령으로 SSH를 작성하십시오. ssh-keygen -o -b 4096 -t rsa
    2. ~ / .ssh / id_rsa.pub에서 SSH 키를 찾을 수 있습니다.
    3. 메모장으로이 파일을 열고 Lunanode 패널에 추가하십시오..

SSH 키 추가

Lunanode 대시 보드의 왼쪽에서 “SSH 키”옵션을 찾으십시오. SSH 키의 이름을 지정하고 메모장의 내용을 공개 키 필드에 완전히 붙여 넣은 다음 “Add SSH Keypair”를 클릭하십시오. 그러면 목록에 나타납니다..

서버를 시작하십시오

가상 머신을 생성하려면 Lunanode 대시 보드의 왼쪽 상단에서“Create VM (VM 생성)”을 클릭하십시오. 위치, 계획 및 운영 체제를 선택한 다음 호스트 이름을 결정하십시오. 우리의 경우, 그것은 Ubuntu 18.04 (64 비트)의 토론토, m2이며 토론토라는 이름을 지정했습니다. 안전하게 로그인 할 수 있도록 키 페어를 추가해야합니다.

서버에 로그인

“가상 머신”아래에 인스턴스가 표시됩니다. 이름을 클릭하면 외부 IP 주소가 표시됩니다. 터미널 창을 열고 다음 명령을 입력하여 서버에 로그인 할 수 있습니다.

ssh 우분투 @

예를 들면 다음과 같습니다. ssh [email protected]

첫 번째 로그인이므로 호스트의 진위를 확인할 수 없다는 메시지가 표시 될 수 있습니다. 신뢰할 수있는 장치 목록에 시스템을 추가하려면 예를 입력하십시오. 키가 변경되면 다시 경고 메시지가 표시됩니다.

서버 구성

서버를 보호하기 위해 간단한 방화벽을 설정하십시오. 컴퓨터에 Ufw (복잡한 방화벽)가 사전 설치되어 있어야합니다. sudo ufw status를 입력하여 설치 또는 활성화되었는지 확인

응답으로 “상태”메시지가 표시되지 않으면 sudo apt install ufw를 사용하여 설치할 수 있습니다.

더 중요한 것은 SSH를 사용하여 시스템에 원격으로 로그인 할 수있게하는 것입니다. 서버에 직접 액세스 할 수 있으면이 단계를 건너 뛰십시오. 모니터와 키보드를 서버에 꽂을 수 있습니다. 할 수 없다면 sudo ufw allow ssh로 SSH를 활성화해야합니다

이제 sudo ufw enable로 방화벽을 켜십시오.

서버 업데이트

sudo apt update 및 sudo apt upgrade 명령을 실행하여 서버가 최신 상태인지 확인하십시오..

이제 모두 준비되었습니다! 다음 단계는 비트 코인 노드를 설정하는 방법을 설명합니다.

***

Bitcoin 로고가있는 일종의 전기 접점처럼 보입니다.

자신의 비트 코인 노드를 설정하는 방법

전체 노드, Lightning, Tor 지원, Zap Desktop 및 iOS 지갑, ejabberd 및 BTCPay 서버 포함.

1. 서버 볼륨 추가

시작하려면 비트 코인 채굴을위한 서버 준비.

Lunanode 패널의 왼쪽에는 볼륨 옵션이 있습니다..

볼륨 목록에서 즉시 볼 수 있습니다. “Manage (관리)”및“Attach to VM (VM에 연결)”을 클릭하십시오. 연결 한 가상 머신이 올바른지 확인하십시오 (추가 스토리지를 구매 한 경우 해당 머신 사용).

기본 디스크 드라이버는 “virtio”로 유지합니다.

터미널에서 서버에 로그인 한 후 sudo fdisk -l 명령을 실행하여 볼륨 이름을 확인할 수 있습니다. / dev / vdc와 동일 할 가능성이 높습니다

볼륨을 서버에 영구적으로 연결하려면 일시적으로 수퍼 유저가 되십시오. 다음 명령을 실행하여 수퍼 유저가 되십시오. sudo -i

사용자 이름이 이제 root @ torontola로 변경되며 sudo없이 다음 명령을 실행할 수 있습니다.

mkfs.ext4 / dev / vdc (빈 드라이브 포맷)
mkdir / media / bitcoin (마운트 포인트를 만듭니다)
mount / dev / vdc / media / bitcoin (마운트 지점에 장치를 마운트)
echo ‘/ dev / vdc / media / bitcoin ext4 기본값 0 2’ >> / etc / fstab (마운트 지점을 영구적으로 만듭니다)
chown -R ubuntu / media / bitcoin (나중에 기본 우분투 사용자로이 드라이브에 데이터를 쓸 수 있음)

exit를 입력하여 일반 사용자 (safer)로 돌아갑니다.

우리 서버는 이제 비트 코인 노드가 될 준비가되었습니다!

2. Bitcoind 설치 및 구성

서버에 로그인 (또는 로그인 상태 유지).

비트 코인 설치

Bitcoind를 설치하려면 먼저 Bitcoin 리포지토리를 추가해야합니다.

sudo add-apt-repository ppa : 비트 코인 / 비트 코인

선택을 확인하고 sudo apt 업데이트로 패키지 관리자를 업데이트하십시오.

다음 명령을 사용하여 Bitcoind를 설치하십시오. sudo apt install bitcoind

간단한 설정 파일 만들기

추가 된 볼륨에 비트 코인을 동기화하려면 구성 파일에 라인을 추가해야합니다. 또한 잘라 내고 싶을 수도 있습니다. 즉, 최신 블록 만 디스크에 보관하여 블록 체인의 크기를 제한합니다..

정리를 통해 스토리지 공간과 비용을 절약 할 수 있습니다. mkdir .bitcoin 명령으로 비트 코인 디렉토리를 만듭니다 (점은 중요합니다).

그런 다음 nano ~ / .bitcoin / bitcoin.conf 명령을 사용하여 구성 파일

이제 다음을 복사하여 붙여 넣습니다.
datadir = / 미디어 / 비트 코인
데몬 = 1
자두 = 70000

Ctrl + O 키로 파일을 저장하고 다음 명령으로 창을 닫으십시오. Ctrl + X

비트 코인 시작

bitcoind 명령으로 Bitcoind를 시작하십시오

“Bitcoin server starting”이라는 응답이 표시되어야합니다. Bitcoin 노드가 수행하는 작업을 보려면 tail -f /media/bitcoin/debug.log 명령을 실행하십시오.

또한 새 터미널 창을 열고 시스템에 SSH를 연결하고 원하는 경우이 창을 열어 둘 수 있습니다. 모든 것에 대한 쉬운 개요를 제공합니다. Ctrl + C 키를 동시에 눌러 창을 종료 할 수 있습니다.

컴퓨터에서 확인

bitcoin-cli –getinfo를 입력하여 노드의 상태를 확인하십시오.

아래 예에서, ~ 566,000의 388,343 블록을 동기화했으며 16 명의 피어에 연결되어 있음을 알 수 있습니다.

터미널 명령의 스크린 샷

사용중인 자원 수를 보려면 언제든지 top 명령을 실행하십시오. 프로세스가 여전히 실행 중인지 확인할 때 유용 할 수 있습니다. 아래에서 Bitcoind가 대부분의 메모리를 사용하지만 상대적으로 적은 CPU를 사용하고 있음을 알 수 있습니다.

터미널의 스크린 샷.

자 … 기다려

비트 코인을 동기화하는 데 시간이 걸립니다. 여기서 일시 중지하고 나중에 계속하는 것이 가장 좋습니다. bitcoin-cli –getinfo 명령을 사용하거나 tail -f /media/bitcoin/debug.log를 사용하여 로그를 관찰하여 주기적으로 노드를 다시 확인할 수 있습니다.

선택 사항 : 열린 포트

sudo ufw allow 8333 / tcp를 사용하여 미래의 Bitcoin 노드에 들어오는 연결 허용

개방형 포트는 다른 사람들이 연결할 수있는 더 많은 공간을 제공하므로 네트워크에 도움이됩니다.

선택 사항 : 추가 CPU 시간 구매

처음으로 노드를 동기화하는 것은 CPU를 많이 사용합니다. Lunanode 관리자 패널에서 “Virtual Machines”로 이동하여 서버를 클릭 한 다음 “CPU”를 클릭하십시오.

“기본 성능 이상의 CPU 사용률을 지불 하시겠습니까?”에서 옵션을“아니요”에서“예”로 변경하십시오..

3. Go 다운로드 및 설치

우리는 이미 가지고있는 Lunanode 인스턴스에 맞게 Lightning Network Github에있는 설치 안내서를 거의 따르고 있습니다. 가이드를 최신 상태로 유지하려고하지만 예상치 못한 오류가 발생하면 변경 사항이 있는지 확인하는 것이 좋습니다..

Go 다운로드

다음 명령으로 Go 코드를 다운로드하십시오. wget https://dl.google.com/go/go1.11.5.linux-amd64.tar.gz

sha256sum go1.11.5.linux-amd64.tar.gz |를 입력하여 데이터가 올바른지 확인하십시오. awk -F " " ‘{print $ 1}’

이것은 다운로드 한 데이터의 SHA256 해시를 보여줍니다. 우리는 출력이 ff54aafedff961eb94792487e827515da683d61a5f9482f668008832631e5d25 일 것으로 예상합니다

Go 설치

파일은 zip 파일과 유사하게 압축되어 제공됩니다. 압축 풀기 홈 디렉토리 tar -C ~ / -xzf go1.11.5.linux-amd64.tar.gz로 이동하십시오.

sudo mv ~ / go / usr / local을 사용하여 더 적절한 장소에 복사하십시오.

다음으로 서버에 Go 코드를 찾을 수있는 곳을 알려주십시오. 기계마다 다를 수 있습니다. 우리의 경우 :

GOROOT == usr / local / go 내보내기
수출 GOPATH = $ HOME / go
내보내기 PATH = $ GOPATH / bin : $ GOROOT / bin : $ PATH

이것을 영구적으로 만들려면 행을 .bashrc 파일에 추가하십시오. nano ~ / .bashrc를 사용하여 파일을 연 다음 맨 아래로 스크롤하여 붙여 넣습니다..

Ctrl + O 및 Ctrl + X 버튼을 눌러 nano를 저장하고 닫습니다.

go가 제대로 설치되었는지 확인

go 버전을 입력하여 Go가 제대로 설치되었는지 테스트
출력 예상 : go 버전 go1.11.5 linux / amd64

4. lnd 설치

전제 조건

설치를 시작하기 전에 필수 사항 다운로드.

다음 명령을 실행하십시오. sudo apt-get install -y build-essential
힘내가 설치되어 있는지 확인하십시오. 그렇지 않은 경우 sudo apt install git으로 설치하십시오.

다운로드 lnd

lnd를 설치하려면 코드를 다운로드하십시오. go -d github.com/lightningnetwork/lnd

lnd 설치

cd ~ / go / src / github.com / lightningnetwork / lnd 명령을 사용하여 lnd 디렉토리로 이동하십시오.

일반적으로 마스터의 최신 코드로 업데이트하는 대신 최신 릴리스를 사용하는 것이 좋습니다. 최신 lnd 릴리스가 무엇인지 확인하십시오. 우리의 경우 버전은 v0.5.2- 베타입니다. 다음 명령으로이 버전을 “체크 아웃”합니다.
자식 패치-태그
자식 체크 아웃 v0.5.2- 베타

마지막으로, 다음 명령으로 lnd를 설치하십시오 : make && 설치하다

이제 cd ~ /를 사용하여 홈 폴더로 돌아갑니다.

lnd가 제대로 설치되었는지 확인

lnd –version 및 lncli –version을 입력하여 lnd가 설치되어 있는지 확인할 수 있습니다.

버전 0.5.2- 베타 커밋 = v0.5.2- 베타를 읽어야합니다.

lnd 구성

lnd에 대한 구성 파일을 작성하십시오. mkdir ~ / .lnd로 디렉토리를 만드십시오.

nano ~ / .lnd / lnd.conf를 사용하여 즉시 편집

터미널의 스크린 샷.

자신의 정보로 파란색 필드를 채우는 것을 잊지 마십시오! 노드의 이름과 색상을 자유롭게 선택할 수 있습니다.

Lunanode 대시 보드에서 IP 주소를 찾으십시오 (서버에 사용중인 경우)..

다음 단계를 위해 사용자 이름과 비밀번호가 필요합니다. 단순성을 위해 특수 문자를 사용하지 않는 것이 좋습니다..

# [응용 프로그램 옵션]
별명 =< 노드 이름 >
색 =< 16 진수로 좋아하는 색 >

# [비트 코인]
bitcoin.active = 1
bitcoin.mainnet = 1
bitcoin.node = 비트 코인

bitcoind.rpchost = 127.0.0.1
bitcoind.rpcuser =< 당신의 사용자 이름 >
bitcoind.rpcpass =< 너의 비밀번호 >

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

# [LND]
externalip =< 당신의 IP >

비트 코인 구성

Bitcoind를 약간 수정해야합니다. nano ~ / .bitcoin / bitcoin.conf를 사용하여 구성 파일을 엽니 다.

다음 줄을 추가해야합니다.
rpcuser =< 당신의 사용자 이름 >
rpcpassword =< 너의 비밀번호 >
zmqpubrawblock = tcp : //127.0.0.1 : 28332
zmqpubrawtx = tcp : //127.0.0.1 : 28333

Ctrl + O 및 Ctrl + X를 사용하여 구성 파일을 저장하고 닫은 후 sudo 서비스를 사용하여 Bitcoind를 다시 시작하십시오.

5. lnd를 시작하고 지갑을 만듭니다

전제 조건

이 단계를 시작하려면 Bitcoind가 완전히 동기화되고 준비되었는지 확인하십시오. bitcoin-cli –getinfo 명령을 실행하여이를 테스트하고 블록 값을 블록 탐색기와 비교하십시오 (예 : Blockstream.info)..

블록 익스플로러가 표시하는 블록 높이는 명령의 “블록”출력과 동일해야합니다. 블록 탐색기에 표시된 숫자가 더 크면 노드가 아직 동기화되지 않은 것입니다.

tail -f /media/bitcoin/debug.log를 사용하여 로그를보십시오. 또한 마지막 블록이 생성 된 시간과 동기화 진행률이 표시됩니다. 노드가이 날짜까지 동기화됩니다.

터미널의 스크린 샷.

런칭

터미널에 lnd를 입력하여 lnd를 시작하십시오. 또는 ~ / go / bin / lnd를 사용해보십시오

아래 출력처럼 보입니까? 좋아요, 모든 것이 계획대로 진행됩니다. 오류 메시지가 표시되면 Bitcoin이 실행 중인지 확인하거나 오류 메시지가 제안하는 단계로 돌아갑니다. 모든 구성 파일이 올바 릅니까?

터미널 스크린 샷

출력이 위와 같으면 Ctrl + C 키를 눌러 lnd를 다시 닫습니다.

lnd 명령을 사용하여 백그라운드에서 lnd를 영구적으로 실행하십시오. &>/ dev / null

로그 아웃했거나 터미널이 닫혀 있어도 작업을 계속 실행하려면 disown을 입력하십시오..

선택 사항 : 디버그 로그를 통해 lnd를 관찰하십시오.

새 터미널을 열고 SSH를 서버에 다시 넣고 lnd 로그를 열어 백그라운드에서 무슨 일이 일어나고 있는지 잘 알 수 있습니다..

흥미롭지 만 문제가 발생하면 알려줍니다. 새 터미널 창에서 다음을 입력하십시오. tail -f ~ / .lnd / logs / bitcoin / mainnet / lnd.log

Ctrl + C를 눌러 언제든지이보기를 그대로 두십시오

지갑 만들기

lnd가 백그라운드에서 실행되는 동안 다음 명령을 실행하십시오. lncli create

지갑 비밀번호를 입력 한 후 확인.

다음으로 기존 암호 시드 니모닉이 있는지 묻습니다. 이것이 새로운 Lightning 노드이므로 (복원되는 노드가 아닌) n을 사용합니다.

선택적으로 암호 시드를 암호화 할 수 있습니다. 매트리스를 통해 다른 사람이 접근 할 수있는 위치에 시드를 저장하는 것이 좋습니다. 그러나 암호화 키를 기억해야합니다.

이 예에서는 시드를 암호화하지 않기로 선택합니다. 아래에서 암호 시드가 검게 표시됩니다..

암호 시드의 터미널 스크린 샷.

지갑을 잠금 해제

새 지갑을 만든 경우 자동으로 잠금 해제되어 있어야합니다. 문제가 발생했거나 lnd를 다시 시작하는 경우 다음 명령으로 지갑을 잠금 해제해야합니다. lncli unlock

lnd 동기화

lnd를 시작하는 것은 이번이 처음이므로 동기화해야합니다..

6. 채널을여십시오

이 시점에서 명령 줄을 그대로 두려면 다음 단계로 이동하여 Zap Desktop 또는 Zap iOS를 노드에 연결하십시오. 그런 다음 깔끔한 사용자 인터페이스 내에서 채널을 열고 결제 할 수 있습니다.

lnd가 실행 중이고 동기화되어 있는지 확인

lncli getinfo 명령으로이를 수행하십시오. 읽어야한다 체인에 동기화 : true.

동기화되지 않은 경우, 예를 들어 bitcoin-cli –getinfo를 실행하고 노드의 현재 블록 높이와 블록 탐색기의 현재 높이를 비교하여 Bitcoind가 실행되고 동기화되어 있는지 확인해야합니다..

Bitcoind (tail -f /media/ubuntu/bitcoin/debug.log) 및 lnd (tail -f ~ / .lnd / lnd.log)가 실행중인 로그를 확인하십시오..

당신의 노드에 동전을 입금

다음 명령으로 새 주소를 생성하십시오. lncli newaddress p2wkh

출력은 다음과 같아야합니다 bc1…

이제 주소를 비트 코인 지갑에 복사 / 붙여 넣기하여 비트 코인을이 주소로 보낼 수 있습니다. 지갑이 어떻게 든 형식으로 주소를 보낼 수없는 경우 bc1…, lncli newaddress np2wkh 명령을 사용하여 ‘3’으로 시작하는 레거시 주소를 생성 할 수도 있습니다.

lncli walletbalance 명령을 사용하여 언제든지 잔액을 확인하십시오.

Satoshi의 확인 된 잔고와 확인되지 않은 잔고를 모두 보여줍니다. 1 비트 코인은 1 억 Satoshi입니다.

노드에 연결

다음 단계에서는 노드에 연결합니다. 어쩌면 이미 번개 노드를 실행하는 친구에게 연결하거나 알고있는 노드가있을 수 있습니다. 1ml.com에 나열된 인기 노드 중 하나를 선택할 수도 있습니다.

번개 노드의 URI는 다음과 같습니다. 0331f80652fb840239df8dc99205792bba2e559a05469915804c08420230e23c7c@74.108.13.152 : 9735

@ 앞에있는 노드의 공개 키, IP 또는 도메인 이름 및 포트를 포함합니다..

다음 명령을 사용하여이 노드에 연결하십시오. lncli connect [0331f80652fb840239df8dc99205792bba2e559a05469915804c08420230e23c7c@74.108.13.152 : 9735]

성공적으로 연결되면 출력은 단순히 오류 메시지없이 개방형 및 폐쇄 형 브래킷이어야합니다..

채널 열기

비트 코인 블록 체인에 입금이 확인되면 채널을 엽니 다. 위와 연결된 노드로 채널을 열 수 있지만 다양한 노드 그룹에 연결하는 것이 좋습니다. 여러 노드가있는 채널을 여는 것도 환영합니다.

lncli openchannel 0331f80652fb840239df8dc99205792bba2e559a05469915804c08420230e23c7c 200000에서 0331로 시작하는 긴 문자열은 다른 노드의 공개 키이고 숫자 200000은이 채널에 넣을 자금의 양을 나타내는 사토시로 표시됩니다..

채널이 성공적으로 열리면 자금 거래가 이루어집니다. 이 거래가 블록 체인에서 확인되면 채널이 열려 활성화됩니다. 그때까지는 아래에 표시됩니다 대기중인 채널.

일반적으로 채널이 활성화 되려면 세 가지 확인이 필요합니다..

터미널에서 열린 채널의 스크린 샷

지불하다

지불을하려면, 유동성이 필요합니다 (다른 노드와 채널에 자금이 있어야 함). 이를 위해 Bitcoin을 노드에 입금하고 네트워크를 통해 채널을 열면됩니다..

이상적으로,이 채널은 거래하는 상대방과 직접 연결되거나 네트워크의 연결된 노드에 직접 연결됩니다..

lncli getinfo 명령으로 항상 노드를 확인할 수 있습니다.

노드는 항상 체인에 동기화되어야하며 하나 이상의 활성 채널이 있어야합니다.

번개 송장은 다음과 같습니다. lnbc10u1pwfxg42pp553wyha3ag66tn40zls69eeaeq0cyluj6ja54sygp7vh50gcy0rnsdqlxycrqvpqwdshgueqvfjhggr0dcsry7qcqzysyrmxj0554vrg4ej2we83m8n7rxj94s8c5a8rwjud07ptc6dw7j2hr42sxt7lnazglku3pfe9jkl8f0gupkuz7jly5xnq35qr202jwwqqy8qs9a

lncli decodepayreq [Lightning invoice] 명령으로이를 디코딩하십시오.

금액, 결제 장소 및 송장이 만료되는시기가 표시됩니다..

터미널에서받은 지불의 스크린 샷.

결제하려면 다음 명령을 사용하십시오. lncli payinvoice [Lightning invoice]

금액과 목적지를 확인한 후 노드는 지불을 시도합니다. 결제가 완료되면 홉 및 수수료와 같은 결제 정보가 수신됩니다..

지불 받기

지불을 받으려면 유동성이 필요합니다. 다른 사람들이 나와 함께 채널을 열도록 장려하십시오 (시간이 지남에 따라 노드가 온라인 상태를 유지하면 자동으로 발생 함).

채널을 통해 결제 할 때마다 유입 유동성이 자동으로 해제됩니다. 예를 들어, 노드에 10 USD를 입금하고 채널을 열고 2 USD를 초과하여 결제하면 즉시 2 USD의 수신 용량을 갖게됩니다.

지불을 받으려면 송장을 생성하십시오. 송장은 lncli addinvoice –memo“a memo”–amt –expiry 형식을 따릅니다. < 만료 시간 (초) >

예를 들어, 1 시간 동안 유효한 90,000 개의 Satoshi 송장에 대해 lncli addinvoice –memo“VPN 서비스의 경우”–amt 90000-만료 3600을 실행할 수 있습니다.

결과는 r_hash, ㅏ pay_req 그리고 add_index. pay_req는 전달할 수있는 인보이스입니다..

터미널에서 지불 요청의 스크린 샷.

지불 확인

lncli listinvoices 명령으로 발행 된 송장 및 해당 상태를 참조하십시오. 아래에서 ‘결제’가 false로 설정되어있어 위에서 발행 한 인보이스가 아직 지불되지 않은 것을 확인할 수 있습니다..

터미널 결제 스크린 샷.

7. lnd와 함께 유용한 명령

lnd에서 가장 유용한 명령은 lncli help입니다. 사용 가능한 모든 명령이 나열됩니다. “help”라는 단어를 추가하여 각 명령에 대한 추가 정보를 얻으십시오. 예를 들어, lncli addinvoice help는 송장 작성시 사용 가능한 옵션을 표시합니다..

  • lncli getinfo는 노드에 대한 기본 정보를 보여줍니다
  • lncli listchannels는 현재 열려있는 채널과 그 상태를 보여줍니다
  • lncli getnetworkinfo는 사용자의 관점에서 Lightning 네트워크의 범위를 보여줍니다.
  • lncli feereport는 귀하의 노드가 라우팅 지불에서 얻은 금액을 보여줍니다
  • lncli connect 결제 채널이 오프라인이거나 비활성 상태 인 경우 수동으로 복구하기 위해 피어에 연결을 시도 할 수 있습니다
  • lncli walletbalance는 체인에 얼마나 많은 Satoshis가 있는지 보여줍니다
  • lncli channelbalance는 채널에 얼마나 많은 Satoshi가 있는지 보여줍니다

8. 대안 : Zap Desktop 연결

Zap은 컴퓨터에서 실행할 수있는 Lightning 노드 용 사용자 인터페이스입니다. 로컬 컴퓨터에서 Lightning을 실행하는 경우 연결하기가 쉽지 않습니다. 그러나 노드가 클라우드에 있으면 몇 가지 단계를 더 수행해야합니다..

이 단계가 작동하려면 Bitcoind와 lnd 노드가 모두 완전히 동기화되어야합니다. lnd가 lncli getinfo 명령과 동기화되었는지 확인하십시오. “chained to chain : true”로 표시되어야합니다.

동기화되지 않은 경우 tail -f /media/bitcoin/debug.log로 로그를 확인하거나 bitcoin-cli –getinfo를 실행하고 블록 높이를 다른 노드와 비교하여 Bitcoind가 실행 및 동기화되어 있는지 확인하십시오. 또는 블록 탐색기를 확인하여.

Zap 다운로드

데스크톱 용 Zap을 여기에서 다운로드하십시오. 예를 들어 v0.4.1 베타 인 최신 릴리스를 다운로드했습니다. 운영 체제에 적합한 버전을 확보하십시오! Windows의 경우 ZapDesktop-win32-v0.4.1-beta.exe입니다.

lnd.conf 수정

nano ~ / .lnd / lnd.conf로 구성 파일을 엽니 다.

다음 줄을 수정하십시오.

rpclisten = 0.0.0.0 : 10009
tlsextraip =< 귀하의 IP 주소 >
Ctrl + O 및 Ctrl + X를 사용하여 파일을 저장하고 닫습니다.

lnd 중지

변경 사항을 적용하려면 lnd를 다시 시작하십시오. lnd를 중지하려면 lncli stop을 실행하십시오.
다시 시작하기 전에 몇 초 동안 기다리십시오. 로그가 열려 있으면 lnd가 종료 된시기를 확인할 수 있습니다. 당신은 또한 상단으로 확인할 수 있습니다

tls 키 및 인증서 삭제

tls 키 및 인증서에 영향을주는 구성 파일을 변경 한 경우 해당 파일을 삭제해야합니다. rm ~ / .lnd / tls.cert 및 rm ~ / .lnd / tls.key 명령을 사용하십시오.

다시 시작하려면 lnd를 실행하십시오. &>/ dev / null 및 disown

방화벽을여십시오

Zap을 사용하려면 Lightning 노드에 들어오는 연결을 만드십시오. 다음 명령으로 방화벽을여십시오 : sudo ufw enable 10009 / tcp

마카롱 및 TLS 인증서를 통해 복사

앱과 서버를 인증하려면 두 개의 파일을 복사해야합니다 (아래 참조)..

Zap은 TLS 키가 올바른 서버에 연결되어 있는지 확인하기 위해 TLS 키가 올바른지 확인합니다. 올바른 TLS 키를 확인하려면 Zap에 TLS 인증서를 알려야합니다..

윈도우 :

다음 명령으로 새 PowerShell을 엽니 다. scp ubuntu @< 당신의 노드 IP >: ~ / .lnd / tls.cert C : \ Users \ YourUserName \ Desktop \ tls 인증서를 데스크탑에 복사.

다음 명령을 사용하십시오. scp ubuntu @< 당신의 노드 IP >: ~ / .lnd / data / chain / bitcoin / mainnet / admin.macaroon C : \ Users \ YourUserName \ Desktop \ 마카롱을 복사하십시오. 원하는 경우 탐색기를 사용하여 폴더에 복사 할 수 있습니다.

Mac 또는 Linux :

새 터미널을 열고 다음 명령을 사용하십시오. scp ubuntu @< 당신의 노드 IP >: ~ / .lnd / tls.cert ~ / tls 인증서를 복사 할 데스크탑.

다음 명령을 사용하십시오. scp ubuntu @< 당신의 노드 IP >: ~ / .lnd / data / chain / bitcoin / mainnet / admin.macaroon ~ / 마카롱을 복사 할 데스크탑. Finder 또는 파일을 사용하여 폴더에 복사 할 수도 있습니다.

Zap 구성

앞서 다운로드 한 파일을 클릭하거나 응용 프로그램에서 파일을 찾아 Zap을 엽니 다. 옵션을 선택하십시오 자신의 노드를 연결 시작 화면에서.

Zap 연결 화면의 스크린 샷

그런 다음 IP 주소와 인증서 경로를 입력하십시오..

윈도우 :

이것은 다음과 같이 보일 수 있습니다 :
192.168.1.21:10009
C : \ Users \ 사용자 이름 \ Desktop \ tls.cert
C : \ Users \ 사용자 이름 \ Desktop \ admin.macaroon

Mac 또는 Linux :

이것은 다음과 같이 보일 수 있습니다 :
192.168.1.21:10009
~ / Desktop / tls.cert
~ / Desktop / admin.macaroon

Zap 연결 정보 화면의 스크린 샷

로그인

클릭 후 다음 선택을 확인하면 노드에 로그인해야합니다. 최근 결제뿐만 아니라 잔액도 확인할 수 있습니다.

8b. 대안 : Zap iOS 연결

Zap은 Lightning 노드의 사용자 인터페이스로 아직 알파 상태이지만 여기서 테스터로 가입 할 수 있습니다. 이를 사용하여 원격으로 연결하거나 자금을 확인하고 채널을 열거 나 지불을 할 수 있습니다.

iOS 용 Zap 다운로드

테스터로 가입 한 후 테스트 소프트웨어 다운로드를위한 Apple의 도구 인 Testflight를 통해 앱을 다운로드하여 설치하십시오. 그런 다음 홈 화면에 일반 앱으로 표시됩니다.

lndconnect 다운로드

앱과 서버를 인증하려면 서버에서 전화로 데이터를 전달해야합니다. 데스크톱에서 Zap을 연결하면 두 파일이 컴퓨터로 복사되지만 전화로는 불가능합니다. 대신 lndconnect라는 도구를 사용하여 QR 코드를 생성하십시오..

다음 명령으로 lndconnect를 다운로드하십시오 :
-d github.com/LN-Zap/lndconnect로 이동하십시오

lndconnect 설치

lndconnect를 설치하려면 다음 명령을 사용하여 디렉토리로 이동하십시오.
cd ~ / go / src / github.com / LN-Zap / lndconnect

make로 프로그램을 설치하십시오 && 설치하다

lndconnect 실행

단말기에 lndconnect를 입력하여 QR 코드를 표시하십시오. Ctrl + +를 사용하여 비트를 약간 축소하고 창을 확대해야 할 수도 있습니다.

Zap 연결

휴대 전화에서 Zap 앱을 열고 클릭 주사 옵션이 주어지면. lndconnect로 생성 된 QR 코드 스캔.

이제 앱을 통해 잔액을보고, 결제하고, 채널을 관리 할 수 ​​있습니다.

9. 옵션 : Tor를 통한 비트 코인 구성

프라이버시는 훌륭합니다. 우리의 비트 코인 사업은 전적으로 우리 사업이며, 인터넷 서비스 제공 업체 나 정부는 우리가 그것을 어떻게 사용하는지 볼 수 없습니다.

그러나 프라이버시는 보안에도 좋습니다. Bitcoin 활동을 숨길 수 있으면 범죄 조직이 쉽게 대상을 지정할 수 없습니다. 노드를 찾을 수 없으면 쉽게 손상되거나 잘못된 정보를 제공 할 수 없습니다.

토르 설치

다음 명령으로 tor을 빠르게 설치하십시오 : sudo apt install tor

토르 구성

먼저 모든 비트 코인 거래를 Tor 네트워크를 통해 라우팅하십시오. 그런 다음 숨겨진 서비스를 통해서만 들어오는 트랜잭션을 허용하십시오..

이를 위해서는 비밀번호와 해시를 만들어야합니다. 비밀번호를 만들려면 비밀번호 관리자를 사용하거나 대문자를 사용하여 대문자, 소문자 및 숫자가 포함 된 30 자 이상의 임의 비밀번호를 생성하십시오..

메모장에 지금 붙여 넣지 만 저장하지 마십시오..

tor –hash-password“yourpassword”명령으로 tor을 사용하여 해시를 만듭니다.

출력물을 메모장에 붙여 넣기.

이제 tor 구성 파일을 편집하십시오. 다음 명령으로여십시오 : sudo nano / etc / tor / torrc

구성 파일은 이미 미리 작성되었지만 모든 내용은 주석 처리됩니다 (# 기호로 시작하는 줄로 표시됨). 첫 번째 섹션의 맨 아래로 #ControlPort 9051 구를 찾으십시오.

# 기호를 제거하여 ControlPort 9051을 읽습니다.

또한이 두 줄에서 # 기호를 제거하십시오.

HashedControlPassword < 너의 비밀번호 >
CookieAuthentication 1

기존 HashedControlPassword를 위 단계에서 얻은 해시로 바꾸십시오. 이제 메모장에서 해시를 삭제하십시오..

Ctrl + O 및 Ctrl + X를 사용하여 새 구성 파일을 저장하고 닫습니다.

다음 명령으로 tor을 다시 시작하십시오. sudo service tor restart

비트 코인 구성

nano ~ / .bitcoin / bitcoin.conf를 사용하여 Bitcoin 구성 파일을 입력하십시오.

다음 구성으로 파일을 수정하십시오.

  • proxy = 127.0.0.1 : 9050 (Bitcoin 노드가 Tor Socks 프록시를 가리 키므로 모든 데이터가 전송됩니다)
  • listen = 1 (수신 연결 청취)
  • onlynet = onion (토르를 통해서만 연결)
  • listenonion = 1 (양파 주소를 통해 들어오는 연결을 수신합니다)
  • discover = 0 (따라서 우리의 IP 주소는 방송되지 않습니다)
  • torcontrol = 127.0.0.1 : 9051 (비트 코인 노드에 Tor를 제어하는 ​​방법 (예 : 숨겨진 서비스 생성)을 보여줍니다)
  • torpassword =< YourTorPassword > (비트 코인 노드가 Tor 노드에 자신을 인증하는 방법)

앞에서 만든 비밀번호를 붙여 넣은 다음 메모장을 닫습니다..

Ctrl + O 및 Ctrl + X 명령을 사용하여 편집기를 닫으십시오.
다음 명령으로 Bitcoind를 다시 시작하십시오. sudo service bitcoind restart

포트를 닫습니다

비트 코인 포트 8333을 더 이상 열 필요가 없습니다. 다음 명령으로 닫으십시오 : sudo ufw deny 8333 / tcp

양파 설정 테스트

이제 양파 노드에 연결할 수 있습니다. 비트 코인 위키에서 그러한 노드의 목록을 찾아야합니다.

예를 들어 BlueMatt의 노드에 연결하려면 bitcoin-cli addnode 명령이 필요합니다. "nkf5e6b7pl4jfd4a.onion”추가

Bitcoin 노드는 여전히 일반 IP 주소에 연결할 수 있지만 Tor 네트워크를 통한 들어오는 연결 만 수락합니다. 제어하는 다른 노드에서 연결하려는 경우 양파 주소가 시작시 로그에 표시됩니다. bitcoin-cli getnetworkinfo 명령을 사용하여 맨 아래에서 찾을 수도 있습니다.