3. FreeBSD 10.4 RELEASE - postgreSQL - 外部からの接続設定

 
3.1 アクセス許可設定
3.2 ODBC 接続

3.1 アクセス許可設定

 PostgreSQL のデータベースは、デフォルトの設定ではホスト内のユーザのみにアクセスを許可しています。  ホスト外のユーザに対して、アクセスを許可するには、以下のファイルを編集します。  バージョン 9 代までとディレクトリ構成が異なっていますので、注意が必要です。
/var/db/postgres/data10/pg_hba.conf
/var/db/postgres/data10/postgresql.conf
 /var/db/postgres/data10/pg_hba.conf は、末尾の


# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust
# IPv6 local connections:
host    all             all             ::1/128                 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     trust
host    replication     all             127.0.0.1/32            trust
host    replication     all             ::1/128                 trust
 の個所を編集します。  データベースを参照可能にするには、許可するアドレスを下記の要領で設定します。
TYPE localは UNIX のドメインソケット使用の接続を示し host は TCP/IP を使用した接続を示します。
DATABASEデータベース名を記述します
all を指定すると全データベースを指定することになります
USERロール名を指定します
CIDR-ADDRESS 標準のドット区切り10進表記でのIPアドレスとCIDRマスクの長さを指定します
METHODユーザ認証を行う方法を指定します
identident(RFC1413)による認証を行う
trust認証処理を行わず、スルーでパスさせる
reject接続を拒否する
password [password_file] パスワードファイルによる認証を行う
crypt PostgreSQL のシステムテーブル pg_shadow による認証を行う
kbr4/kbr5Kerberos V4/V5 による認証を行う
 pg_hba.conf は上から順に見ていき、条件にマッチした行が見つかると、それが適用されます。  /var/db/postgres/data10/postgresql.conf は

# - Connection Settings -

#listen_addresses = 'localhost'         # what IP address(es) to listen on;
                                        # comma-separated list of addresses;
                                        # defaults to 'localhost'; use '*' for all
                                        # (change requires restart)
#port = 5432                            # (change requires restart)
 の記述を変更することで ODBC 接続できるようになります。  ODBC 接続を可能にするには

listen_addresses = '*'
port = 5432
 と、ポート番号 5432 を有効にし、listen_addresses に '*' を設定します。  ホストが複数の NIC とネットワークアドレスを所有していて、ネットワークアドレスによって開放するかどうかを決定するのであれば、listen_addresses に localhost を記述後、そのアドレスをカンマ区切りで記述します。

3.2 ODBC 接続

 クライアントマシンが Windows で Microsoft Office の Access を持っていれば ODBC を使って PostgreSQL 上のデータを参照したり操作したりすることが出来ます。  ODBC ドライバのダウンロード・インストール等については「postgreSQL - ODBC 接続」に記載しましたので、そちらをご参照ください。