Ноды для новичков
Что такое ноды и зачем они нужны?
Нода - узел подключенный к сети (будь то блокчейн или какая-либо другая сеть).
Ноды выполняют различные функции, от обработки блоков, до поддержания безопасности сети. В нашей необъятной крипте существует множество блокчейнов и блокчейн-приложений, которые нуждаются в нодах и валидаторах для различных задач. Обычно для того чтобы проект запустился без критических ошибок команда проводит тестовые сети для их выявления, а пользователю, который помогал проекту на протяжении какого-то количества времени, могут выдать награды за проделанную работу.
Для запуска ноды нужно оборудование, ни в коем случае не ставьте ноду на своем домашнем пк (если у вас не сервер конечно), так как тестнет может идти не один месяц. Для этого нам понадобятся сервера (преимущественно на Linux(Ubuntu), на которых мы и будет запускать ноды.
Сервера
Для того чтобы поставить ноду нам обязательно нужен хостинг, где мы возьмем сервер, данный вопрос не универсален, для разных нод нужны разные сервера, в основном нам будут нужны либо VPS, либо VDS (в редких случаях DS).
Для того чтобы определиться какой сервер нам арендовать нужно посмотреть требования к серверу в документации проекта, нужно понимать, что если проект построен на PoS, то в большинстве своем нам нужны будут VPS, в отличие от PoW, где нам потребуется более дорогостоящие VDS или DS, все из-за риска бана от хостинга из-за майнера на VPS, происходит это из-за типа виртуализации, но в это вдаваться нам нет смысла, просто нужно знать основные правила -
VPS = в большинстве своем PoS.
VDS или DS = PoW.
Арендовать сервер можно на одном из предоставленных хостингов.
Hetzner - немецкий хостинг (не принимает ру карты), работает с 1997 года, дают €20 за регистрацию.
Digital Ocean - (не принимает ру карты), американский хостинг есть бесплатный период пользования, дают $200 на 2 месяца за регистрацию.
VDSINA - ру хостнг поддерживает пополнение криптой, и всеми другими способами оплаты.
Zomro - ру хостинг (принимает крипту и ру карты).
Copertino - ру хостинг (принимает крипту и ру карты), можно снимать сервера посуточно.
Vultr - дают $100 на сервера за регистрацию.
SSH и SFTP клиент
Для подключения к серверу нам понадобятся программы, через которые это нужно делать. Нам нужен:
SSH клиент - программа, которая позволяет удаленно управлять сервером посредством SSH протокола.
SFTP клиент - программа для передачи файлов по SFTP протоколу (в основном нужно для бэкапа файлов с ноды).
В данных программах нет ничего сложного, давайте рассмотрим подробнее какие есть программы.
SSH клиенты - PuTTY, MobaXterm, Termius. (конечно существует большое множество других программ)
SFTP клиенты - в большинстве вышеперечисленных программах уже встроен SFTP клиент, однако вот небольшой список из других программ, нацеленных именно на эту задачу - FileZilla, WinSCP, FreeFTP и другие.
Давайте рассмотрим на примере программы MobaXterm как подключиться к серверу:
После установки программы нас встречает такой интерфейс. Нажимаем в левом верхнем углу на вкладку "Session".
В открывшемся окне выбираем первый пункт "SSH"
Вводим IP сервера и логин (обычно на всех хостингах по умолчанию логином является "root"), после нажимаем "OK".
У нас откроется консоль сервера, где нужно ввести пароль (когда вы вводите пароль он не будет показываться), после нажимаем клавишу ENTER.
Нам предложит сохранить пароль, нажимаем "YES".
Поздравляю! Вы подключились к своему серверу! Слева вы также можете наблюдать файловую систему своего сервера, это и есть встроенный в MobaXterm SFTP клиент.
Командная строка
В данном деле можно обойтись без глубоких знаний программирования и Linux, однако знать базовые команды для понимания происходящего желательно. Данную тему можно развивать бесконечно, но я затрону лишь малую часть.
Мы столкнемся с терминалом Linux (Ubuntu).
Горячие клавиши
Ctrl + Shift + V или Shift + Insert (или клик правой кнопкой мыши) - вставить из буфера обмена
Это не все горячие клавиши, на данном сайте предоставлено больше.
Основные команды
sudo - выполнить команду от имени суперпользователя.
sudo команда
cd - команда позволяет переходить из одной директории в другую.
cd /путь/путь/путь
mkdir - команда для создания директории.
mkdir директория
Также директории можно создавать по путям
mkdir /путь/путь/директория
touch - команда для создания файла
touch file.txt
Также файлы можно создавать по путям
touch /путь/путь/file.txt
mv - команда для перемещения и переименования файлов и директорий
mv dir /путь/путь/dir1 mv file /путь/путь/dir2
Если директории "dir2" не существует, то при команде
mv dir1 dir2
"dir1" будет переименован в "dir2"
rm - для удаления файлов, для удаления каталога
rm -rf /путь/путь/
wget - команда для загрузки файлов
wget ссылка
curl - команда загрузки файлов, но с более богатым функционалом, нежели wget
curl ссылка
echo - команда для отображения строк
echo Hello, world!
apt - набор утилит для установки, удаления, обновления, поиска пакетов в Linux
sudo apt update
cat - команда для просмотра содержимого файла
cat file.txt
Также с помощью cat можно создавать файлы
cat > file.txt
chmod - команда используется для изменения режима доступа
chmod 777 /путь/путь/путь
Первая цифра — права для владельца файла, вторая цифра - права для группы владельца, третья - права для остальных.
0 - нет прав,
1 - выполнение,
2 - изменение,
3 - выполнение и изменение,
4 - чтение,
5 - выполнение и чтение,
6 - изменение и чтение,
7 - выполнение, изменение, чтение.
Команда довольно обширная, вот вам полный гайд по команде
Заключение
Я разобрал лишь малую часть, но этой информации вполне хватит чтобы поставить вашу первую ноду. Надеюсь эта информация была полезна для вас!
Как создать ssh ключ Windows(MobaxTerm)?
1. Скачать MobaxTerm https://mobaxterm.mobatek.net/download-home-edition.html (выбрать удобный вариант установщика)
2. Открываем Tools -> MobaKeygen SSH Generator
Снизу нажимаем Save public key и Save private key, сохраняем их в надежном месте. Ключ сверху это ваш Public Key, который вы будете использовать при создании серверов для дальнейшей авторизации.
Опция для пользователей Mac OS
ssh-keygen
Везде используем опции по умолчанию, после завершения, публичный ключ можно получить командой:
cat ~/.ssh/id_rsa.pub