Tham gia Node Validator World Mobile DevNet

1. Yêu cầu máy chủ tối thiểu.

Hệ điều hành: Ubuntu 22.04
CPU: 2x vCPU
Ram: 8GB
Dung lượng ổ cứng: 250GB

2. Thiết lập hệ điều hành

Đăng nhập vào máy chủ của bạn và truy cập thiết bị đầu cuối, ví dụ như sử dụng kết nối SSH.
Cài đặt phụ thuộc:

sudo apt update && sudo apt upgrade
sudo apt install -y curl

Cài đặt các phần phụ thuộc tùy chọn

sudo apt install -y git clang libssl-dev llvm libudev-dev make protobuf-compiler pkg-config build-essential

3. Thiết lập môi trường

Cài đặt Rust:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Cài đặt môi trường Rust vào phiên làm việc terminal.

source $HOME/.cargo/env

Kiểm tra cài đặt Rust thành công chưa

rustc --version

Cài đặt chuỗi công cụ Rust

rustup default stable
rustup component add rust-src --toolchain stable-x86_64-unknown-linux-gnu
rustup target add wasm32-unknown-unknown
rustup update

Cấu hình Rust Nighly

rustup update nightly
rustup target add wasm32-unknown-unknown --toolchain nightly

Kiểm tra cài đặt Rust

rustup show
rustup +nightly show

3.1 Xây dựng AyA-Node từ Source code

Sao chép kho lưu trữ.

git clone https://github.com/worldmobilegroup/aya-node.git
cd aya-node

Đối với DevNet, chúng ta trích xuất phiên bản devnet của aya-node và tạo một nhánh cục bộ mới:

git checkout tags/devnet-v.0.2.0 -b my-devnet-branch

Biên dịch AyA-Node:

cargo build --release

4. Thiết lập hệ thống

Đầu tiên, chúng ta tạo một tập lệnh khởi động cho AyA-Node.
Chắc chắn rằng đường dẫn đến tệp nhị phân aya-node là chính xác trong lệnh bên dưới. Trong trường hợp này, aya-node sẽ nằm ở /home/myuser/aya-node/target/release.

Thiết lập Đường dẫn Aya đến thư mục chứa tệp nhị phân aya-node của bạn.tunesharemore_vert

export AYA_HOME=/home/${USER}/aya-node

Cài đặt AYA_HOME khởi động cùng máy chủ

sudo bash -c "echo 'export AYA_HOME=/home/${USER}/aya-node' >> /etc/bash.bashrc"

Tạo tập lệnh khởi động:

echo '#!/usr/bin/env bash' > start_aya_validator.sh
echo "${AYA_HOME}/target/release/aya-node \
    --base-path ${AYA_HOME}/data/validator \
    --validator \
    --chain ${AYA_HOME}/wm-devnet-chainspec.json \
    --port 30333 \
    --rpc-port 9944 \
    --log info \
    --bootnodes /dns/devnet-rpc.worldmobilelabs.com/tcp/30340/ws/p2p/12D3KooWRWZpEJygTo38qwwutM1Yo7dQQn8xw1zAAWpfMiAqbmyK" >> start_aya_validator.sh
sudo chmod +x ./start_aya_validator.sh

Kiểm tra xem trình xác nhận có bắt đầu bằng cách thực thi tập lệnh vừa tạo không

./start_aya_validator.sh

Bộ kiểm tra (validator) sẽ tự động bắt đầu đồng bộ . Nếu gặp vấn đề, hãy kiểm tra đường dẫn đến tệp Aya-Node và wm-devnet-chainspec.json.

Tạo dịch vụ hệ thống systemd

Tiếp theo chúng ta tạo dịch vụ systemd:

sudo tee /etc/systemd/system/aya-node.service > /dev/null <<EOF
#Start the Aya validator
[Unit]
Description=AyA Node
After=network.target

[Service]
WorkingDirectory=${AYA_HOME}
ExecStart="${AYA_HOME}"/start_aya_validator.sh
User=${USER}
Restart=always
RestartSec=90
#Set the maximum number of file descriptors
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

Kích hoạt dịch vụ:

sudo systemctl enable aya-node.service

Bắt đầu Aya-Node thông qua systemd:

sudo systemctl start aya-node.service

Kiểm tra dịch vụ đang chạy:

sudo systemctl status aya-node.service

Nếu có vấn đề, trước tiên hãy kiểm tra xem tất cả các đường dẫn có ổn không, đó là vấn đề phổ biến nhất.

Bạn có thể xem nhật ký với:

sudo journalctl -u aya-node.service

Nếu bạn muốn theo dõi nhật ký, hãy sử dụng:

sudo journalctl -f -u aya-node.service

Trong trường hợp dịch vụ systemd của bạn không hoạt động bình thường, bạn có thể tìm thấy thông tin gỡ lỗi trong nhật ký này.

Nếu mọi thứ đều ổn, bạn có 1 Aya-Node xác thực đầy đủ đang chạy đang đồng bộ hóa với chuỗi khối (nhưng không xác thực các khối). Bạn có thể thấy trong nhật ký rằng nút đang nhập khối.

Nếu bạn chỉ muốn thiết lập một nút đầy đủ, bạn có thể dừng ở đây.

5. Thiết lâp khóa

Bạn có thể sử dụng subkey hoặc tệp nhị phân Aya-node để tạo khóa. Nếu bạn muốn sử dụng các tập lệnh trong thư mục utils của kho lưu trữ nút aya, bạn cần cài đặt subkey.

Sàu khi đã cài đặt thành công subkey ta tiến hành các bước sau

Từ polkadot-sdk thư mục kho lưu trữ, sao chép tệp nhị phân subkey đã biên dịch để /usr/bin có thể sử dụng nó từ bất kỳ vị trí nào trong hệ thống:

sudo cp ./target/release/subkey /usr/bin/

Kiểm tra khóa con đã được cài đặt:

subkey --version

Bạn có thể xóa kho lưu trữ polkadot-sdk khi khóa con hoạt động như mong đợi. Nó rất lớn và không cần thiết nữa.

Tạo khóa mới:

subkey generate

Đầu ra ví dụ:

Secret phrase:       bottom drive obey lake curtain smoke basket hold race lonely fit walk
  Network ID:        substrate
  Secret seed:       0xe5be9a5092b81bca64be81d212e7f2f9eba183bb7a90954f7b76361f6edb5c0a
  Public key (hex):  0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d
  Account ID:        0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d
  Public key (SS58): 5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY
  SS58 Address:      5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY

Lệnh subkey inspect sẽ tạo ra kết quả tương tự nhưng thông số ghi nhớ được đưa ra làm tham số đầu vào.

subkey inspect "bottom drive obey lake curtain smoke basket hold race lonely fit walk"

5.1 Nhận  EVM Account và Derived Keys

Bạn cần cài đặt npm và nút js:

sudo apt update
sudo apt install nodejs
sudo apt install npm

Tiếp theo, cài đặt các phần phụ thuộc (chúng tôi giả sử bạn đang ở thư mục gốc của dự án):

cd utils/account_derivation_tools/tools/keys
npm i
cd ../..

Thực thi tập lệnh bằng cách sử dụng thông số ghi nhớ được tạo của bạn làm tham số đầu vào.

Ví dụ:

./scripts/validator_keys.sh "bottom drive obey lake curtain smoke basket hold race lonely fit walk"

Đầu ra ví dụ:

Processing account:

sr25519

Secret phrase:       bottom drive obey lake curtain smoke basket hold race lonely fit walk
  Network ID:        substrate
  Secret seed:       0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e
  Public key (hex):  0x46ebddef8cd9bb167dc30878d7113b7e168e6f0646beffd77d69d39bad76b47a
  Account ID:        0x46ebddef8cd9bb167dc30878d7113b7e168e6f0646beffd77d69d39bad76b47a
  Public key (SS58): 5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqRzV
  SS58 Address:      5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqRzV

ed25519

Secret phrase:       bottom drive obey lake curtain smoke basket hold race lonely fit walk
  Network ID:        substrate
  Secret seed:       0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e
  Public key (hex):  0x345071da55e5dccefaaa440339415ef9f2663338a38f7da0df21be5ab4e055ef
  Account ID:        0x345071da55e5dccefaaa440339415ef9f2663338a38f7da0df21be5ab4e055ef
  Public key (SS58): 5DFJF7tY4bpbpcKPJcBTQaKuCDEPCpiz8TRjpmLeTtweqmXL
  SS58 Address:      5DFJF7tY4bpbpcKPJcBTQaKuCDEPCpiz8TRjpmLeTtweqmXL

Compressed EVM key: 	0xf24FF3a9CF04c71Dbc94D0b566f7A27B94566cac
Private key: 			0x5fb92d6e98884f76de468fa3f6278f8807c48bebc13595d45af5bdc4da702133

------------

Bạn cũng có thể lấy khóa EVM được nén bằng cách khôi phục bản ghi nhớ trong ví ethereum, ví dụ như MetaMask hoặc Talisman. Bạn có thể chọn địa chỉ_index mà bạn muốn thêm vào ví.

Thông tin thêm:

Ví dụ để lấy AURA và IM_ONLINE Key:

subkey inspect --scheme sr25519 "bottom drive obey lake curtain smoke basket hold race lonely fit walk//My//Secret//Derivation//Path"

Ví dụ: để lấy Khóa GRANDPA:

subkey inspect --scheme ed25519 "bottom drive obey lake curtain smoke basket hold race lonely fit walk//My//Secret//Derivation//Path"

Điều này sẽ dẫn đến các khóa riêng sau cho trình xác thực của bạn:

sr25519

Secret Key URI `bottom drive obey lake curtain smoke basket hold race lonely fit walk//My//Secret//Derivation//Path` is account:
  Network ID:        substrate
  Secret seed:       0xd159936a485167ec22d29876190adb9f8ed08879a28b46f9ee075ef3dcd7b4f2
  Public key (hex):  0x00209b81aef17a150140d06979eb54bb23d8f7f72a25d7a1b429c72cdf19f555
  Account ID:        0x00209b81aef17a150140d06979eb54bb23d8f7f72a25d7a1b429c72cdf19f555
  Public key (SS58): 5C4sYUugQF27DktbzXhSVJNuMtJrFVvPP61bumtvTYKmTqak
  SS58 Address:      5C4sYUugQF27DktbzXhSVJNuMtJrFVvPP61bumtvTYKmTqak

ed25519

Secret Key URI `bottom drive obey lake curtain smoke basket hold race lonely fit walk//My//Secret//Derivation//Path` is account:
  Network ID:        substrate
  Secret seed:       0xd64f614f9a1c218a43e7a066e8676dd23ef2ccab82232dae7180af50f788e376
  Public key (hex):  0x579f175039ffaad0740f6e578235940a0e6ef0e8f3a9554334e2cf475fb38f6d
  Account ID:        0x579f175039ffaad0740f6e578235940a0e6ef0e8f3a9554334e2cf475fb38f6d
  Public key (SS58): 5E3bHNRo6pxpUetjZxZ5XWGaPcRF7RM7ZUbySuiLPZ1cjp3G
  SS58 Address:      5E3bHNRo6pxpUetjZxZ5XWGaPcRF7RM7ZUbySuiLPZ1cjp3G

6. Đặt Private Keys cho trình xác thực

Để thiết lập trình xác thực, chúng ta cần thêm các khóa bí mật vào keyring trên máy tính của trình xác thực. Trên máy tính chạy trình xác thực, điều hướng đến thư mục aya-node.

Chúng ta cần thêm ba khóa: AURA_KEY, GRANDPA_KEY và IM_ONLINE_KEY. Tùy thuộc vào cách tạo khóa, seed bí mật của các lược đồ ed25519 và sr25519 có thể khác nhau! AURA_KEY và IM_ONLINE_KEY là cùng một seed bí mật sr25519, GRANDPA_KEY là seed bí mật ed25519. Trong ví dụ này, các seed bí mật giống nhau vì chúng ta không tạo ra khóa mới. Bạn cũng cần đặt đường dẫn gốc của node, đường dẫn lưu trữ tất cả dữ liệu của node. Chúng tôi sử dụng data/validator, đảm bảo đường dẫn có thể truy cập được.

Đặt khóa cho biến môi trường hoặc nhập trực tiếp vào tham số:

export AURA_KEY=0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e
export GRANDPA_KEY=0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e
export IM_ONLINE_KEY=0xfac7959dbfe72f052e5a0c3c8d6530f202b02fd8f9f5ca3580ec8deb7797479e
./target/release/aya-node key insert \
    --base-path data/validator \
    --chain wm-devnet-chainspec.json \
    --key-type aura \
    --scheme sr25519 \
    --suri "${AURA_KEY}";

./target/release/aya-node key insert \
    --base-path data/validator \
    --chain wm-devnet-chainspec.json \
    --key-type gran \
    --scheme ed25519 \
    --suri "${GRANDPA_KEY}";
    
./target/release/aya-node key insert \
    --base-path data/validator \
    --chain wm-devnet-chainspec.json \
    --key-type imon \
    --scheme sr25519 \
    --suri "${IM_ONLINE_KEY}";

Kiểm tra xem khóa đã được thêm chưa:

ls -l data/validator/chains/aya_devnet/keystore/;

Lệnh sẽ xuất ra ba hàng thể hiện keys

7. Session Keys

Node-aya hiện có thể hoạt động, nhưng blockchain chưa biết về trình xác thực. Để giúp người xác thực có thể tham gia mạng với tư cách là nhà sản xuất khối, nó phải cam kết các session keys của mình và được thêm vào trình xác thực do cơ quan quản lý chuỗi thống trị thiết lập. Session keys là khóa chung được lấy từ Private keys mà bạn vừa thêm ở bước 6. Việc xác thực chỉ được giới hạn cho người vận hành. Vì mục đích này, người vận hành node phải đảm bảo API RPC của trình xác thực không bị lộ.

Để lấy session keys, bạn cần khởi động Node-aya và thực hiện cuộc gọi RPC cục bộ. Nếu bạn làm theo các bước trước, node của bạn sẽ chạy dưới dạng dịch vụ systemd.

Kiểm tra trạng thái dịch vụ node của bạn:

sudo systemctl status aya-node.service

Kiểm tra xem node có đang đồng bộ không:

sudo journalctl -f -u aya-node.service

Nếu node của bạn đang chạy chính xác, bạn có thể kích hoạt xoay vòng phím thông qua giao diện RPC cục bộ bằng cách sử dụng cuộn tròn. Đảm bảo bạn đã thêm khóa AURA, GRANDPA và IMONLINE vào trình xác thực của mình. Lấy session keys từ Node API :

curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "author_rotateKeys"}' http://localhost:9944/

Đầu ra ví dụ:

0x42ad00eae2336671febcce956db3e5716b4ad7fb3cc8bb576463882f3b3eab256091e0b8a8e08eef8b13153a05800712a4b661a3470f817dc002fd3c63649f26305a8ce33139a89753136bb5c77ebcc38ace19ebb27d96ad7a52c0ee5ebebc77

Đầu ra chứa các khóa công khai AURA, GRANDPA và IMONLINE trong một chuỗi lớn, chúng ta cần chia chuỗi ra. Mỗi khóa có 32 byte, chuỗi được mã hóa hex nên mỗi khóa có 64 ký tự. Mỗi khóa cần có tiền tố ‘0x’ để cho biết nó được mã hóa hex. Đầu ra bắt đầu bằng ‘0x’ nên khóa đầu tiên bắt đầu sau ‘0x’ và dài 64 ký tự. Khóa thứ hai bắt đầu ở ký tự 65, nó chưa có phần thêm vào ‘0x’ nên chúng tôi làm điều đó. Khóa tiếp theo bắt đầu ở ký tự 130 và cũng cần tiền tố ‘0x’. Tất cả các khóa phải có cùng độ dài (32byte hoặc 64 ký tự) và có tiền tố 0x.

Mẹo: Chỉ cần sử dụng tập lệnh utils/session_key_tools/split_session_key.sh

Ví dụ:

./utils/session_key_tools/split_session_key.sh 0x42ad00eae2336671febcce956db3e5716b4ad7fb3cc8bb576463882f3b3eab256091e0b8a8e08eef8b13153a05800712a4b661a3470f817dc002fd3c63649f26305a8ce33139a89753136bb5c77ebcc38ace19ebb27d96ad7a52c0ee5ebebc77
------------------------------------
Your session keys:
AURA_SESSION_KEY=0x42ad00eae2336671febcce956db3e5716b4ad7fb3cc8bb576463882f3b3eab25
GRANDPA_SESSION_KEY=0x6091e0b8a8e08eef8b13153a05800712a4b661a3470f817dc002fd3c63649f26
IM_ONLINE_SESSION_KEY=0x305a8ce33139a89753136bb5c77ebcc38ace19ebb27d96ad7a52c0ee5ebebc77
------------------------------------

Đặt chìa khóa sang một bên, bạn sẽ cần chúng trong bước tiếp theo.

8. Thiết lập Ví & Kết nối với Front-End Polkadot-JS

Để đặt session keys, bạn cần gửi giao dịch tới blockchain. Giao dịch đăng ký session keys bằng tài khoản EVM. Bạn cần một ví có tài khoản EVM của mình để gửi giao dịch cần thiết, vì vậy chúng tôi sẽ thiết lập ví Talisman trong bước tiếp theo.

Chúng tôi muốn thêm tài khoản của mình vào ví và kết nối với giao diện phát triển. Bạn có thể sử dụng một tài khoản khác làm tài khoản được tạo cho trình xác thực của mình để đăng ký session keys  nhưng bạn cần đặt session keys chính xác nếu không trình xác thực không thể nhận dạng được.

Để có thể tương tác với chức năng nâng cao của AyA, cần có một chiếc ví có khả năng kết nối với polkadot-js. MetaMask chưa thể thực hiện việc này ngay lập tức, chúng tôi khuyên bạn nên sử dụng ví Talisman ngay bây giờ.

Chúng tôi sẽ sử dụng cách ghi nhớ nổi tiếng của Alice cho hướng dẫn này làm ví dụ, cách ghi nhớ này được biết đến rộng rãi và chỉ nên được sử dụng cho mục đích minh họa:

bottom drive obey lake curtain smoke basket hold race lonely fit walk

Truy cập Trang web Talisman và làm theo hướng dẫn để cài đặt tiện ích mở rộng ví Talisman.

Khôi phục hoặc tạo ví EVM

Sử dụng mnemonic để khôi phục ví trong Talisman hoặc tạo tài khoản mới.

Thêm AyA DevNet vào Talisman

DevNet Public RPC Endpoint: devnet-rpc.worldmobilelabs.com

Có thể kết nối thông qua REST API https://devnet-rpc.worldmobilelabs.com hoặc websocket wss://devnet-rpc.worldmobilelabs.com . Chúng ta cần thêm mạng dưới dạng mạng ethereum cũng như mạng polkadot để có đầy đủ chức năng. Giao diện người dùng Polkadot-js sẽ sử dụng websocket trong khi ví sẽ sử dụng REST Api.

Trong Talisman đi đến Settings -> Networks & Tokens -> Manage Network

Bạn có thể tìm thấy hai nút để chọn các loại mạng khác nhau Ethereum và Polkadot

Đối với mỗi loại mạng, chúng ta cần thêm một mạng. Chọn loại mạng thông qua các nút và nhấp + Add network vào từng loại.

Thêm mạng sau vào Talisman (Ethereum): 

Thêm Mạng sau vào Talisman (Polkadot): 

Bạn cần nhận một số token FERN từ faucet để thanh toán phí giao dịch. Đi tới faucet dán địa chỉ tài khoản EVM của bạn và nhấp vào Request.

Vòi

Đi tới giao diện người dùng Polkadot-JS development  và kết nối ví và tài khoản Talisman của bạn với giao diện người dùng Polkadot-JS. Bây giờ bạn sẽ thấy tài khoản của mình trên webiste khi điều hướng đến Tài khoản . Nếu thiết lập điểm cuối RPC hoạt động chính xác, bạn có thể ký và gửi giao dịch bằng tài khoản đó.

Giao diện người dùng

Updating Metadata:

Trong một số trường hợp, bạn cần cập nhật siêu dữ liệu trên ví của mình. Nếu cần, một thông báo sẽ bật lên ở giao diện người dùng. Điều hướng đến Settings -> Metadatavà xác nhận cập nhật siêu dữ liệu.

Nâng cấp siêu dữ liệu MSG
Nâng cấp siêu dữ liệu

9. Đặt session keys 

Để trở thành người xác thực, cần thêm hai bước nữa. Trước tiên, bạn cần gửi session keys của mình và thứ hai, bạn cần cho chúng tôi biết về trình xác thực của bạn để chúng tôi có thể thêm quyền xác thực của bạn. Phải mất hai kỷ nguyên sau khi bạn được thêm vào bộ quyền hạn trước khi bạn trở thành một phần của bộ quyền lực sản xuất khối đang hoạt động. Một kỷ nguyên kéo dài 24 giờ.

Nếu một trong các session keys không khớp với session keys đang hoạt động trong trình xác thực của bạn thì trình xác thực của bạn không thể tạo khối và sẽ bị loại khỏi bộ quyền. Nếu bạn không cung cấp tin nhắn ImOnline trong một kỷ nguyên thì bạn sẽ bị loại hai kỷ nguyên sau đó (điều này có thể xảy ra khi khóa IMONLINE sai hoặc trình xác thực của bạn ngoại tuyến). Chúng tôi có thể thêm lại bạn nên đừng lo lắng, nhưng chúng tôi không quan sát trạng thái xác thực của bạn nên bạn cần cho chúng tôi biết.

Gửi session keys

Để gửi session keys bạn đã nhận được ở bước trước khi bạn cần giao diện người dùng Polkadot-JS đang hoạt động và tài khoản của bạn cần có Tokenn FERN để thanh toán phí giao dịch. Ví đăng ký session keys không cần phải là ví được tạo cho trình xác thực, nhưng các session keys phải khớp! Chỉ bạn (người điều hành) mới biết các session keys của mình khi bạn kích hoạt xoay vòng và chỉ bạn mới có thể xoay các session keys. Không thể đăng ký cùng một session keys hai lần.

Đi đến Front-End và điều hướng đến Developer -> Extrinsics.

Nhà phát triểnExtrinsic

Chọn tài khoản xác thực mà bạn đã nhập vào Talisman trước đó.

Chọn sessionpallet từ menu kéo xuống danh mục bên ngoài.

Chọn setKeys(keys,proof) từ menu thả xuống của bộ chọn chức năng.

Chèn Aura-Key vào trường đầu tiên

Chèn Grandpa-Key vào trường thứ hai.

Chèn ImOnline-Key vào trường thứ ba.

Để xác thực hãy nhập 0x

sessionkeys_setkeys

Gửi giao dịch và ký bằng ví của bạn.

Nếu giao dịch được gửi thành công, bạn có thể kiểm tra xem khóa của mình đã được đặt chưa:

Đi đến: Developer -> Chain State

Chọn session trong truy state query.

Chọn chức năng nextKeys(AccountId20):Option<AyaRuntimeOpaqueSessionKeys>.

Chọn Tài khoản của bạn và gửi yêu cầu bằng cách nhấp vào +.

Đầu ra ví dụ:

{
  aura: 0x42ad00eae2336671febcce956db3e5716b4ad7fb3cc8bb576463882f3b3eab25
  grandpa: 0x6091e0b8a8e08eef8b13153a05800712a4b661a3470f817dc002fd3c63649f26
  imOnline: 0x305a8ce33139a89753136bb5c77ebcc38ace19ebb27d96ad7a52c0ee5ebebc77
}

10. Đăng ký Validator

Bạn đã làm tất cả những gì cần thiết, điều duy nhất còn lại là cho chúng tôi biết về trình xác thực của bạn. Đi tới Biểu mẫu này và điền thông tin. Chúng tôi kiểm tra hai lần một ngày (sáng và tối ở CET) để tìm người xác nhận mới và thêm họ vào bộ quyền hạn. Phải mất hai kỷ nguyên cho đến khi trình xác thực của bạn tham gia nhóm quyền hạn đang hoạt động, một kỷ nguyên là 24 giờ nên có thể mất 3 đến 4 ngày trước khi trình xác thực của bạn hoạt động.

Để điền vào mẫu bạn sẽ cần:

Fingerprint của ENNFT trên mạng chính Cardano

Địa chỉ bạn đã sử dụng để đăng ký Session Keys

Địa chỉ email hợp lệ của bạn

Tên người dùng Discord của bạn

11. Bảo mật Trình xác thực của tôi

Trong hướng dẫn này, chúng tôi đã thiết lập một trình xác thực (validator) đơn giản và kết nối trực tiếp với mạng. Trình xác thực cũng có thể được đặt phía sau một full node (relay) được kết nối công khai. Trong trường hợp này, trình xác thực chỉ kết nối với full node đó và không cho phép các kết nối từ bên ngoài.

Hãy thiết lập một nút đầy đủ kết nối với mạng theo cách được mô tả trong hướng dẫn này. Với các biện pháp bổ sung (ví dụ: tường lửa đám mây hoặc ufw), bạn có thể hạn chế các kết nối đến trình xác thực của mình. Chỉ cần mở cổng P2P (mặc định là 30333) nếu bạn muốn kết nối với trình xác thực bằng một node khác. Ví dụ, chúng ta có thể chỉ mở cổng 30333 cho địa chỉ IP mạng nội bộ của node đầy đủ của mình.

Firewall

Cổng p2p 30333 cần được mở để Trình xác thực của bạn có thể giao tiếp.
Đảm bảo cổng được mở trong cấu hình mạng của bạn.

Thiết lập tường lửa UFW

Để cho phép 30333 truy cập cổng và ssh trong ufw trên Trình xác thực của bạn, hãy làm:

sudo ufw allow 30333
sudo ufw allow ssh

Cổng RPC trên Trình xác thực của bạn phải bị chặn từ bên ngoài:

sudo ufw deny 9944

Kích hoạt tường lửa:

sufo ufw enable

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Nội dung