# プライベートサーバの設定 [プライベートサーバ](/ja/docs/concepts/networks-and-servers/peer-protocol#%E3%83%97%E3%83%A9%E3%82%A4%E3%83%99%E3%83%BC%E3%83%88%E3%83%94%E3%82%A2)は、オープンなピアツーピアネットワーク内の検出されたピアに直接接続するのではなく、特定の信頼できるピアのみを通じてネットワークに接続する`rippled`サーバです。この種の構成は、[バリデータ](/ja/docs/infrastructure/configuration/server-modes/run-rippled-as-a-validator)に一般的に推奨される任意の対策ですが、その他の特定の目的でも役立ちます。 ## 前提条件 プライベートサーバを使用するには、次の前提条件を満たしている必要があります。 - [`rippled`をインストール](/ja/docs/infrastructure/installation)して最新バージョンにアップデートし、まだ実行していない状態である必要があります。 - 自社で運用している**プロキシ**を通じて接続するか、**公開ハブ**を通じて接続するかを決める必要があります。これらの選択肢の違いについては、[ピアリング構成のメリットとデメリット](/ja/docs/concepts/networks-and-servers/peer-protocol#%E3%83%94%E3%82%A2%E6%8E%A5%E7%B6%9A%E8%A8%AD%E5%AE%9A%E3%81%AE%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88%E3%81%A8%E3%83%87%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88)をご覧ください。 - プロキシを使用している場合、`rippled`がインストールされていてプロキシとして使用し実行される別のマシンが必要です。これらのサーバは、外部のネットワークとプライベートサーバに接続できる必要があります。 - どちらの構成でも、接続先のピアのIPアドレスとポートを把握しておく必要があります。 ## 手順 特定のサーバをプライベートピアとして設定するには、次の手順を実行します。 1. `rippled`の構成ファイルを編集します。 ``` vim /etc/opt/ripple/rippled.cfg ``` 2. プライベートピアリングを有効にします。 構成ファイルに以下のスタンザを追加するか、コメントを解除します。 ``` [peer_private] 1 ``` 3. 固定数のピアを追加します。 構成ファイルに`[ips_fixed]`スタンザを追加するか、コメントを解除します。このスタンザの各行は、接続先のピアのホスト名またはIPアドレス、1個の空白文字、このピアがピアプロトコル接続を受け付けるポートの順に記載されている必要があります。 例えば、**公開ハブ**を使用して接続する場合は、以下のスタンザを使用できます。 ``` [ips_fixed] r.ripple.com 51235 zaphod.alloy.ee 51235 ``` サーバが**プロキシ**を使用して接続している場合は、IPアドレスとポートが、プロキシとして使用している`rippled`サーバの構成と一致している必要があります。これらの各サーバについては、ポート番号が、サーバの構成ファイルに記載されている`protocol = peer`ポート(通常は51235)と一致している必要があります。例えば、構成は次のようになります。 ``` [ips_fixed] 192.168.0.1 51235 192.168.0.2 51235 ``` 4. プロキシを使用している場合、プロキシをプライベートピアと互いを含めてクラスター化します。 公開ハブを使用している場合は、このステップをスキップします。 プロキシを使用している場合、プライベートピアを含む[クラスターとしてプロキシを構成](/ja/docs/infrastructure/configuration/peering/cluster-rippled-servers)します。クラスターの各メンバーは、クラスターの_他の_各メンバーをリストにした`[ips_fixed]`スタンザを持っている必要があります。ただし、`[peer_private]`スタンザを持つのは**プライベートサーバのみ**とします。 各プロキシで`rippled`を再起動します。各プロキシサーバで、次のようにします。 ``` sudo service systemctl restart rippled ``` 5. プライベートサーバで`rippled`を起動します。 ``` sudo service systemctl start rippled ``` 6. [peersメソッド](/ja/docs/references/http-websocket-apis/admin-api-methods/peer-management-methods/peers)を使用して、プライベートサーバが自身のピアに *のみ* 接続していることを確認します。 レスポンスの`peers`配列に、構成済みのピアのいずれでもない`address`を持つオブジェクトが含まれていてはなりません。含まれている場合は、構成ファイルを再度確認して、プライベートサーバを再起動します。 ## 次のステップ 追加の予防対策として、自身のピアでないサーバからプライベートサーバへの着信接続をブロックするようにファイアウォールを設定する必要があります。プロキシサーバを実行している場合は、ファイヤーウォールを通じてプロキシに[ピアポートを転送](/ja/docs/infrastructure/configuration/peering/forward-ports-for-peering)するようにします。ただし、プライベートピアで**ない**ものに転送します。この設定方法の具体的な手順は、使用するファイアウォールによって異なります。 ファイアウォールがポート80で発信HTTP接続を**ブロックしない**ことを確認します。デフォルトの設定では、このポートを使用して**vl.ripple.com**から最新の推奨バリデータリストをダウンロードします。バリデータリストがないと、サーバはどのバリデータを信頼してよいかわからず、ネットワークが、いつコンセンサスに至ったかを認識できません。 ## 関連項目 - **コンセプト:** - [ピアプロトコル](/ja/docs/concepts/networks-and-servers/peer-protocol) - [コンセンサス](/ja/docs/concepts/consensus-protocol) - [並列ネットワーク](/ja/docs/concepts/networks-and-servers/parallel-networks) - **チュートリアル:** - [ピアクローラーの設定](/ja/docs/infrastructure/configuration/peering/configure-the-peer-crawler) - **リファレンス:** - [peersメソッド](/ja/docs/references/http-websocket-apis/admin-api-methods/peer-management-methods/peers) - [connectメソッド](/ja/docs/references/http-websocket-apis/admin-api-methods/peer-management-methods/connect) - [fetch_infoメソッド](/ja/docs/references/http-websocket-apis/admin-api-methods/status-and-debugging-methods/fetch_info) - [ピアクローラー](/ja/docs/references/http-websocket-apis/peer-port-methods/peer-crawler)