Как настроить домашний сервер и использовать его в качестве узла Биткойн

Что такое биткойн-узел?


Это руководство требует, чтобы вы использовали интерфейс командной строки, или CLI, и клиент SSH. SSH (Secure Shell) – это популярный инструмент для безопасного «удаленного управления» устройствами. В принципе, он работает аналогично VPN, за исключением того, что вы получаете доступ к компьютеру, а не ко всему интернету..

Contents

Windows

Windows 10 имеет собственный интерфейс командной строки, хотя он может быть не установлен по умолчанию. Чтобы установить это:

  1. Перейти к настройки > Программы
  2. щелчок Управление дополнительными функциями под приложениями & функции

Если на вашем компьютере установлен SSH-клиент, он должен появиться здесь. Если нет, вы можете добавить его, нажав Добавить функцию а потом OpenSSH клиент. Не устанавливайте сервер OpenSSH.

Чтобы использовать SSH-клиент, сначала необходимо открыть PowerShell, что можно сделать, щелкнув правой кнопкой мыши меню «Пуск» или нажав Windows + X, а затем выбрав PowerShell..

После запуска PowerShell вы вводите SSH, чтобы быть готовым.

Mac OS

Откройте терминал с помощью Spotlight, Launch Pad или Finder..

Linux

Откройте командную строку с помощью Ctrl + Alt + T

Полезные советы при использовании командной строки

  • Копировать / вставить: стандартные Ctrl + C и Ctrl + V не будут работать в командной строке, но вы можете использовать вместо них Ctrl + Shift + C и Ctrl + Shift + V. Вы также можете использовать указатель мыши, чтобы выделить текст, а затем скопировать / вставить его, щелкнув правой кнопкой мыши область, которую вы пометили. Часто вы также можете вставить контент, нажав среднюю клавишу или колесо на коврике для мыши или мыши.
  • С использованием вверх вниз стрелки на вашей клавиатуре позволят вам просматривать недавно выполненные команды, что очень полезно, если все, что вам нужно, это изменить маленькую опечатку.
  • Используйте Ctrl + C, чтобы преждевременное прекращение команда, которая застряла. Это также выведет вас из большинства меню или программ.
  • Командная строка также немного похожа на одномерный файловый менеджер. Используйте команду ls, чтобы увидеть, какие файлы существуют в текущей папке, или cd, чтобы перейти в конкретный каталог. cd .. переместит один каталог вниз, а cd ~ / вернется в домашнюю папку.

Скриншот командной строки.

  • Посмотрите, какие диски в настоящее время подключены и насколько они используются с опцией df -h.
  • Вы можете использовать кнопку Tab для автозаполнения многих экземпляров, например, при выборе папки для перемещения с помощью cd, копирования с помощью cp, перемещения с помощью mv или удаления с помощью rm. Ввод cd d с последующим нажатием кнопки Tab автоматически заполняет папку, начиная с d, если она существует. Если есть несколько папок, начинающихся с d, вы можете снова нажать кнопку Tab, чтобы увидеть полный список.

Скриншот командной строки.

Получить виртуальный частный сервер

Подойдет любой сервер. Без особых усилий вы даже можете переоборудовать старый ноутбук или использовать мини-компьютер примерно за 100 долларов США. Теоретически достаточно даже такого маленького компьютера, как Raspberry Pi..

В нашем случае мы будем арендовать виртуальный частный сервер (VPS) у Lunanode. Мы выбрали Lunanode, потому что относительно легко зарегистрироваться без идентификации – он принимает биткойны – и это надежно. Еще одна отличная альтернатива – Cryptohost (который даже берет Lightning!). Более дорогой, но требующий меньше личной информации для регистрации – Njal.la.

Кроме того, вы также можете выбрать одного из крупных провайдеров, таких как AWS, Digital Ocean или Rackspace..

Зарегистрироваться

Чтобы зарегистрироваться в Lunanode, вам необходимо подтвердить свой адрес электронной почты и номер телефона, затем выбрать свою страну и выбрать пароль. Вы можете сразу же внести биткойн на свою учетную запись, чтобы начать оплачивать свой сервер, или ввести кредитную карту, чтобы автоматически выставлять вам счета..

ценообразование

Мы рекомендуем сервер m2 за 7 долларов в месяц. В целях майнинга биткойнов мы добавим 80 ГБ хранилища на дополнительные 2,7 доллара в месяц.

Найдите свой ключ SSH

  • В Windows, использовать клиент SSH (см. выше).
    1. Если вы впервые используете SSH-клиент, введите ssh-keygen -o -b 4096 -t rsa в командной строке, чтобы сгенерировать ключ.
    2. После того, как вы сгенерировали ключ или если у вас уже есть ключ, найдите его в C: \ Users \ YourUserName \ .ssh \ id_rsa.pub
    3. Откройте этот файл с помощью блокнота и добавьте его на панель Lunanode.
  • В Mac OS, откройте терминал с помощью Spotlight, Launch Pad или Finder
    1. Создайте ключ SSH с помощью команды: ssh-keygen -o -b 4096 -t rsa
    2. Затем вы можете найти свой SSH-ключ в ~ / .ssh / id_rsa.pub
    3. Откройте этот файл с помощью блокнота и добавьте его на панель Lunanode..
  • В Linux, открыть терминал с помощью команды: Ctrl + Alt + T
    1. Создайте SSH с помощью команды: ssh-keygen -o -b 4096 -t rsa
    2. Затем вы можете найти свой SSH-ключ в ~ / .ssh / id_rsa.pub
    3. Откройте этот файл с помощью блокнота и добавьте его на панель Lunanode..

Добавьте свой SSH ключ

На панели инструментов Lunanode найдите параметр «Ключи SSH» с левой стороны. Дайте вашему SSH-ключу имя и вставьте содержимое вашего блокнота полностью в поле открытого ключа, затем нажмите «Добавить SSH Keypair». Затем он должен появиться в списке..

Запустите свой сервер

Чтобы создать виртуальную машину, нажмите «Создать ВМ» в верхнем левом углу панели инструментов Lunanode. Выберите местоположение, план и операционную систему, затем выберите имя хоста. В нашем случае это Toronto, m2 на Ubuntu 18.04 (64 бит), и мы назвали его Torontola. Вам также нужно добавить свою пару ключей, чтобы вы могли безопасно войти.

Войдите на свой сервер

Под «виртуальной машиной» вы должны увидеть свой экземпляр сейчас. Нажмите на его имя, и вы увидите, среди прочего, его внешний IP-адрес. Вы можете войти на свой сервер, открыв окно терминала и введя команду:

ssh ubuntu @

например: ssh [email protected]

Поскольку это ваш первый вход в систему, вам, скорее всего, сообщат, что подлинность вашего хоста не может быть подтверждена. Введите yes, чтобы добавить свой компьютер в список доверенных устройств. Вы будете предупреждены снова, если ключ изменится.

Настройте свой сервер

Настройте простой брандмауэр для защиты сервера. Ufw (несложный брандмауэр) должен быть предварительно установлен на вашем компьютере. Проверьте, установлен ли он или включен, набрав sudo ufw status

Если в ответ вы не видите сообщение «Статус», вы можете установить его с помощью sudo apt install ufw

Что более важно, включите SSH для удаленного входа на нашу машину. Пропустите этот шаг, если у вас есть прямой доступ к серверу, то есть вы можете подключить к нему монитор и клавиатуру. Если вы не можете, вы должны включить SSH с помощью sudo ufw allow ssh

Теперь включите брандмауэр с помощью sudo ufw enable

Обновите свой сервер

Убедитесь, что ваш сервер обновлен, запустив команды sudo apt update и sudo apt upgrade.

Теперь все готово! Следующие шаги описывают, как настроить узел Биткойн.

***

Это похоже на какое-то электрическое соединение с логотипом Биткойн.

Как настроить свой собственный биткойн-узел

Включает полный узел, Lightning, поддержку Tor, Zap Desktop и кошелек iOS, ejabberd и BTCPay Server.

1. Добавьте том сервера

Для начала подготовьте сервер для майнинга биткойнов.

В левой части панели Lunanode вы найдете опцию Volume.

Вы должны увидеть это сразу в своем списке томов. Нажмите «Управление» и «Присоединиться к ВМ». Убедитесь, что виртуальная машина, к которой вы ее подключаете, является правильной (если вы приобрели дополнительное хранилище, используйте эту).

Мы оставим драйвер диска по умолчанию «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 (позволяет позже записывать данные на этот диск как пользователь ubuntu по умолчанию)

Вернитесь к нашему обычному пользователю (безопаснее), набрав команду exit

Наш сервер теперь готов стать узлом биткойн!

2. Установите и настройте Bitcoind

Войдите на сервер (или войдите на сервер).

Установить биткойн

Чтобы установить Bitcoind, вам сначала нужно добавить репозиторий Bitcoin:

sudo add-apt-repository ppa: биткойн / биткойн

Подтвердите выбор, обновите менеджер пакетов с помощью sudo apt update

Установите Bitcoind с помощью команды: sudo apt install bitcoind

Создайте простой файл конфигурации

Синхронизируйте биткойны в нашем томе, который требует добавления строки в файл конфигурации. Вы также можете удалить его, что означает ограничение размера цепочки блоков, сохраняя только последние блоки на диске..

Обрезка позволяет нам экономить место и стоимость хранения. Создайте каталог биткойнов с помощью команды: mkdir .bitcoin (точка важна)

Затем файл конфигурации с командой: nano ~ / .bitcoin / bitcoin.conf

Теперь скопируйте / вставьте в него следующее:
каталогу_данный = / медиа / Биткойн
демон = 1
сливовый = 70000

Сохраните файл с помощью клавиш Ctrl + O и закройте окно командой: Ctrl + X

Запустить Биткойн

Запустите Bitcoind с помощью команды bitcoind

Вы должны получить ответ «Запуск сервера Биткойн». Чтобы увидеть, что делает ваш узел Биткойн, вы можете запустить команду tail -f /media/bitcoin/debug.log

Вы также можете открыть новое окно терминала SSH на своем компьютере и оставить это окно открытым, если хотите. Это даст вам простой обзор всего. Вы можете выйти из окна, одновременно удерживая клавиши Ctrl + C.

Проверь на своем компьютере

Проверьте состояние нашего узла также, набрав bitcoin-cli –getinfo

В приведенном ниже примере вы видите, что мы синхронизировали 388 343 блока (из ~ 566 000) и подключены к 16 узлам.

Скриншот команды терминала.

Запустите команду top в любое время, чтобы увидеть, сколько ресурсов потребляется. Это также может быть полезно при просмотре, если процесс все еще выполняется. Ниже мы видим, что Биткойн потребляет большую часть нашей памяти, но сравнительно мало ЦП.

Скриншот терминала.

Сейчас … подожди

Синхронизация биткойнов займет некоторое время. Здесь лучше сделать паузу и продолжить позже. Вы можете периодически проверять свой узел, используя команду bitcoin-cli –getinfo или просматривая журналы, используя tail -f /media/bitcoin/debug.log

Дополнительно: открытые порты

Разрешить входящие подключения к нашему будущему узлу Биткойн с помощью sudo ufw allow 8333 / tcp

Открытые порты помогают сети, поскольку она создает больше места для подключения других.

Дополнительно: купить дополнительное время процессора

Синхронизация вашего узла в первый раз может потребовать значительных ресурсов процессора. В админ-панели Lunanode перейдите к «Виртуальные машины», нажмите на свой сервер, затем на «CPU».

Измените параметр «Нет» на «Да» в разделе «Оплата использования ЦП выше базовой производительности?». Полная синхронизация узла Биткойн не должна стоить более 4 долларов США..

3. Загрузите и установите Go

Мы примерно следуем руководству по установке, найденному на Lightning Network Github, с учетом экземпляра Lunanode, который у нас уже есть. Мы постараемся обновлять наше руководство, но если вы обнаружите какие-либо непредвиденные ошибки, возможно, стоит проверить там, если что-то изменилось.

Скачать 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, затем прокрутите вниз и вставьте туда.

Сохраните и закройте nano, нажав кнопки Ctrl + O и Ctrl + X

Проверьте, правильно ли установлен go

Проверьте, правильно ли установлен Go, введя go version
Ожидайте вывод: go версия go1.11.5 linux / amd64

4. Установите lnd

Предпосылки

Загрузите необходимое перед началом установки.

Запустите команду: sudo apt-get install -y build-essential
Убедитесь, что Git установлен. Если нет, установите его с помощью sudo apt install git

Скачать lnd

Чтобы установить lnd, загрузите код: get -d github.com/lightningnetwork/lnd

Установить lnd

Перейдите в каталог lnd с помощью команды: cd ~ / go / src / github.com / lightningnetwork / lnd

Обычно рекомендуется придерживаться последней версии, а не обновлять ее до последней версии на master. Проверьте, какая последняя версия lnd здесь. В нашем случае это версия v0.5.2-бета. Мы «проверим» эту версию командой
git fetch –tags
git checkout v0.5.2-beta

Наконец, установите lnd с помощью команды: make && сделать установку

Теперь вернитесь в домашнюю папку с помощью cd ~ /

Проверьте, правильно ли установлен lnd

Теперь вы сможете увидеть, установлен ли lnd, набрав lnd –version и lncli –version

Следует прочитать версию 0.5.2-бета commit = v0.5.2-бета

Настроить lnd

Создайте файл конфигурации для lnd. Создайте каталог с помощью mkdir ~ / .lnd

Отредактируйте его прямо сейчас, используя nano ~ / .lnd / lnd.conf

Скриншот терминала.

Не забудьте заполнить синие поля своей информацией! Вы можете свободно выбирать имя и цвет для своего узла.

Найдите свой IP-адрес на панели инструментов Lunanode (если это то, что вы используете для своего сервера).

Вам понадобится имя пользователя и пароль для следующего шага. Для простоты было бы неплохо избегать специальных символов.

# [Параметры приложения]
псевдоним =< название вашего узла >
цвет =< ваш любимый цвет в шестнадцатеричном >

# [Биткойн]
bitcoin.active = 1
bitcoin.mainnet = 1
bitcoin.node = bitcoind

bitcoind.rpchost = 127.0.0.1
bitcoind.rpcuser =< ваш логин >
bitcoind.rpcpass =< ваш пароль >

bitcoind.zmqpubrawblock = ТСР: //127.0.0.1: 28332
bitcoind.zmqpubrawtx = ТСР: //127.0.0.1: 28333

# [LND]
externalip =< твой ip >

Настроить биткойн

Нам нужно будет внести некоторые изменения в Биткойн. Мы откроем файл конфигурации с помощью nano ~ / .bitcoin / bitcoin.conf

Нам нужно будет добавить следующие строки:
rpcuser =< ваш логин >
rpcpassword =< ваш пароль >
zmqpubrawblock = ТСР: //127.0.0.1: 28332
zmqpubrawtx = ТСР: //127.0.0.1: 28333

Сохраните и закройте файл конфигурации с помощью Ctrl + O и Ctrl + X и перезапустите Bitcoind с помощью sudo service bitcoind restart

5. Запустите lnd и создайте кошелек

Предпосылки

Чтобы начать этот шаг, убедитесь, что Bitcoind полностью синхронизирован и готов. Проверьте это, выполнив команду: bitcoin-cli –getinfo и сравните значение блоков с помощью проводника блоков, например Blockstream.info..

Высота блока, отображаемая в проводнике блоков, должна совпадать с выводом «блоков» нашей команды. Если число, показанное проводником блоков, больше, узел еще не синхронизирован.

Используйте tail -f /media/bitcoin/debug.log, чтобы увидеть логи. Это также покажет, когда был создан последний блок и прогресс синхронизации. Наш узел будет синхронизирован до этой даты.

Скриншот терминала.

Запустить lnd

Запустите lnd, введя lnd в свой терминал. Кроме того, вы также можете попробовать ~ / go / bin / lnd

Это похоже на вывод ниже? Отлично, все идет по плану. Если вы видите сообщение об ошибке, убедитесь, что биткойн запущен, или вернитесь к шагу, который, как указывает сообщение об ошибке, неверен. Все ли файлы конфигурации правильные?

Скриншот из терминала

Когда ваш вывод будет похож на приведенный выше, закройте lnd снова, нажав клавиши Ctrl + C

Запустите lnd в фоновом режиме с помощью команды: lnd &>/ DEV / нуль

Введите disown, чтобы убедиться, что задача все еще выполняется, даже если она вышла из системы или терминал закрыт.

Необязательно: Наблюдайте за lnd через журналы отладки.

Откройте новый терминал, верните SSH на сервер и откройте журналы lnd, чтобы получить представление о том, что происходит в фоновом режиме..

Это довольно интересно, но также предупредит вас, если что-то пойдет не так. В новом окне терминала введите: tail -f ~ / .lnd / logs / bitcoin / mainnet / lnd.log

Оставьте этот вид в любое время, нажав Ctrl + C

Создать кошелек

Пока lnd работает в фоновом режиме, выполните команду: lncli create

Введите пароль кошелька, затем подтвердите его.

Затем нас спрашивают, есть ли у нас существующая мнемоника семени шифра. Поскольку это новый узел Lightning (в отличие от того, который восстанавливается), мы будем использовать n

При желании вы можете зашифровать семя шифра – хорошая идея, если вы храните семя в месте, доступном для других (под вашим матрасом), – но вы должны помнить ключ шифрования.

Мы решили не шифровать семя в этом примере. Ниже зашифрованное семя затемнено.

Терминальный скриншот семени шифра.

Разблокировать свой кошелек

Если вы создали новый кошелек, он должен автоматически разблокироваться. Если что-то пошло не так или вы перезапускаете lnd, вам нужно разблокировать свой кошелек с помощью команды: lncli unlock

Синхронизация

Так как это первый запуск lnd, нам нужно его синхронизировать.

6. Откройте канал

Если вы предпочитаете покинуть командную строку на этом этапе, перейдите к следующему шагу и подключите Zap Desktop или Zap iOS к вашему узлу. Затем вы можете открывать каналы и совершать платежи внутри аккуратного пользовательского интерфейса..

Убедитесь, что lnd запущен и синхронизирован

Сделайте это с помощью команды: lncli getinfo. Следует читать синхронизировано с цепочкой: правда.

Если он не синхронизирован, нам нужно убедиться, что Bitcoind запущен и синхронизирован, например, запустив bitcoin-cli –getinfo и сравнив текущую высоту блока нашего узла с высотой блока проводника..

Проверьте журналы, в которых работают Bitcoind (tail -f /media/ubuntu/bitcoin/debug.log) и lnd (tail -f ~ / .lnd / lnd.log).

Внесите монеты в свой узел

Создайте новый адрес с помощью команды: lncli newaddress p2wkh

На выходе должно быть что-то вроде BC1 …

Теперь вы можете отправить Биткойн на этот адрес, скопировав / вставив адрес в свой биткойн-кошелек. Если ваш кошелек как-то не может отправить на адрес в формате BC1 …, вы также можете сгенерировать старый адрес, начинающийся с «3», используя команду: lncli newaddress np2wkh

Проверьте баланс в любое время с помощью команды: lncli walletbalance

Он покажет как подтвержденный, так и неподтвержденный баланс в сатоши. 1 биткойн – это 100 миллионов сатоши.

Подключиться к узлу

На следующем шаге мы подключимся к узлу. Может быть, у вас уже есть узел для подключения или знакомый с работающим узлом Lightning. Вы также можете выбрать один из популярных узлов, перечисленных на 1ml.com

URI узла Lightning выглядит следующим образом: 033[email protected]74.108.13.152: 9735

Он содержит открытый ключ узла перед @, затем его IP или доменное имя и порт.

Подключитесь к этому узлу с помощью команды: lncli connect [033[email protected]74.108.13.152: 9735]

При успешном подключении выход должен быть просто открытым и закрытым скобками без сообщения об ошибке.

Открыть канал

После подтверждения депозита в биткойн-блокчейне откройте канал. Вы можете открыть канал с узлом, связанным с вышеуказанным, но настоятельно рекомендуется подключиться к разнородной группе узлов. Вы также можете открыть каналы с несколькими узлами.

Мы откроем канал с помощью команды: lncli openchannel 0331f80652fb840239df8dc99205792bba2e559a05469915804c08420230e23c7c 200000, где длинная строка, начинающаяся с 0331, является открытым ключом другого узла, а число 200 000 представляет сумму средств, которые мы хотим ден вложить в этот канал, в ден.

Как только ваш канал будет успешно открыт, вы получите транзакцию финансирования. Когда эта транзакция будет подтверждена в блокчейне, ваш канал будет открыт и активен. До тех пор это будет показано под ожидающие каналы.

Как правило, для активации вашего канала потребуется три подтверждения..

Скриншот открытого канала в Терминале.

Совершить платеж

Для осуществления платежа вам потребуется исходящая ликвидность (иметь средства в каналах с другими узлами). Для этого все, что вам нужно, это внести биткойн в ваш узел и открыть каналы в сети..

В идеале эти каналы напрямую связаны с контрагентами, с которыми вы заключаете сделку, или с хорошо связанными узлами в сети..

Вы всегда можете проверить свой узел с помощью команды: lncli getinfo

Ваш узел всегда должен быть синхронизирован с цепочкой, и у вас должен быть хотя бы один активный канал.

Счет на молнию выглядит так: lnbc10u1pwfxg42pp553wyha3ag66tn40zls69eeaeq0cyluj6ja54sygp7vh50gcy0rnsdqlxycrqvpqwdshgueqvfjhggr0dcsry7qcqzysyrmxj0554vrg4ej2we83m8n7rxj94s8c5a8rwjud07ptc6dw7j2hr42sxt7lnazglku3pfe9jkl8f0gupkuz7jly5xnq35qr202jwwqqy8qs9a

Расшифруйте его командой: lncli decodepayreq [Счет за молнию]

Это покажет сумму, где происходит платеж, и когда счет истекает.

Скриншот полученного платежа в Терминале.

Для осуществления оплаты мы будем использовать команду: lncli payinvoice [Счет за молнию]

После подтверждения суммы и пункта назначения, узел попытается произвести платеж. После того, как платеж будет успешным, будет получена информация о платеже, такая как перелеты и сборы..

Получить платеж

Для получения платежей вам потребуется входящая ликвидность. Поощряйте других открывать каналы с вами (со временем, когда ваш узел остается в сети, это произойдет автоматически).

Каждый раз, когда вы делаете платеж через свои каналы, вы также автоматически освобождаете входящую ликвидность. Например, если вы внесете 10 долларов США в свой узел, откроете канал и сделаете платеж на сумму более 2 долларов США, у вас сразу же будет 2 доллара на входящую емкость..

Чтобы получить платеж, сгенерируйте счет. Счет-фактура имеет следующий формат: lncli addinvoice –memo «memo» –amt –expiry < время истечения в секундах >

Например, мы можем запустить lncli addinvoice –memo «для VPN-сервисов» –amt 90000 – expiry 3600 для счета-фактуры в 90 000 сатоши, действительного в течение одного часа.

Результат будет включать 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 показывает, сколько сатоши у вас есть в сети
  • lncli channelbalance показывает, сколько сатоши у вас есть в каналах

8. Альтернатива: подключите Zap Desktop

Zap – это пользовательский интерфейс для узла Lightning, который может работать на вашем компьютере. Если вы используете Lightning на своем локальном компьютере, подключиться к нему тривиально. Но если ваш узел находится в облаке, вам нужно сделать еще несколько шагов.

Чтобы этот шаг работал, ваша биткойна и ваш lnd-узел должны быть полностью синхронизированы. Проверьте, синхронизируется ли lnd с помощью команды: lncli getinfo. Должно быть написано «синхронизировано с цепочкой: правда».

Если они не синхронизированы, убедитесь, что Bitcoind запущен и синхронизирован, либо проверив журнал с помощью tail -f /media/bitcoin/debug.log, либо запустив bitcoin-cli –getinfo и сравнив высоту блока с другим узлом, или проверив проводник блока.

Скачать 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, запустите lncli stop
Подождите несколько секунд, прежде чем начать снова. Если у вас есть открытые журналы, вы можете увидеть, когда lnd выключился. Вы также можете проверить с верхней

Удалить ключ и сертификат TLS

Если вы внесли изменения в файл конфигурации, которые влияют на ключ и сертификат tls, их необходимо удалить. Сделайте это с помощью команды: rm ~ / .lnd / tls.cert и rm ~ / .lnd / tls.key

Чтобы начать снова, запустите lnd &>/ dev / null и отречься

Откройте брандмауэр

Чтобы использовать Zap, установите входящие соединения с нашим узлом Lightning. Откройте брандмауэр с помощью команды: sudo ufw enable 10009 / tcp

Скопируйте миндальное печенье и сертификат TLS

Для аутентификации приложения и сервера вам необходимо скопировать два файла (показано ниже).

Zap проверит, является ли ключ 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 ~ / Desktop для копирования макарунов. Вы также можете скопировать его в любую папку, используя Finder или Files.

Настроить 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.

Авторизоваться

После нажатия на следующий и подтвердив свой выбор, вы должны войти в свой узел. Вы можете увидеть свой баланс, а также ваши последние платежи.

8б. Альтернатива: подключите Zap iOS

Zap – это пользовательский интерфейс для вашего узла Lightning, который все еще находится в альфа-версии, но вы можете зарегистрироваться, чтобы стать тестером здесь. Вы можете использовать его для удаленного подключения, проверки своих средств, открытия каналов или осуществления платежей..

Скачать Zap для iOS

После того, как вы присоединились в качестве тестера, загрузите и установите приложение с помощью Testflight, инструмента Apple для загрузки программного обеспечения для тестирования. Затем он будет отображаться как обычное приложение на главном экране.

Скачать 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 в своем телефоне и нажмите сканирование когда предоставляется вариант. Сканирование QR-кода, созданного с помощью lndconnect.

Теперь вы можете видеть свой баланс, совершать и получать платежи, а также управлять своими каналами с помощью приложения..

9. Необязательно: настройка биткойна через Tor

Конфиденциальность отличная. Наш биткойн-бизнес является исключительно нашим бизнесом, и ни один интернет-провайдер или правительство не должны видеть, как мы его используем.

Но конфиденциальность также отлично подходит для безопасности. Если мы сможем скрыть свою активность в биткойнах, нас не смогут легко преследовать преступные организации. И, если наш узел не может быть найден, он не может быть легко поврежден или выдан ложная информация.

Установить тор

Быстрая установка tor с помощью команды: sudo apt install tor

Настроить тор

Сначала направьте все транзакции Биткойн через сеть Tor. Тогда разрешите входящие транзакции только через скрытый сервис.

Для этого нам нужно будет создать пароль и его хеш. Чтобы создать пароль, используйте ваш менеджер паролей (или используйте наш), чтобы сгенерировать случайный пароль длиной более 30 символов с заглавными буквами, строчными буквами и цифрами..

Вставьте его сейчас в блокнот, но не сохраняйте.

Создайте его хеш с помощью tor с помощью команды: tor –hash-password «ваш пароль»

Вставьте вывод в блокнот на данный момент.

Теперь отредактируйте файл конфигурации 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

Исправьте файл со следующей конфигурацией:

  • proxy = 127.0.0.1: 9050 (указывает биткойн-узел на прокси Tor Socks, чтобы все данные проходили через tor)
  • listen = 1 (будет прослушивать входящие соединения)
  • onlynet = лук (только для подключения через тор)
  • 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 ”add

Ваш биткойн-узел все еще может подключаться к обычным IP-адресам, но принимать только входящие подключения через сеть Tor. Ваш луковый адрес будет отображаться в ваших журналах при запуске, если вы захотите подключиться к нему специально с другого узла, которым вы управляете. Вы также можете найти его в самом низу с помощью команды bitcoin-cli getnetworkinfo

Kim Martin Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map