セキュリティはバリデーター運営の中心です。この章では、シークレットキーの安全な管理方法を詳しく説明します。バックアップの取り方、キーの安全な交換方法、そして緊急時のリスタートプロセスについて、実践的なガイドラインを提供します。読者が安心してバリデーター運用を続けられるよう、最新のセキュリティ対策にも焦点を当てます。
🗝️ SSH鍵の作成 - 強固なアクセス基盤の構築
solv CLI
をインストールしたローカルコンピュータから以下のコマンドを実行します。
※すでにSSHキーをお持ちの方はこのステップをスキップして下さい。
solv scp init
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ubuntu/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ubuntu/.ssh/id_rsa
Your public key has been saved in /home/ubuntu/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:4fBtHns/xlPO7wHLS37ILhqQ8vUMQfh55dJobUYGyUw ubuntu@c3-large-x86-bue-1
The key's randomart image is:
+---[RSA 4096]----+
| ..+Eo |
| .. + + |
| . o.. O |
| +.=.= * |
| . oSo* +. |
| o oo+o. o .|
| . .ooo=.= |
| .oo+*.+|
| .. o=o++|
+----[SHA256]-----+
ssh
接続のためのキーペアが作成されました。
🔗 バリデーターサーバーでSSH接続設定 - セキュアなリモートアクセスの確立
バリデーターノードのサーバーへ SSH
接続します。
ssh username@<your-server-ip-address>
solv
ユーザーに切り替え設定を読み込みます。
su solv
cd ~ && source ~/.profile
設定に必要なSSH公開鍵を表示します。
solv scp cat
この公開鍵をコピーしておきます。
次に以下のコマンドでSSH接続設定を行います。
solv scp create
? Enter your SSH Public Key (xxxxxxxpubkeyxxxxxxxx)
ここで上記でコピーしたSSH公開鍵を貼り付けます。
これでローカルコンピューターとバリデーターノードの接続設定が完了しました。
📦 鍵のバックアップ(バリデーターノード → ローカルコンピュータ)
このステップでは バリデーターノード
から ローカルコンピュータ
へ鍵のバックアップを取る方法を紹介します。
/mt/solana/
ディレクトリにある以下の 4つの鍵がダウンロードされます。
/mt/solana/mainnet-validator-keypair.json
/mt/solana/testnet-validator-keypair.json
/mt/solana/vote-account-keypair.json
/mt/solana/authority-keypair.json
※鍵を ローカルコンピュータ
から バリデーターノード
へアップロードする方はこのステップをスキップして下さい。
ローカルコンピュータから以下のコマンドを実行します。
バリデーターノードサーバーのIPを入力してください
solv scp backup
? Enter your Ubuntu Server IP (1.1.1.1)
✅ Successfully Generated - ~/solvKeys/download/testnet-validator-keypair.json
✅ Successfully Generated - ~/solvKeys/download/mainnet-validator-keypair.json
✅ Successfully Generated - ~/solvKeys/download/vote-account-keypair.json
✅ Successfully Generated - ~/solvKeys/download/authority-keypair.json
~/solvKeys/download
ディレクトリに鍵が保存されました🎉
この鍵は大切に保管し、USBディスクなどにバックアップをとっておくことをお勧めします。
🔀 鍵の交換(ローカルコンピュータ → バリデーターノード)
ローカルコンピュータから以下のコマンドを実行し、
バリデーターノードのIPを入力します。
~/solvKeys/upload
に全章で作成された鍵が
/mt/solana
ディレクトリにアップロードされます。
(※同じファイル名がある場合上書きされるので必ずバックアップを取ることをお勧めします。)
solv scp upload
? Enter your Ubuntu Server IP (1.1.1.1)
🔍 鍵を探す
もしすべての鍵のバックアップをとったか定かではない場合、
solv scp search
コマンドで鍵を探すことができます。
solv scp search
start searching...
████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 20% | ETA: 30s | 2062/10000
🔍 Found 4 Potential Solana Key Pairs 🎉
/home/ubuntu/solvKeys/upload/testnet-validator-keypair.json
/home/ubuntu/solvKeys/upload/authority-keypair.json
/home/ubuntu/solvKeys/upload/vote-account-keypair.json
/home/ubuntu/solvKeys/upload/mainnet-validator-keypair.json
Only showing the first 10 results
🔄 バリデーターノードの再起動
交換した鍵を反映させるために、
以下のコマンドを実行し、バリデーターノードを再起動します。
solv restart --snapshot
--snapshot
オプションをつけることで、新規スナップショットをダウンロードすることができます。
これで鍵の交換作業は完了です 🎉
⚙️ Solana バージョンの定期アップデート作業
一度バリデーターを起動してさえしまえば、
主なバリデーターとしての作業は solana
のバージョンアップとじっとモニタリングするだけです。
solv では以下のコマンドで毎回の solana
のアップデートに対応しています。
solv update
solv update --monitor
ready to restart
とログに表示されれば無事に完了です。
モニタリングをスキップする場合は、
solv update -b
で更新を完了することができます。
あとからモニターする場合でも以下のコマンドで確認することができます。
solv monitor
次の章ではサーバーレス環境でバリデーターノードを監視する方法についてご紹介したいと思います。