[pgpool-general: 7021] Re: SSL authentication in Pgpool
    Tatsuo Ishii 
    ishii at sraoss.co.jp
       
    Mon May 18 16:24:58 JST 2020
    
    
  
> Hello folks,
> 
> I need your expert advice on using SSL authentication in pgpool.
> 
> Environment:
> - OS - RHEL 7.6
> - PostgreSQL- 11.6 ( Master and Replica on different servers)
> - pgpool - 4.0.2 - active on master node ( sorry but I need this version)
> 
> My requirement is to have secure communication between client<=> pgpool and
> pgoll <=> postgres.
> Maintaining pool_passwd file is not possible ( no control over user and
> password)  in my use case.
You can use allow_clear_text_frontend_auth to not store passwords in pool_passwd file.
https://www.pgpool.net/docs/latest/en/html/runtime-config-connection.html#GUC-ALLOW-CLEAR-TEXT-FRONTEND-AUTH
> Another option is Certificate Authentication (SSL) between both client<=>
> pgpool and pgpool<=> postgres ( using same server cert).
Unfortunately Certificate Authentication is not supported between
pgpool <=> postgres.
> In order to achieve above , I performed below steps-
> *- generated self signed certificate *
> *- updated pgpool.conf*
> *- updated postgresql.conf , and  pg_hba.conf *
> *-  restarted whole setup.*
> 
> I can successfully login to  postgresql using cert( i.e. user can log in
> using client cert) but SSL between pgpool<=> postgres is not working.
> 
> pgpool log:
[snip]
> As I did not find any related document and the document that I found
> <https://www.highgo.ca/2020/02/25/setting-up-ssl-certificate-authentication-with-pgpool-ii/>is
> not working as expected. There is another contradictory information in
> pgpool doc  source-6.2.4
> <https://www.pgpool.net/docs/40/en/html/auth-methods.html>  , which says
> certificate authentication between pgppol <=> postgres is not possible.
Yes, it's not possible.
> Am I doing something wrong? or this is not at all a possible use case.
I recommend you following:
0. enable allow_clear_text_frontend_auth.
1. client<=>> pgpool
Use SSL connection and clear text password authenticatoion. You don't
need to set up pool_passwd. Password will be provided by client.
2. pgppol <=> postgres
Use SSL connection and md5 or SCRAM authenticatoion. The password used
for the authentication is provided by client if
allow_clear_text_frontend_auth is enabled.
Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp
    
    
More information about the pgpool-general
mailing list