Cài đặt, bảo mật và xử lý lỗi Ark Relay Node

Hôm nay, relay node thứ 5 do arktoshi.com chạy đã chính thức online với tên gọi: arktoshi-5. Tròn 1 tháng kể từ khi tôi chạy Ark relay node đầu tiên vào cuối tháng 9, đến nay tôi đã tổng hợp được kinh nghiệm để cài đặt, bảo mật và khắc phục những lỗi gặp phải.

Bài này tôi sẽ trình bài toàn bộ quá trình cài đặt, bảo mật và xử lý lỗi thường gặp khi chạy Ark relay node. Hình ảnh sẽ hạn chế mà toàn là text thôi vì thực ra mọi việc cũng đơn gỉan và ảnh minh hoạ thì đã có ở bài hướng dẫn bằng tiếng Anh rồi.

Cài đặt Ark relay node

Bài hướng dẫn gốc từ Ark yêu cầu cấu hình tối thiểu là 4GB RAM,… Tuy nhiên, sau 1 tháng chạy thực tế, tôi nhận thấy như vậy khá lãng phí nếu bạn muốn chạy relay node mà chưa có kinh tế tốt. Tôi rút ra kinh nghiệm như sau.

  • Nền tảng ảo hoá: KVM, XEN, VMWare,.. Nói không với OpenVZ.
  • RAM: 1 GB
  • Dung lượng: 20 GB (ổ SSD, SAS càng tốt, như thế lúc build database sẽ nhanh hơn)
  • Băng thông: 1 TB
  • Hệ điều hành: Ubuntu 16.04 64-bit

Tiến hành cài đặt
Cập nhật hệ thống

apt-get update ; apt-get dist-upgrade

Thêm tài khoản “ark”

adduser ark

Cấp quyền chạy lệnh cho tài khoản “ark”

usermod -a -G sudo ark

Chuyển sang tài khoản “ark” để bắt đầu cài

su ark ; cd /home/ark

Tải về file cài đặt và chạy file cài đặt

wget https://raw.githubusercontent.com/ArkEcosystem/ARKcommander/master/ARKcommander.sh ; bash ARKcommander.sh

Hệ thống sẽ cài đặt các gói phần mềm cần thiết để chạy Ark relay node và yêu cầu khởi động lại sau khi cài xong

sudo reboot

Sau khi khởi động lại, chạy file cài đặt để tiếp tục

bash ARKcommander.sh

Chọn Menu 4 để tải về snapshot gần nhất và Rebuild database. Thời gian restore snapshot sẽ vào khoảng 5-10 phút tuỳ thuộc cấu hình VPS/Máy chủ.

Submit node lên Arkstats.net
Tải về và chạy file cài đặt

git clone -b release https://github.com/dafty/arkstats-reporter.git ; cd arkstats-reporter/ ; sudo bash build.sh

Nhập các thông số theo yêu cầu như: tên relaynode, địa chỉ IP, port, url, email liên hệ,..

Trong qúa trình cài có thể gặp lỗi pm2: command not found thì xử lý như sau

sudo apt-get install npm ; npm i -g pm2

Và thêm lệnh sau nếu có lỗi không tìm thấy node

sudo ln -s /usr/bin/nodejs /usr/bin/node

Sau đó khởi chạy lại file cài đặt Arkstats.net.

Bảo mật
Sửa các thông số để bảo mật SSH như đổi port mặc định, chặn root đăng nhập,..
sudo nano /etc/ssh/sshd_config

Thay các thông số có sẵn thành như sau

Port 888
LoginGraceTime 30PermitRootLogin no
X11Forwarding no
MaxStartups 2

Cài đặt và cấu hình ufw

sudo apt-get install ufw fail2ban
sudo ufw disable
sudo ufw default deny incoming
sudo ufw allow 18868/tcp
sudo ufw allow 4001/tcp
sudo ufw allow 4002/tcp
sudo ufw allow 888/tcp
sudo ufw enable

Cài đặt và cấu hình fail2ban

sudo apt-get install fail2ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Sửa file jail.local, thay thế tất cả port ssh thành địa chỉ đã đặt trong sshd_config

sudo nano /etc/fail2ban/jail.local sudo service fail2ban restart

Hoàn thành!