bitcoind on vps

非中央集権的暗号通貨システムをサポートするには暗号資産を購入しても良いですが、一番良いのはブロックチェーンの運営側に回ることです。そうです、あなた自身がビットコインを動かすのです。それは、フルノードを運営してビットコインのピアーツーピアネットワークに参加し、その一員になるってことです!中央サーバーが無くても、いや、無くてこそ、堅牢なシステムが動くのです。2023年3月時点では、全世界で約1万6千台のノードが運営されていますが、あなたもその1員になれるのです。ビットコインネットワークに参加するにはポート番号8333を開いておく必要がありますが市販のルーターでは購入時に閉鎖されています。自宅ルーターのセキュリティを変更せずに参加するには、VPS(バーチャルプライベートサーバー、Linux PC仮想マシン)を借りると良いでしょう。VPSでは固定IPアドレスと無制限のインターネットアクセスが提供されています。

さくらのVPSで1GBタイプなら月額900円で運営できます。bitcoind の要件には2GB以上のメモリというものがあるのですが、Linuxでスワップメモリを多めに取れば動作に支障ありません。この記事ではVPSを使ってbitcoindを運営する方法を御紹介したいと思います。

bitcoindをVPSで動かす具体的手順

1、さくらのVPSで1GBの試用を開始する。色んな会社のVPSがありますが、各自慣れている会社のVPSでやってみましょう。

2、スワップファイルを8GB設定して、RAM1GBとあわせて9GB使えるようにしておく

$ sudo fallocate -l 8G /swapfile

$ sudo chmod 600 /swapfile

$ sudo mkswap /swapfile

$ sudo free -h
total used free shared buff/cache available
Mem: 971Mi 164Mi 217Mi 0.0Ki 589Mi 645Mi
Swap: 0B 0B 0B

$ sudo swapon /swapfile

$ sudo swapon –show
NAME TYPE SIZE USED PRIO
/swapfile file 8G 0B -2

3、さくらVPSのパケットフィルター
SSH(TCP22)は、自宅インターネットのIPアドレスのみ接続可能にする。
TCP8333 は全面的に開放する。(bitcoind incoming connection)

4、bitcoind は snap インストールします。

$ sudo apt-get update
$ sudo snap install bitcoin-core

5、bitcoin.conf の編集

$ sudo find -name bitcoin.conf で所在を探す
/root/.bitcoin/bitcoin.conf ←root 権限で snapインストールした場合の所在例

$ sudo nano /root/.bitcoin/bitcoin.conf

bitcoin.conf の中身(2行だけ!)

prune = 16384
daemon = 1

↑ 16GBのプルーンド(省略)ノードにするというだけです。ちなみに全取引を記録するフルノードにするためには400GB以上のディスクスペースが必要になります。

6、再起動するとIBDイニシャルブロックダウンロードが始まります。

16GBで2日ほど掛かりました。

7、bitcoin-cli で動作確認

$ sudo /snap/bitcoin-core/126/bin/bitcoin-cli -getinfo
Chain: main
Blocks: 443890
Headers: 779449
Verification progress: ▒▒▒▒▒░░░░░░░░░░░░░░░░ 22.2638%
Difficulty: 310153855703.4333

Network: in 1, out 10, total 11
Version: 240001
Time offset (s): -4
Proxies: n/a
Min tx relay fee rate (BTC/kvB): 0.00001000

Warnings: (none)

8、https://bitnodes.io/ に自分のVPSのIPアドレスを入力して動作確認。IBDが終わったら2.1Mbps出ていました。


おしまい。これであなたもビットコイン地球防衛軍の一員です!


投稿日

カテゴリー:

投稿者:

タグ:

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です