SSL Certificates
================

``config.yml`` で\ ``enable_pg_backup_api: true``
を設定するか、configure中に\ ``--enable-pg-backup-api``
コマンドラインオプションを使用すると、\ ``barman``
ロールを持つインスタンスはpg-backup-apiをインストールし、クライアント証明書認証用にApacheプロキシを設定します。このApacheプロキシは、クラスター用に生成されたSSL
CAを使用して、サーバーとクライアントの証明書を生成します。

.. code:: yaml

   cluster_vars:
     enable_pg_backup_api: true

pg-backup-apiは、デフォルトでパッケージを介してインストールされますが、gitブランチまたはローカルディレクトリからインストールすることもできます。詳細については、
 :ref:`configure-source.md <Building from source>` および :ref:`install_from_source.md <Installing from source>` を参照してください。

pg-backup-apiを実行しているbarmanノードで\ ``pg-backup-api status``
を実行します。「OK」が返された場合、pg-backup-apiサービスが実行されています。

プロキシが動作していることをテストするには、次のコマンドを実行します。

.. code:: shell

   curl --cert /etc/tpa/pg-backup-api/pg-backup-user.crt \
        --key /etc/tpa/pg-backup-api/pg-backup-user.key \
        -X GET https://{hostname}/diagnose

機能している場合は、大規模なjson出力を取得します。これを\ ``barman diagnose``
の出力と比較できます。それらは正確に一致するはずです。

ルート証明書は、デフォルトで\ ``/etc/tpa/pg-backup-api/``
にコピーされます。

クライアント証明書とキー ``pg-backup-user.crt``
および\ ``pg-backup-user.key`` は、テストのために生成されます
``tpaexec test`` を介してまたはbarmanホストからのコマンドライン。
 :ref:`テスト <テスト>` を参照してください。

Apacheプロキシサーバーの証明書とキー\ ``pg-backup-api.crt``
および\ ``pg-backup-api.key`` も生成されます

APIを照会する必要がある各サービスは、独自のクライアント証明書を個別に生成する必要があります。たとえば、PEMエージェントロールは、\ ``--enable-pem``
および\ ``--enable-pg-backup-api``
またはconfig.yml同等の両方が使用される場合、セットアップ中にクライアント証明書を生成します。
