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ử dụng subkey
Vui lòng làm theo tài liệu chính thức để cài đặt subkey: Tài liệu 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/
CHÚ Ý: Điểm cuối này kích hoạt thao tác xoay phím của bạn! Gọi lại nó có nghĩa là xoay chìa mới khóa của bạn! Đừng gọi lại sau khi bạn đã đặt khóa (Bước 9), nếu không, bạn sẽ vô hiệu hóa chúng và cần đặt lại khóa. API RPC phải bị khóa vì lý do này và chỉ người vận hành node mới có thể truy cập được, do đó việc xoay khóa ngoài ý muốn sẽ không được thực hiện.
Đầ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.
8.1 Thiết lập Ví và Khôi phục Tài khoản Trình xác thực trong Talisman
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
8.2 Cài đặt tiện ích mở rộng trình duyệt Talisman
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 Networks
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):
8.3 Nhận FERN
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.
8.4 Truy cập giao diện người dùng
Đ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 đó.
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 -> Metadata
và xác nhận cập nhật 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.
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
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