驗證器安全檢查表
在下面找到一個安全檢查表調查,以進行驗證器的安全測量。
對託管理數據中心和節點設置進行調查,並將您的結果與下面建議的最佳實踐進行比較。
託管數據中心的一般控制
控制類 |
最佳實踐說明 |
數據中心 |
冗餘電源 |
數據中心 |
冗餘冷卻 |
數據中心 |
冗餘網絡 |
數據中心 |
物理籠子/門控訪問 |
數據中心 |
遠程警報安全攝像頭 |
節點設置
控制類 |
最佳實踐說明 |
一般系統安全 |
操作系統已適當修補。內核更新到最新的穩定版本. 節點要運行在x86_64環境下 |
|
|
一般系統安全 |
配置了操作系統的自動更新。存在用於自動升級的工具包(例如 auter、yum-cron、dnf-automatic、unattended-upgrades) |
|
|
一般系統安全 |
啟用和執行安全框架。 SELinux / AppArmor / Tomoyo / Grsecurity 已啟用。 |
|
|
一般系統安全 |
沒有安裝不安全和不必要的服務。 (例如 telnet、rsh、inetd 等... |
|
|
一般系統安全 |
GRUB 引導裝載程序密碼已配置。 Grub2 配置密碼 |
|
|
一般系統安全 |
只有核心系統文件的root權限 |
文件目錄安全 |
確保目錄“~/.stcd”僅供归属者訪問 |
二進製配置 |
為性能和安全性推薦 config.toml 中的以下設置 - 對於 sentry 節點:max_num_inbound_peers = 500, max_num_outbound_peers = 50, flush_throttle_timeout = "300ms" - 對於 validator 節點:max_num_inbound_peers = 100 , max_num_outbound_peers = 10, flush_throttle_timeout = "100ms" |
帳戶安全和遠程訪問 |
強制執行以下密碼策略:沒有空白密碼;不允許使用弱密碼 |
|
|
帳戶安全和遠程訪問 |
啟用以下 SSH 配置:PermitRootLogin: no ; PasswordAuthentication no ; ChallengeResponseAuthentication no ;使用PAM yes ; AllowUsers 僅限必要的用戶 ; AllowGroups 僅限必要的組 。 |
|
|
聯網 |
使用 speedtest 進行網絡吞吐量測試。建議上傳速度至少為 5 Mbps,下載速度至少為 5 Mbps) |
|
|
聯網 |
啟用基於主機(例如 iptables)或基於雲(例如 AWS 安全組)的防火牆來保護所有相關節點。遠程管理端口(例如 SSH - TCP 22)應該只暴露給選定的 IP 而不是互聯網。不應設置過於寬鬆的規則(例如,允許的端口範圍很廣 1-65535)。對於節點之間的內部通信通道,它們應該設置有特定的源地址和目的地址。對於 Internet 可達節點,如果可能,將 TCP 26656 設置為唯一的傳入端口。 |
聯網 |
安裝並執行入侵檢測/預防系統(例如 Fail2Ban、Snort、OSSEC) |
|
|
聯網 |
設置哨兵節點架構以保護驗證節點,並設置防火牆規則以限制對其的直接互聯網訪問。 |
|
|
聯網 |
遠程過程調用 (RPC) 提供不應暴露在 Internet 上的敏感操作和信息。默認情況下,RPC 處於打開狀態並且僅允許來自 127.0.0.1 的連接。如果您需要允許來自其他 IP 地址的 RPC,請格外小心。 |
|
|
冗餘 |
熱備節點設置與主節點相同的配置 |
|
|
冗餘 |
設置系統監控和警報以提醒所有者異常情況 |
|
|
密鑰管理 |
使用 HSM 或等效的在線服務設置 Tendermint KMS,它應該替換靜態密鑰文件。 |
|
|
DDOS |
根據哨兵架構設置驗證器。請參考設置說明和詳細說明。 |
|
|