The postgres Unix user
======================

このページでは、
postgresユーザーとそのホームディレクトリの構成方法について説明します。

 :ref:`Postgres users in the database <The postgres Unix user>` の作成方法については別ページです。

シェル構成
----------

TPAは\ ``.bashrc`` ファイルをインストールし、 ``.profile``
または\ ``.bash_profile`` ファイルにも含まれていることを確認します。

ユーザー名、ホスト名、および作業ディレクトリを含むプロンプトを設定し、\ ``postgres_bin_dir``
が\ ``PATH`` にあることを確認し、\ ``PGDATA`` を\ ``postgres_data_dir``
の場所に設定します。

オプションで\ ``extra_bashrc_lines`` を指定して、任意の行を\ ``.bashrc``
に追加できます。 （ YAMLマルチライン文字列構文 ``>-``
を使用して、シェルメタキャラクタのクォートとエスケープについて心配する必要を回避します。）

.. code:: yaml

   cluster_vars:
     extra_bashrc_lines:
     - alias la=ls\ -la
     - >-
       export PATH="$PATH":/some/other/dir

sudoersを編集して\ ``sudo systemctl start/stop/reload/restart/status postgres``
を許可し、\ ``ulimits``
を変更して無制限のコアダンプを許可し、ファイル記述子の制限を引き上げます。

SSHキー
-------

TPAは\ ``ssh-keygen``
を使用して、postgresユーザーのSSHキーペアを生成およびインストールし、\ ``.ssh/authorized_keys``
を編集して、クラスター内のインスタンスが\ ``postgres``
として互いにsshできるようにします。

TLS証明書
---------

デフォルトでは、TPAはクラスター内で使用するプライベートキーと自己署名TLS証明書を生成します。これは、クライアントとサーバー間のトラフィックが転送中に暗号化されるのに十分です。独自の証明書署名インフラストラクチャを使用したい場合は、展開が完了した後にこれらを置き換えるか、
 :ref:`フック <フック>`  を使用して展開中に置き換えます。

ユーザー名
----------

``postgres_user`` および\ ``postgres_group``
設定（どちらもデフォルトで\ ``postgres``
）は、どこでも一貫して使用されます。何らかの理由でPostgresを別のユーザーとして実行する必要がある場合は、それらを変更できます。
