全システム正常稼働中 21 対応暗号資産 · Monero歓迎 No-KYCポリシー
ChainVPS

プライバシー

VPSでMoneroノードを構築・運用する方法

チェーンを自分で検証し、ウォレットをプライベートに同期し、Moneroノードを24時間365日動かし続ける — セキュリティ最優先の実践セットアップガイド。

プライバシー読了目安7分 readChainVPSチーム

VPSでMoneroノードを構築・運用する方法

自分自身でMoneroノードを運用するということは、ブロックチェーンを自分で検証し、見知らぬ人のサーバーを信用することなくトランザクションをブロードキャストし、ウォレットの活動をサードパーティのリモートノードに漏らさずに済むということです。そして、VPSはそれを24時間365日オンラインに保つ最もクリーンな方法です。

なぜ自分でMoneroノードを運用するのか

ほとんどのウォレットは、初期設定で他者が運用する公開のリモートノードを使用します。そのノードはウォレットが送信するすべてのリクエストを把握でき、あなたのIPアドレス、タイミング、そしてウォレットがスキャンするブロック範囲を関連付けることができます。

自分で管理するノードを使えば、この仲介者を排除できます。信頼できる検証、より高速でプライベートなウォレットの同期、そしてどこからでも自分のデバイスにサービスを提供できる能力が手に入ります。

トラストレスな検証

あなたのノードはすべてのブロックとトランザクションをコンセンサスルールに照らして独自に検証します — 第三者を信頼する必要はありません。

ウォレットのプライバシー

自分のウォレットを自分のノードに接続することで、スキャンリクエストがIPを記録する公開サーバーに触れることはなくなります。

常時稼働

ノートパソコンがスリープしていても、VPSはオンラインのままです。そのためノードは同期を続け、必要な瞬間にいつでも使える状態を保ちます。

ネットワークの健全性

接続状態の良いノードが増えるほど、Moneroのピアツーピアグラフと分散性は強化されます。

実際に必要なVPSのスペックとは

Moneroのチェーンは巨大で、着実に増加し続けています。最も重要なリソースはディスクであり、次いでRAMと安定した接続が重要です — CPUが重要になるのは主に初回同期の際です。

ストレージ現在で約250GB以上のSSD/NVMeが必要で、今後の増加に備えた余裕も持たせること。pruned(プルーニング)ノードならその約3分の1で済みます
RAM最低2GB、快適に使うなら4GB — DBはメモリマップされているため、RAMが多いほど多くをキャッシュできます
CPU2 vCPUで十分です。負荷が高くなるのは初回検証のときだけです
帯域幅無制限(unmetered)が強く推奨されます — 公開ノードは実際にかなりのトラフィックを処理することがあります
ポート18080(P2P)、18081(RPC)、加えて制限付きの公開RPCを公開する場合は18089

初回同期中の本当のボトルネックはディスク速度です。回転式ディスクの代わりにNVMeを使えば、数日かかる同期を数時間に短縮できます。プロバイダーがNVMeを提供しているなら、迷わず選びましょう。

増え続けるチェーンに必要なディスクの余裕を備えた、オフショアかつ無制限帯域のマシンを求めるなら、プライバシー重視のVPSは自然な選択です — ChainVPSのオフショアVPSプランはプリペイド制・no-KYCで、帯域も無制限のため、負荷の高いノードでも超過料金の心配はありません。

プルーニングノード vs フルノード

フルノードはブロックチェーン全体を保存します。プルーニングノードはすべてのブロックヘッダーと検証に必要なデータを保持しますが、提供する必要がなくなった過去のリングメンバーのデータの大部分を破棄します。

  • プルーニングノード: ディスク容量はおよそ3分の1で済み、検証の厳密さは変わらず、ウォレットへのサービス提供も可能です — 軽量なVPSに最適です。
  • フルノード: すべてを保持します。プルーニングされたピアにデータを提供したい場合や、アーカイブ用のツールを運用したい場合に有用です。
  • 個人用途やウォレットへのサービス提供が目的のノードであれば、プルーニングが賢明なデフォルト選択であり、ストレージを最も節約できます。

ステップバイステップ: monerodのインストールと実行

  1. 1

    VPSをプロビジョニングする

    上記のスペックを満たすDebianまたはUbuntuのマシンを立ち上げます。SSHでログインし、デーモン用にnon-root(root権限を持たない)ユーザーを作成します。

  2. 2

    まずセキュリティを固める

    パッケージを更新し、ファイアウォールを有効化(SSHと18080/18081ポートを許可)し、何かを公開する前に鍵認証のみのSSHを設定します。

  3. 3

    公式バイナリをダウンロードする

    getmonero.orgからCLIツールを入手し、GPG署名とハッシュを署名済みハッシュファイルと照合して検証します。検証を省略してはいけません。

  4. 4

    monerodを展開して配置する

    アーカイブを展開し、monerodを/usr/local/binに移動してPATHが通るようにします。

  5. 5

    データディレクトリを作成する

    デーモン用ユーザーが所有する/var/lib/moneroのような専用フォルダを作成し、データが大容量ディスク上に置かれるようノードをそこに向けます。

  6. 6

    設定ファイルを書く

    data-dir、ログ設定、プルーニングフラグ、RPCのバインド設定を記載したmonerod.confを作成します。設定ファイルは長いコマンドラインより扱いやすく、再起動後も設定が残ります。

  7. 7

    systemd配下で実行する

    systemdサービスを作成し、ノードが起動時に自動開始し、障害時には再起動し、非特権ユーザーで動作するようにします。サービスを有効化して起動します。

  8. 8

    初回同期を見守る

    ログをtailするか、monerodでstatusを実行します。初回同期はディスク速度によって数時間から1日かかります。ノードに依存する前に完了させましょう。

最小構成のmonerod.conf

  • data-dir=/var/lib/monero — DBを大容量ボリューム上に配置する
  • prune-blockchain=1 — プルーニングモードで実行しディスクを節約する
  • log-file=/var/log/monero/monerod.log および log-level=0
  • rpc-bind-ip=127.0.0.1 および rpc-bind-port=18081 — 意図的に公開しない限りRPCはローカルに留める
  • p2p-bind-port=18080 — 接続を維持するピアツーピア用のポート
  • no-igd=1 および enable-dns-blocklist=1 — VPSではUPnPを使わず、既知の不正なピアを遮断する

公開する意図がない限り、RPCは127.0.0.1にバインドしたままにしましょう。リモートのウォレットからアクセスさせたい場合は、18081をインターネット全体に開放するのではなく、SSHやWireGuard経由でトンネリングしてください。

ウォレットをノードに接続する

同期が完了したら、ウォレットのデーモンアドレスを自分のノードに向けます。これはプライベートに行いましょう — 平文のRPCポートをオープンなインターネットに晒してしまうと、自分でノードを運用する意味がなくなってしまいます。

SSHトンネル

リモートの18081をSSH経由でローカルのポートにフォワードします。ウォレットはlocalhostと通信するため、平文の通信が公開インターネットに出ることはありません。

WireGuard

ノードとデバイスを小規模なプライベートVPN上に置き、ウォレットをノードの内部IPに向けます。

Torの隠しサービス(Hidden Service)

RPCをonionサービスとして公開し、公開IPを持たずともリモートのウォレットがオフショアからアクセスできるようにします。

オフショア/公開ノードを運用する

制限付きRPCポート18089を通じて他者にサービスを提供することで、ネットワークに貢献できます。このポートはウォレットに必要な機能のみを公開し、機微な操作は隠されます。

  • --public-nodeと--rpc-restricted-bind-port=18089を使用して、制限付きエンドポイントを告知します。
  • TorやI2P経由での運用を検討し、ノードの所在地が自分の身元と結び付かないようにしましょう — プライバシーネットワークはMoneroにおいて第一級の存在です。
  • レート制限とファイアウォール設定は慎重に行いましょう。公開ノードはトラフィックを呼び込み、時には迷惑なピアも現れます。

ノードの上に構築する仕組みの中で、決まった数の確認(confirmation)を数えることでトランザクションの確定性を断定してはいけません。支払いはネットワークが確認した時点で決済されたものと扱い、どれだけ待つかは自身のリスク許容度で判断してください。

ノードを健全に保つ

  • ネットワークのアップグレード前後は速やかにmonerodを更新しましょう — 古いノードはフォークしてしまい、正しく検証できなくなる可能性があります。
  • ディスク使用量を監視しましょう。チェーンは増え続ける一方なので、ボリュームが満杯になる前にアラートを設定してください。
  • バックアップすべきはmonerod.confとsystemdユニットであり、ブロックチェーン自体ではありません — チェーンはピアから再同期されます。
  • ピア数と同期の高さを定期的に確認し、停止したり孤立したりしたノードを早期に発見しましょう。
Moneroノードには実際どれくらいのディスク容量が必要ですか?

現時点ではプルーニングノードなら100GB未満で余裕を持って収まりますが、フルノードは約250GB必要で、その数字も増え続けています。チェーンは絶えず増加するため、現在の合計値ぴったりではなく、余裕を持ったプロビジョニングをしてください。

MoneroノードにとってVPSは十分にプライベートと言えますか?

あなたを守るのはホスト環境ではなく、ノードのソフトウェアです — どちらにせよ検証はトラストレスです。メタデータのプライバシーを高めるには、no-KYCのプロバイダーを選び、暗号資産で支払い、RPCを公開インターネットから遮断し、必要に応じてノードをTorやI2P経由でルーティングしましょう。

ノードを運用するとウォレットは速くなりますか?

はい。NVMe上の高速なローカルノードに対する同期は、共有のキューもなく、スキャンリクエストを記録する第三者もいないため、遠く離れた公開ノードよりもはるかに速く、プライベートです。

ノードとウォレットを同じVPS上で運用できますか?

可能ですが、spend/viewキーはインターネットに面したマシンから切り離しておく方がクリーンです。VPS上ではmonerodを実行し、自分のデバイスからSSHトンネルやVPN経由でウォレットを接続しましょう。

実践してみましょう。

オフショアサーバーを $3.49/月〜 でデプロイ · 21種類の暗号資産 · KYC不要。