April 26, 2022

Forta (phase 1)

Системные требования:

4 CPU 16 RAM 100+ SSD Ubuntu 20.04

Арендую только тут

1) Обновляем пакеты и устанавливаем докер

apt update
apt upgrade
apt install ca-certificates curl gnupg lsb-release git htop
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
apt-get install docker-ce docker-ce-cli containerd.io

Проверяем версию докера

docker version

2) Делаем сеть для докера форты

nano /etc/docker/daemon.json

(вставляем все что снизу)

{
   "default-address-pools": [
        {
            "base":"172.17.0.0/12",
            "size":16
        },
        {
            "base":"192.168.0.0/16",
            "size":20
        },
        {
            "base":"10.99.0.0/16",
            "size":24
        }
    ]
}

(сохраняем и выходим ctrl+o, ctrl+x)

systemctl restart docker

3) Ставим ноду

sudo curl https://dist.forta.network/pgp.public -o /usr/share/keyrings/forta-keyring.asc -s
echo 'deb [signed-by=/usr/share/keyrings/forta-keyring.asc] https://dist.forta.network/repositories/apt stable main' | sudo tee -a /etc/apt/sources.list.d/forta.list
apt-get update
apt-get install forta

4) Придумываем пароль

forta init --passphrase (пароль)

(появится адрес ноды, сохраняем его, он понадобится дальше)

5) Исправляем конфиг

nano /root/.forta/config.yml

(Удаляем все что есть в файле ctrl+k)

(Можно выбрать разные сети для ноды, выбираем только одну сеть! Потому что, потом вы не сможете ничего менять) (# <-— писать не надо)

вставляем туда для того что бы попасть в сеть Ethereum:
######################################################
chainId: 1

scan:
  jsonRpc:
    url: http://your-node:8545

trace:
  jsonRpc:
    url: http://your-node:8545
######################################################

вставляем туда для того что бы попасть в сеть BSC:
######################################################
chainId: 56

scan:
  jsonRpc:
    url: https://bsc-dataseed.binance.org/

trace:
  enabled: false

######################################################

вставляем туда для того что бы попасть в сеть Polygon:
######################################################
chainId: 137

scan:
  jsonRpc:
    url: https://polygon-rpc.com/

trace:
  enabled: false

######################################################

вставляем туда для того что бы попасть в сеть Avalanche:
######################################################
chainId: 43114

scan:
  jsonRpc:
    url: https://api.avax.network/ext/bc/C/rpc

trace:
  enabled: false

######################################################

вставляем туда для того что бы попасть в сеть Arbitrum:
######################################################
chainId: 42161

scan:
  jsonRpc:
    url: https://arb1.arbitrum.io/rpc

trace:
  enabled: false
######################################################

вставляем туда для того что бы попасть в сеть Optimism:
######################################################
chainId: 10

scan:
  jsonRpc:
    url: https://mainnet.optimism.io

trace:
  enabled: false
######################################################

(cохраняем файл ctrl+o, ctrl+x)

6) Отправляем транзакцию

(я выбирал сеть Polygon и буду показывать на ее примере, вы можете выбирать любую которая предоставлена сверху)

Теперь, вам надо со своего метамаск, на котором лежат MATIC в сети Polygon
закинуть 0,1 матик на адрес вашей ноды который мы сохраняли ранее

Когда вы перечислите средства вводим данную команду:

forta register --owner-address сюда-вписываем-свой-метамаск --passphrase сюда-пароль
systemctl enable forta

7) Переделываем конфиг

nano /lib/systemd/system/forta.service
[Unit]
Description=Forta
After=network-online.target
Wants=network-online.target systemd-networkd-wait-online.service

StartLimitIntervalSec=500
StartLimitBurst=5

[Service]
Environment="FORTA_DIR=/root/.forta/"
Environment="FORTA_PASSPHRASE=ВАШ_ПАРОЛЬ"
Restart=on-failure
RestartSec=15s

ExecStart=/usr/bin/forta run

[Install]
WantedBy=multi-user.target

(сохраняем файл ctrl+o, ctrl+x)

systemctl daemon-reload
systemctl restart forta

(ждем 5 мин и смотрим статус)

forta status

8) Добавляем RPC к ноде

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

Платный RPC/ Бесплатный RPC

(Если хотите бесплатный проделываете все действия кроме оплаты)

Переходим на сайт Alchemy

1) Проходим регистрацию

2) Нажимаем на иконку и переходим в настройки(settings)

3) Раздел Billing

4) Выбираем удобный план и оплачиваем (смотрите, то что подписка бывает месячная, годовая и тд)

5) Переходим в раздел Apps --> Create App

6) Создаем RPC, придумываем Name, выбираем подходящий вам Chain и Network

(Выбирайте ту сеть которую прописывали в конфиге)

Вся работа происходит в Mainnet!

7) Нажимаем View Key и копируем HTTP

8) Заходим в конфиг

nano /root/.forta/config.yml
chainId: 137

scan:
  jsonRpc:
    url: https://polygon-rpc.com/

trace:
  enabled: false

( удаляете https://polygon-rpc.com/ и вставляете ваш HTTP)

(сохраняем файл ctrl+o, ctrl+x)

systemctl restart forta

Отслеживать ноду можно на том же сайте или в єксплорере форты

https://explorer.forta.network

Поблагодарить можно +rep в чате :)

Удачи :3