O parâmetro
listen_addresses
em postgresql.conf
controla em quais endereços IP o servidor responderá, não em quais o servidor permitirá que as conexões sejam autenticadas. Aos meus olhos, não há problema em definir os listen_addresses
para *
e restrinja o resto no pg_hba.conf
. Em outras palavras:fazendo o ajuste fino no pg_hba.conf
está bem. Então ..
listen_addresses = '*'
.. e ..
host all all 179.211.198.0/24
.. deveria fazer. O que significa que todos os usuários têm acesso a todos os bancos de dados dessa faixa de ip. Você pode limitar ainda mais o acesso de usuários específicos a determinados bancos de dados:
host my_db my_user 179.211.198.0/24