[pgsql-jp: 29128] pg_hba.confのエントリーエラー
Takeo Shibata
shibata @ areabe.com
2003年 2月 19日 (水) 06:14:39 JST
私は
postgresqlで利用してますが
同様のエラーが発生してます
問題なのは
いままで接続できていたのが
2度と接続できなくなるということで
Versionは7.2.2ですが、
pg_hab.confの
エントリーに
host DB_name 127.0.0.1 255.255.255.255 md5
host DB_name 192.168.1.0 255.255.255.0 md5 pgusr.dat
だけをいれておりました
postgresqlのユーザー名ではlocalhostである
192.168.1.241からアクセスするのですが
pgusr.datにはあるUNIXではないDBだけのユーザーを登録しておき
2つめの192.168.1.0のネットワークでいろいろhostsslにしたりしてテストしていま
したが
突然localhostからpostgresで
アクセスできなくなりました
psql DB_name
でやると以下のエラーが出ます
エラーは
psql Fatal error 1, No pg_hba.conf
entry for host localhost, user postgres, database DB_name
ですが
通常これはhost DB_name 127.0.0.1 に
含まれているとは思うのですが
pgusr.datにpostgresを追加しても
だめでした
md5をtrustにしてもなにをやっても
一旦こうなるともうだめです。
DBを削ることもできず、ファイルでごりごりけすしかないのかもしれません
以前も同様なことがおこりましたので
なにかpostgresqlのバグかなにかではと疑ってます
それか192.168.1.0をpgusr.datで指定しているうちに
そこでロックアウトしてしまったのでしょうか?
よくわかりません。
こうなるといくらどのように
ph_hba.confを変えようが
接続できません
ただしもともと接続していた
DB専用ユーザーが
192.168.1.0のマシンからはアクセス可能です
何が原因でしょうか?
127.0.0.1のアクセスは正常に参照されているのでしょうか?
確実に再現できるかどうかはわかりませんが
1.psqlコマンド内でcreateuser でユーザーをパスワードをつけて作成する
2.そのユーザーにテーブルに対してselect,updateなど適当に権限を認める
3.postgresql.confでtcpIP_socket,ssl,encrypt_passwordをtureにする
4. pg_hba.confで
host DB_name 127.0.0.1 255.255.255.255 md5
host DB_name 192.168.1.0 255.255.255.0 md5 pgusr.dat
のエントリーをいれる
pgusr.datには作成したDBユーザー名をいれておく
再起動する、ローカルホストからpostgresでこのDBにアクセスできることをたしか
める
2つめの
host DB_name 192.168.1.0 255.255.255.0 md5 pgusr.dat
をhostsslに変えて何度も実験してみる
しばらくしてからローカルマシンからpostgresqalでアクセスを試みる
私の場合は実験とは
JDBCドライバーにSSLを突っ込んでアクセスをこころみていたときに
発生しました。
少なくとも私が体験している現象は
何らかの理由でpostgresユーザー自体のアクセスを拒否して
どういった変更もかけられなくなって状態のようにもみえます
ちなみにこの権限を手動で解除する方法はあるのでしょうか?
pgsql-jp メーリングリストの案内