暗い北欧の石造りヴォールトの中、うなりを上げるサーバーラックのそばに座るNordBastionのシロクマのマスコット。頭上には大きなシアンのホログラフィックなブロックチェーンが弧を描き、開いた前足には輝くオレンジ色のMoneroシンボルが乗っている。ベンチには水色のNシールドが立てかけられている。
ハウツー · セルフホスト · 暗号通貨·読了14分 · 実践60分+同期

Monero ノードをセルフホストする。
チェーン先端がどこかを、他人に尋ねるのをやめる。

何もない Nordic VPS から自分だけのmonerodにたどり着くまでの6つのステップ — 検証済みバイナリ、ハードニング済みの設定、フルかプルーニングか、SSH、WireGuardまたはv3オニオン経由での到達。リモートノードはあなたの残高を読み取れませんが、あなたのIPがトランザクションをブロードキャストする瞬間は見えています — 本ガイドが閉じるのは、まさにそのひとつのギャップです。Debian 12、v0.18系列でテスト済み。

6つのステップ
  1. 01

    プロビジョニング

    まずディスク、それからハードニング

  2. 02

    確認

    署名確認、それからインストール

  3. 03

    設定する

    monerod.conf + systemd

  4. 04

    同期

    1〜2日、見守る

  5. 05

    接続

    SSH、WireGuard、またはオニオン

  6. 06

    匿名化

    Tor経由でブロードキャスト

始める前に · 本当の脅威

リモートノードが実際に知ること。噂ほどではないが、望むより多い。

ほとんどすべてのMoneroウォレットは、他人のデーモンを指した状態で出荷されます。代わりの選択肢がおよそ4分の1テラバイトと2日間の待ち時間だからです。このデフォルト設定には十分な理由があり、そこから生じるプライバシーの喪失は、両極端な形で誤って語られがちです。リモートノードが残高を読み取れると思っている人たちと、逆に何も知られないと思っている人たちです。この漏洩の正しい形を理解することが、本ガイドに午後の時間を割く価値があるかどうかを教えてくれます。

できないこと。 残高もアドレスも鍵も見ることができません。Moneroウォレットは、何を探すべきかをノードに伝えません。あるブロック範囲のブロックをまるごと取得し、デバイスの外に出ることのないプライベートビューキーを使って、各出力をローカルで復号しようとするだけです。ノードは、誰に対しても渡すのと同じバイト列を渡しているにすぎません。どの出力が(あるとして)あなたのものかを知ることはできません — これは、監視すべきアドレスをサーバー側に渡し、サーバーが何を監視しているかを正確に把握している、他所のライトウォレット方式との本質的なアーキテクチャ上の違いです。

できること。 接続してきたIPアドレスは見えます。そのIPが要求したブロック範囲も見え、これによって背後にあるウォレットがいつ作成されたかがおおよそ絞り込めます。リフレッシュのリズムも見え、これは利用パターンになります。そして送金するときには、ネットワークの他の部分より先に、あなたから署名済みのトランザクションを受け取ります — つまり、このトランザクションがこのアドレスから、この瞬間にネットワークへ入った、と記録できる立場にあるということです。Moneroの他のすべての設計は、まさにこの種のリンクを断ち切るためにあります。それを、安定したIPと一緒に、見知らぬ相手へ無償で差し出しているのが、直す価値のある部分です。

そして、誰も語らない「できること」。 嘘をつくことがあります。悪意のある、あるいは単に壊れているノードは、古いチェーン先端を返すことで、実際にはまだ起きていない入金をウォレットに報告させたり、あなたが送ったつもりのトランザクションを中継しないままにしたりできます。これによって資金が盗まれることはありません — ウォレットは復号した内容を自分で検証するからです — ですが、あなたに世界の誤った姿にもとづいて行動させることにはなり、確認を待っている事業者にとってはそれ自体がひとつの損失です。自分で運用するノードは、その答えをいちいち疑わなくてよいノードです。

何が露出するか パブリックなリモートノード あなたのノード、クリアネット あなたのノード、Tor経由
あなたの残高とアドレスしないしないしない
あなたのIPが、ノード運用者にはい — 見知らぬ相手はい — あなた自身なし
ウォレット作成時期はい — 見知らぬ相手はい — あなた自身はい — あなた自身
IP ↔ 送信するトランザクションはい — 見知らぬ相手あなたのサーバーIPが、そのピアたちにtx proxyで壊れる
偽のチェーン先端を返す可能性があるはいなしなし

「ウォレット作成時期」が自分のノードでは今も見えているのは、リクエスト自体は依然として発生しているからです — ただ、それが他の誰の目にも触れなくなるだけです。この取り組みの狙いはそこにあります。メタデータを消し去ることではなく、それを握る当事者を自分ひとりにすることです。

始める前に · サイジング

フルかプルーニングか。最初の同期の前に一度だけ決めること。

プルーニングを行うMoneroノードは、古いブロックのリング署名データを8分の1だけ残し、残りは捨てます。それでもすべてのブロックを自分でダウンロードして検証します — プルーニングとは信頼することではなく、確認したうえで忘れることです — そして、ウォレットが求めるものや、別のプルーニングノードが必要とするものはすべて欠かさず保持します。節約できるディスク容量はおよそ3分の2です。自分のウォレットを支えるだけのノードであれば、機能面での違いに気づくことは決してありません。

フルノードを選ぶべき理由は、狭いながらも実在します。まっさらな新しいノードがゼロからチェーンを検証するために必要な、完全な過去データを渡せるのはフルノードだけであり、プルーニングノードだけで構成されたネットワークは成り立ちません。ディスクに余裕があるなら、フルで運用することはひとつの貢献です。余裕がないなら、プルーニングで運用することは参加の劣った形ではありません — むしろ、ほとんどのセルフホスト運用者が選ぶべき構成です。

デーモンを起動する前に決める。 最初の起動時に--prune-blockchainを渡しておけば、同期と同時にプルーニングが行われ、速くて追加コストもかかりません。あとからフルのデータベースを変換するには、デーモンを停止し、別途monero-blockchain-pruneツールを実行する必要があり、これには数時間と、作業用の空き容量がかかります。最初に正しくやれば設定ファイル1行の話で済みますが、間違えると一晩がかりになります。

全体像 ディスク、2026年半ば 自分に合うプラン 選ぶ場面
プルーニング · ぎりぎり~90 GBSentinel · 2 vCPU / 4 GB / 120 GB · $3.90とにかく安く動くノードが欲しく、あとでディスクを見直すのは構わない
プルーニング · 余裕あり~90 GBGarrison · 4 vCPU / 8 GB / 240 GB · $7.90標準の推奨構成 — 何年分もの余裕、温まったデータベースキャッシュ
完全240 GB+Ravelin · 8 vCPU / 16 GB / 480 GB · $16.90アーカイブを手元に持ちたい、あるいは新しいノードの初回同期に応えたい
フル + 公開サービス240 GB+Bulwark · 16 vCPU / 32 GB / 960 GB · $32.90実際のピアトラフィックを運ぶつもりがある — ここで帯域幅無制限が効いてくる

チェーンサイズは2026年半ば時点の見積もりであり、増える方向にしか動きません。プランを決める前に現在の数値を確認してください — NordBastionのどのプランにも帯域幅無制限が付いており、ピアスロットを開放したノードが実際に消費するのはまさにこの帯域幅です。

この表に載っていないものがひとつあります。RAMです。デーモン自体は控えめな要求しかせず、4 GBあれば実際にノードは動きます。追加のメモリが買ってくれるのは、データベースの手前にあるページキャッシュです。これは日々の運用よりも、初回同期やウォレットの最初のフルリスキャンの際に効いてきます。同じ予算でRAMを増やすかNVMeを増やすか迷ったら、NVMeを選んでください — そして決める前にプラン一覧にも目を通してみてください。

ステップ01 · プロビジョニング

箱、それから壁。何かが待ち受け始める前に。

パネルでは、Order → VPS → プルーニングノードならGarrison、フルチェーンが欲しいならRavelin、イメージはDebian 12を選びます。アカウント開設にメールアドレスは不要、身分証明書もいっさい求められません。そして請求はMoneroで決済されます — これは気持ちのよい対称性であると同時に、私たちが知る限りウォレットから起動済みサーバーまでの最短経路でもあります。拠点は、ネットワークへのレイテンシではなく、自分自身へのレイテンシで選んでください。ピア同士の接続は非同期なので気にしませんが、ウォレットの更新は気にします。

そのあと、最初の1時間は壁(ファイアウォール)に費やしてください。Moneroノードは本質的に公開サービスです — P2Pポートで待ち受け、見知らぬ相手と話します — ですから基本の対策は選択の余地がありません。非標準ポートでの鍵認証のみのSSH、デフォルトで拒否するファイアウォール、自動セキュリティアップデート、fail2banです。最初の1時間のハードニングチェックリストが対になる記事であり、デーモンを用意する前に一通り実行しておく価値があります。

このノードのファイアウォールの形は、めずらしいほどシンプルです。外部から到達できてよいものは、SSHポートとMoneroのP2Pポートの、ちょうど2つだけです。それ以外は何もありません — 特にRPCポートは対象外で、これはステップ05でトンネル経由で到達させます。

ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp        # or your relocated SSH port
ufw allow 18080/tcp     # Monero P2P — the only service port
ufw enable
ufw status numbered

4分の1テラバイトを同期する前に、実際に割り当てられたディスク容量を確認してください。初回同期から40時間経ったところで不足が発覚するのは、独特の辛さがあります:

df -h /
# → the "Avail" column is your real budget, not the tier name
ステップ02 · 検証

署名を先に確認する。これは儀式では終わらない、数少ないダウンロードのひとつ。

これからインストールしようとしているのは、あなたのウォレットが信頼することになるネットワーク像を握るプログラムです。改ざんされたmonerodは、ウォレットに嘘をつくには絶好の位置にあります。ですから、ここでの検証は儀式ではありません — Moneroプロジェクトが署名済みハッシュファイルをわざわざ公開している理由そのものです。一度でいいので、きちんとやってください。

公式ダウンロードページから、Linux x86-64版のCLIアーカイブと署名済みハッシュファイル、そしてそのページに掲載されているメンテナーの公開鍵を取得してください。フォーラムの投稿で見つけたような、第三者のキーサーバーミラーから鍵を取得してはいけません — 鍵の名前が記載されているのと同じページから、TLS経由で、プロジェクト自身から取得してください。

apt update && apt install -y gnupg curl bzip2

cd /tmp
curl -LO https://downloads.getmonero.org/cli/linux64      # the release archive
curl -LO https://www.getmonero.org/downloads/hashes.txt   # the signed hash list

# Import the signing key named on getmonero.org, then:
gpg --verify hashes.txt
# → "Good signature from ..." — anything else, stop here.

署名の検証が済んで初めて、チェックサムに意味が生まれます。ダウンロードしたアーカイブのハッシュを計算し、たった今検証したファイルの中に、その文字列とまったく同じものを探してください:

sha256sum linux64
grep -F "$(sha256sum linux64 | cut -d' ' -f1)" hashes.txt
# → one matching line. No output means no match: do not install it.

そのあと、アーカイブを展開し、必要な2つのバイナリを配置します。アーカイブにはバージョン番号のついたディレクトリが含まれています。monerodがデーモン本体で、monero-blockchain-pruneは、プルーニングの方針をあとで変える気になったときにあってよかったと思えるオフラインツールです。

tar -xjf linux64
cd monero-x86_64-linux-gnu-*/
install -m 0755 monerod monero-blockchain-prune /usr/local/bin/
monerod --version

そのコマンドが表示するバージョン文字列を、あとで見返せる場所に控えておいてください。ネットワークアップグレードが告知されたとき、自分がどのバージョンからアップグレードするのかを正確に知りたくなるはずですが、「latest」ではその答えになりません。

ステップ03 · 設定

設定ファイルひとつ、ユニットファイルひとつ。RPCリスナーは2つ、公開するのはそのうち片方だけ。

デーモンには専用の非特権ユーザーと専用のディレクトリを与えてください。Moneroノードは、いったん動き出せばroot権限を必要とする要素は何ひとつありません。そして、一日中インターネットに直接さらされるサービスこそ、rootで動かしたくないサービスの典型です。

useradd --system --home /var/lib/monero --shell /usr/sbin/nologin monero
mkdir -p /var/lib/monero /var/log/monero
chown -R monero:monero /var/lib/monero /var/log/monero

/etc/monerod.conf — monerodがコマンドラインで受け取るのと同じオプションを、先頭のダッシュなしで書いたものです。フルノードにすると決めた場合はprune-blockchainの行を削除してください。取り消しがきかない行は、これだけです。

# ── storage ────────────────────────────────────────────────
data-dir=/var/lib/monero
log-file=/var/log/monero/monerod.log
log-level=0
max-log-file-size=104857600
prune-blockchain=1
sync-pruned-blocks=1

# ── P2P: the only port the firewall opens ─────────────────
p2p-bind-ip=0.0.0.0
p2p-bind-port=18080
out-peers=32
in-peers=48
no-igd=1

# ── RPC A: unrestricted, loopback only, for you ───────────
rpc-bind-ip=127.0.0.1
rpc-bind-port=18081

# ── RPC B: restricted, what a wallet is allowed to ask ────
rpc-restricted-bind-ip=127.0.0.1
rpc-restricted-bind-port=18089

# ── misc ──────────────────────────────────────────────────
zmq-pub=tcp://127.0.0.1:18083
db-sync-mode=safe

理解する価値があるのは、RPCリスナーが2つあるという部分です。ポート18081は管理系の呼び出しを含むあらゆる要求に応答するもので、あるべき場所であるループバックにバインドされています。ポート18089は制限付きインターフェースで、読み取り専用の呼び出しのみに応じ、プライバシーに関わる内部情報は扱いません。ネットワーク上のあらゆるパブリックノードが公開しているのもこちらです。ここではどちらも127.0.0.1に置かれているのは意図的なもので、ステップ05では18089を、開放するのではなくトンネル経由で到達させます。

/etc/systemd/system/monerod.service

[Unit]
Description=Monero full node
After=network-online.target
Wants=network-online.target

[Service]
User=monero
Group=monero
Type=simple
ExecStart=/usr/local/bin/monerod --config-file /etc/monerod.conf \
          --non-interactive
Restart=on-failure
RestartSec=30
TimeoutStopSec=300
KillSignal=SIGINT
StandardOutput=journal
StandardError=journal
NoNewPrivileges=true
PrivateTmp=true
ProtectSystem=full
ProtectHome=true

[Install]
WantedBy=multi-user.target

KillSignalとTimeoutStopSecは、飾りではない。 データベースはきれいに閉じることを前提としており、書き込みの最中に強制終了させられたデーモンは、再起動時に修復、あるいは再同期が必要になることがあります。SIGINTはデーモンに正しく終了するよう求めるシグナルであり、5分はそれを完了させるための猶予期間です。この2行を省いているガイドはどれも、運の悪い再起動ひとつで週末を丸ごと失う距離にあります。

systemctl daemon-reload
systemctl enable --now monerod
systemctl status monerod --no-pager
ステップ04 · 同期

検証に1〜2日。お金では買えない部分。

これで、デーモンはジェネシスブロックからチェーンをたどり、出会うすべてのリング署名とレンジプルーフを確認している状態になります。NVMeとそこそこのコア数があれば1〜2日で終わります。ボトルネックはCPUとディスクであって帯域幅ではないため、回線を速くしても短縮にはなりません。この作業こそが、このノードの成果物のすべてです。これを省いたノードは、単に他人を信頼する、少し遅いだけの方法にすぎません。

別のシェルから様子を見てください。ステータス行には高さ、ピア数、推定残り時間が表示され、ほとんどのノードにとってはこれだけで監視としては十分です:

monerod --rpc-bind-port 18081 status
journalctl -u monerod -f --no-pager
df -h /var/lib/monero      # check this one more often than you think you need to

ダウンロードしたブロックチェーンをインポートしない。 インターネット上には、待ち時間を省けると謳うアーカイブが存在しますが、それを取り込んでしまえば、検証済みのノードが、見知らぬ誰かに渡されたファイルを信じるノードに変わってしまいます。それでは、あなたがここに来た目的そのものが台無しになります。同期時間がどうしても許容できないなら、正直な解決策はコア数の多い箱を用意することであり、検証を迂回する近道ではありません。

ブートストラップデーモンの落とし穴。 monerodは、自分の同期が追いつくまでの間、パブリックノードからの情報でウォレットの問い合わせに応えることができます。これは便利な機能ですが、鋭い刃でもあります。有効になっている間はずっと、あなたのウォレットのトラフィックが、まさに本ガイドが取り除こうとしているのと同じ種類の第三者によって扱われているからです。最初の1時間を乗り切るためにこれを有効にした場合は、カレンダーにリマインダーを入れ、自分のノードの高さが最新に追いついた瞬間にオフにしてください。誰も終わらせることを覚えていない一時的な妥協は、単に古い構成が新しい名前を着ているだけです。

高さの変化が止まり、信頼できるブロックエクスプローラーと一致したら、ノードは稼働状態です。ここから先、デーモンが要求するのは1日あたり数ギガバイトのトラフィックとわずかなCPUだけで、アップグレード以外に手をかける必要はもうありません。

ステップ05 · 接続

入り口は3つ。そのどれも、開放したRPCポートではない。

制限付きRPCインターフェースはループバックにバインドされており、現時点では何からも到達できません。これは正しいデフォルトの状態であり、このステップの残りは、そのギャップをどう越えるかを選ぶ話です。ひとつだけ選んでください — 組み合わせると相性が悪く、必要なのもひとつだけです。

選択肢A · SSHトンネル — マシン1台、セットアップ不要。 ノートパソコン1台だけで使うなら、これが正解です。新たに何かをインストールする必要も、新たに何かが待ち受け始めることもなく、トンネルはセッションが終われば消えます。あとはウォレットを、ノードがローカルにあるかのように127.0.0.1:18089へ向けるだけです。

ssh -N -L 18089:127.0.0.1:18089 monero-vps
# leave it running; point the wallet at 127.0.0.1:18089

選択肢B · WireGuard — 複数デバイス、常時接続。 スマートフォンとデスクトップとノートパソコンをまとめて使うなら、これが正解です。ノードはあなたのプライベートネットワークに参加し、ウォレットはそのトンネルIPでノードを指定します。インターネットにポートをさらすことはいっさいありません。WireGuardのガイドでトンネルを構築します。ここでの追加作業は、デーモンがそのトンネル上で応答するようにするだけです。

# in /etc/monerod.conf
rpc-restricted-bind-ip=10.8.0.1        # the node's WireGuard address
confirm-external-bind=1

# and in the firewall, only on the tunnel interface
ufw allow in on wg0 to any port 18089 proto tcp

選択肢C · v3オニオン — どこからでも、ポートなし、固定IPなし。 旅行が多い場合や、どこからでもインバウンドポートなしでノードに到達できるようにしたい場合は、これが正解です。Torがサービスを公開してくれるので、転送する対象もスキャンされる対象もありません。オニオンサービスのガイドでtorrc全体を扱っています。ノード固有の部分はわずか3行です。

# /etc/tor/torrc
HiddenServiceDir /var/lib/tor/monero-rpc/
HiddenServiceVersion 3
HiddenServicePort 18089 127.0.0.1:18089

# then read the address Tor generated for you
cat /var/lib/tor/monero-rpc/hostname

どちらの扉を作ったとしても、ウォレット側で入力する項目は同じ3つです。Featherでは、Settings → Node → add a custom nodeでホストとポートを入力し、オニオンを選んだ場合はTor proxyを有効にします。公式のMonero GUIでは、Settings → Node → Remote nodeで「connect to a remote node」を選択します。Cake Walletでは、Settings → Nodes → add nodeで、オニオンアドレスをそのまま入力できます。RPCインターフェースにユーザー名とパスワードを設定した場合は、3つとも対応する入力欄があります。

そのあと、うまくいったか確認する。 ウォレットには自分のノードと同じ高さが表示され、ノード側にはRPCクライアントがもうひとつ増えて表示されるはずです。それでもウォレットが1秒足らずで更新を終えるようなら、おそらくまだデフォルトのパブリックノードと話しています — 多くのウォレットは古いノードをリストに残したままにしており、黙ってそちらにフォールバックします。

ステップ06 · 匿名化

Tor経由でブロードキャスト。トランザクションとアドレスをつなぐ最後のリンク。

これで、ウォレットはトランザクションを見知らぬ相手ではなく、自分自身のデーモンに渡すことになります。ですが、そのデーモンは今度は、あなたのサーバーのIPアドレスからピアたちにトランザクションを通知することになり、ピアはそれを記録しています。Moneroはもともと、新しいトランザクションを拡散させる前にランダム化されたリレー段階を挟んでおり、最初のホップの特定を難しくしています。それをTor経由で送り出せば、この疑問自体をまるごと取り除くことができます。

1行で済みます。デーモンはブロックの同期をクリアネット経由で続けます — これが同期を速く保つ理由です — そのうえで、送信するトランザクションのブロードキャストだけをローカルのTor SOCKSポート経由に振り分けます:

# in /etc/monerod.conf, with tor running locally
tx-proxy=tor,127.0.0.1:9050,16

さらに踏み込んで、Tor経由のピアも受け入れたい場合は、P2P側用に2つ目のオニオンサービスを公開し、どのオニオンアドレスを広告するかをデーモンに伝えます。ポート番号は、両側で一致していて、かつそのマシン上で他に使われていない限り、自由に選べます:

# /etc/tor/torrc
HiddenServiceDir /var/lib/tor/monero-p2p/
HiddenServiceVersion 3
HiddenServicePort 18084 127.0.0.1:18084

# /etc/monerod.conf
anonymous-inbound=YOUR_ONION_ADDRESS.onion:18084,127.0.0.1:18084

その一歩は、自分よりもネットワークを助けるものですが、それはそれで十分に踏み出す理由になります。多少のレイテンシとピアスロットを消費しますが、そのぶんTor限定のノードにも接続先ができることになります。

任意:パブリックノードを提供する。 帯域幅とディスクに余裕があれば、制限付きRPCエンドポイントを公開し、他の人のウォレットから使えるようにすることもできます。これは、自分のデーモンを運用する人がどれほど少ないかという、このネットワークの一番の弱点に対する正真正銘の貢献です — ただし、公開サービスにつきものの責任も伴います。他人のトラフィックを運ぶことになりますし、ノード運用者として見える存在になります。ここのどのプランも帯域幅無制限なので、前者については請求額ではなく、単なる判断の問題になります。

# only if you mean it: expose the RESTRICTED port, never 18081
rpc-restricted-bind-ip=0.0.0.0
confirm-external-bind=1
public-node=1
# and open it: ufw allow 18089/tcp

ノードは、ほかのセルフホストインフラと並べて置くのにも向いています — たとえば同じラックにLightning ノードを置く、といった具合です。予算が許すなら別々の箱に分けてください。稼働率の要件も、障害からの復旧の勝手もまったく異なるからです。

フィールドノート · 6つの落とし穴

うまくいかなくなる6つの原因。人がぶつかる順に。

落とし穴01 · 不可逆

初回同期中にディスクが埋まった

デーモンは停止し、データベースは再び開く前に修復処理が必要になることがあります。同期の間は毎日空き容量を確認し、今日のチェーンではなく3年後のチェーンに合わせてプランのサイズを選んでください。

落とし穴02 · 露出

無制限のRPCポートが公開されてしまった

ポート18081は管理系の呼び出しに応答します。これはずっと127.0.0.1に留めておくべきものです。外部からノードに到達する必要がある場合は、トンネルを経由して、18089の制限付きリスナーに到達させてください。

落とし穴03 · 幻影

ウォレットがまだパブリックノードを使っている

ノードをリストに追加しただけでは、それが選択されたことにはなりません。多くのウォレットは到達できないと黙ってフォールバックします。高さを比較し、ノードがRPCクライアントの接続を報告しているか確認してください。

落とし穴04 · プルーニング

プルーニングフラグを同期のあとから追加した

あとから追加しても、既存のデータベースは縮小されません。変換するにはデーモンを停止し、monero-blockchain-pruneを実行する必要があり、これには数時間と作業用の空き容量が必要です。最初の起動前に決めておいてください。

落とし穴05 · コンセンサス

ノードが静かにチェーンを追わなくなった

ネットワークアップグレードが行われたのに、デーモンを更新しなかった場合です。大きな警告は出ません — 高さが実際の状態と合わなくなるだけです。リリースの告知を追い、フォークの高さより前にアップグレードしてください。

落とし穴06 · シャットダウン

強制終了でデータベースが破損した

書き込みの最中にSIGKILLを受けた場合です。多くは、KillSignalが設定されておらず、停止タイムアウトが短いsystemdユニットが原因です。SIGINTを使い、5分の猶予を与えて、デーモン自身にデータベースを閉じさせてください。

FAQ · Monero ノード

質問、回答済み。

自分で運用するデーモンにウォレットを移す前、最中、そして後に出てくる10の質問。

リモートのMoneroノードは自分の残高を見ることができますか?

いいえ。Moneroウォレットはクライアント側でスキャンします。ウォレットはノードに対してブロックの範囲を要求し、それをまるごとダウンロードして、あなたのプライベートビューキーを使って各出力をローカルで復号しようとします。ノードがあなたのビューキー、スペンドキー、アドレスを受け取ることは一切なく、渡したばかりの出力のうちどれがあなたのものかを知ることもできません。これは、どのアドレスやスクリプトを監視するかを通常サーバーに伝えるBitcoinのライトウォレットとは、本質的にアーキテクチャが異なる点です。リモートノードが実際に知るのはネットワーク層の情報です。あなたのIPアドレス、そのIPのウォレットが同期中であるという事実、要求されたブロック範囲(これによってウォレットのリストアハイトがおおよそ絞り込めます)、そして何より、ブロードキャストのために渡すトランザクションです。最後のこれこそが、塞ぐ価値のある漏洩です。

フルノードとプルーニングノード — どちらを運用すべきですか?

特に理由がなければ、プルーニングで運用してください。プルーニングノードは古いブロックのリング署名データの8分の7を捨てますが、ウォレットや新しいピアが実際に必要とするものはすべて保持し、チェーン全体を自分で検証することに変わりはなく、ディスク容量はフルノードのおよそ3分の1に収まります。個人のウォレットバックエンドとして使う分には、挙動に違いはありません。フルノードを運用すべきなのは、ゼロから初回同期を行う新しいノードにデータを提供できるようにしたい場合、任意の過去のトランザクションデータを読み取るブロックエクスプローラー系のツールを動かす場合、あるいは単に完全なアーカイブを手元に持ちたい場合です。最初の同期の前に決めてください。--prune-blockchainは同期と同時にプルーニングを行いますが、すでに同期済みのフルデータベースを変換するには、デーモンを停止して別途monero-blockchain-pruneツールを実行する必要があります。

2026年、Moneroノードにはどれくらいのディスク容量が必要ですか?

フルノードは2026年半ばの時点で240 GBを超えており、年に数十ギガバイトのオーダーで増え続けています。ですから、今日のチェーンではなく3年後のチェーンに合わせてサイズを選んでください。プルーニングノードはその3分の1程度で、現状ではおよそ85から95 GBです。実際には、Garrison(240 GB NVMe)がプルーニングノードにとって何年分もの余裕を持った快適な置き場所になり、フルノードにはRavelin(480 GB)がふさわしい箱になります。120 GBのSentinelは今日時点ではプルーニングノードを収められますが、思ったより早くまた容量を考え直すことになるでしょう。ディスクを購入する前に現在のチェーンサイズを確認してください — このガイドの中で唯一、確実に古くなる数字がこれです。

初回同期にはどのくらい時間がかかりますか?

初回同期にはNVMeで1〜2日かかり、ボトルネックになるのは回線ではなくCPUとディスクです。デーモンはジェネシスブロック以降のすべてのリング署名とレンジプルーフを検証しています。それこそがこの作業の中身であり、ノードを運用するだけの価値がある理由でもあります。この時間を大きく悪化させる要因が2つあります。NVMeの代わりに回転式ディスクを使うこと(2日が1週間になることもあります)と、途中でディスク容量が尽きることです。逆に、期待されるほど効果がない要因も2つあります。帯域幅を増やすことと、データベースのページキャッシュを温める分を超えてRAMを増やすことです。待ち時間を省くために、第三者が配布するブロックチェーンのアーカイブをインポートしてはいけません — それは、信頼しないために始めたはずの相手を、まさにそのまま信頼することになります。

MoneroのRPCポートをインターネットに公開しても安全ですか?

無制限のインターフェースだけは、絶対に公開しないでください。無制限のRPCインターフェースは管理系の呼び出しを外部にさらすものであり、ノードが動いている間はずっと127.0.0.1に留めておくべきです。制限付きインターフェースはまったく別物で、ウォレットが必要とする読み取り専用の呼び出しにしか応じず、ネットワーク上のあらゆるパブリックノードが公開しているのもこちらです。とはいえ、これをクリアネットのポートで公開することは、アドレス空間をスキャンしている誰に対しても「ここにMoneroユーザーがいる」と告げているのと同じです。本ガイドでの優先順位は、まずv3オニオンサービス、次にWireGuardトンネル、3番目に単一マシン向けのSSHトンネル、そして意図的にパブリックノードをネットワークへ提供すると決めた場合に限り、素のパブリックポートです。

Moneroノードを運用すると送金業者になってしまいますか?

ノードは鍵を保持せず、資金も預からず、誰の資金も動かせません。他人がすでに署名したブロックを検証し、トランザクションを中継するだけです — 読めない手紙を運ぶメールリレーと同じ立場です。これが技術的な現実であり、法的な現実は法域によって決まります。本ガイドは法的助言ではありません。法域によって変わるのは、誰が何を強制できるかという点です。北欧の4つの法域についてのガイドでは、ストックホルム、ヘルシンキ、オスロ、レイキャビクに置かれたサーバーに適用される法令を詳しく扱っています。

Moneroのネットワークアップグレードのあとも、自分のノードは動き続けますか?

更新し続ける限りは、です。Moneroは定期的にネットワークアップグレードを行っており、古いコンセンサスルールのまま動いているデーモンは、フォークの高さでメインチェーンについていけなくなります。大きな警告が出るわけではなく、ただ止まるか分岐するかするだけで、ウォレットは実態と合わなくなった高さを黙って報告し続けます。リリースの告知を購読し、変化し続けるタグを追うのではなくインストールしたバージョンを固定し、告知されたアップグレードの高さに合わせてカレンダーにリマインダーを入れてください。これは、セルフホストのノードが役に立たなくなる最も多い原因です。クラッシュではなく、ただ告知を読まなくなった運用者がいるだけなのです。

ノードはTor経由で運用すべきですか?

送信するトランザクションのブロードキャストをTor経由にする — これが、明確で安上がりなプライバシー上の見返りが得られる、唯一の設定です。「このトランザクションがネットワークに入った」という事実と、「このIPアドレスが存在する」という事実を切り離せるからです。Tor経由のインバウンドピアも受け入れるようにするのは、自分よりもネットワークを助けるさらなる一歩であり、多少のレイテンシがかかります。ピアトラフィックのすべてをTor経由にするのは、より積極的な選択肢です。これは機能しますが、初回同期がかなり遅くなるため、多くの人はクリアネットで同期を終えてから、トランザクションの経路だけをTorに切り替えます。Torオニオンサービスのガイドでは、torrc側についてさらに詳しく扱っています。

自分のノードを使っているのに、ウォレットが遅いのはなぜですか?

ほとんどの場合、原因はリストアハイトです。リストアハイトが設定されていない、あるいは0のままのウォレットは、復元のたびにジェネシスブロックからチェーン全体を再スキャンしてしまい、何時間ものローカル処理が無駄になります。リストアハイトには、そのウォレットが作成された時点のブロックを設定してください。2つ目の原因はネットワーク経路です。別の国にあるウォレットが混雑したオニオン回線越しにあなたのノードと通信すると、近所のパブリックノードにつないだ同じウォレットより遅くなります — それがプライバシーの代償であり、WireGuardトンネルを使えば速度の大部分は取り戻せます。3つ目、そして見落とされがちな原因は、あなたのノード自体がまだ初回同期を終えておらず、ブートストラップデーモンから応答している状態です。

なぜわざわざKYC 不要のプロバイダーでノードをホストするのですか?

ノードは、長期間稼働し続け、外部から到達可能で、あなたのトランザクションがそこを通過するものだからです。フルノードを運用すると、あなたのウォレットと見知らぬ他人のノードとの間の漏洩は塞がれます — ですがその代わりに、あなたのノードと、そのマシンを貸してくれた相手との間に、より小さな漏洩が生まれます。そのマシンの申し込みにパスポートのスキャンと本名のカードが使われていたなら、相関関係を取り除いたのではなく、移しただけということになります。Moneroノードを動かすサーバーの支払いをMoneroで行うのは、単なるスローガンではありません。2つのレイヤーが互いに矛盾しなくなる、唯一の構成だからです。匿名VPSホスティングについての基幹ガイドでは、この3つのレイヤーを最初から最後まで扱っています。

サーバーを取得する

自分のデーモン用 Nordic VPS。KYC 不要、XMR 払い。

Garrison(4 vCPU、8 GB、240 GB NVMe、$7.90/月)なら、プルーニングノードを何年分もの余裕を持って収容できます。フルチェーンを保持するならRavelin(480 GB)です。どのプランも帯域幅無制限、申し込みにメールアドレスは不要、身分証明書も一切求めません。

最終レビュー · 2026-10-12 · 出典 · getmonero.org ユーザーガイド(ノードの運用、プルーニング、TorとI2P)、v0.18系列のmonerod --help、Debian 12およびTor Projectのドキュメント · 頻度 · 年次

プライベートホスティング、北欧で構築。