Primeiro, edite o arquivo postgresql.conf e defina listen_addresses . O valor padrão de 'localhost' só escutará no adaptador de loopback. Você pode alterá-lo para '*', o que significa escutar em todos os endereços, ou listar especificamente o endereço IP das interfaces das quais você deseja que ele aceite conexões. Observe que este é o endereço IP que a interface atribuiu a ele, que você pode ver usando
ifconfig
ou ip addr
comandos. Você deve reiniciar o postgresql para que as alterações em listen_addresses tenham efeito.
Em seguida, em pg_hba.conf , você precisará de uma entrada como esta:
# TYPE DATABASE USER ADDRESS METHOD
host {dbname} {user} 192.168.1.0/24 md5
{dbname} é o nome do banco de dados ao qual você está permitindo acesso. Você pode colocar "all" para todos os bancos de dados.
{user} é o usuário que tem permissão para se conectar. Observe que este é o usuário postgresql, não necessariamente o usuário unix.
A parte ADDRESS é o endereço de rede e a máscara que você deseja permitir. A máscara que especifiquei funcionará para 192.168.1.x conforme solicitado.
A parte METHOD é o método de autenticação a ser usado. Há uma série de opções lá. md5 significa que usará uma senha com hash md5. 'confiança' que você tinha em sua amostra significa nenhuma autenticação - isso definitivamente não é recomendado.
As alterações no pg_hba.conf entrarão em vigor após o recarregamento do servidor. Você pode fazer isso usando
pg_ctl reload
(ou através dos scripts de inicialização, dependendo da distribuição do seu sistema operacional).