Instalando os pacotes:
Debian/Ubuntu.
# apt-get install postgresql
Configurando o PostgreSQL
Atribua a senha no usuário postgres do PostgreSQL:
# su postgres -c psql
ALTER USER postgres WITH PASSWORD 'senha';
\q
Para permitir que acesse o banco apenas informando a senha, configure no arquivo
pg_hba.conf, alterando a coluna METHOD de todas as linhas de "ident" para "md5".
O diretório dos arquivos de configuração do PostgreSQL:
Debian/Ubuntu:
/etc/postgresql/9.1/main/
Feito a instalação e mudança de senha do usuário postgres, você estará apto a desenvolver o trabalho no seu computador conectando normalmente ao postgres, porém, se a ideia é disponibilizar o acesso ao banco para receber conexões de outras máquinas, você vai ter que alterar dois arquivos no diretório do PostgreSQL: postgresql.conf e pg_hba.conf.
No arquivo postgresql.conf, na linha listen_addresses, descomente-o removendo o "#" e troque o "localhost" por "*", deixando a linha assim:
listen_addresses = '*'
Dessa forma seu PostgreSQL vai "escutar" não só conexões provenientes da sua própria máquina. A próxima configuração no mesmo arquivo é habilitar a encriptação de passwords, para fazer isso descomente a linha abaixo removendo o "#", ficando a linha assim:
password_encryption = on
Finalmente a próxima configuração no arquivo pg_hba.conf. Neste arquivo você consegue restringir o acesso ao seu banco de dados por IP. Normalmente queremos liberar o acesso para servidor "zabbix" no meu exemplo, quero liberar somente o servidor zabbix as máquinas.
host all all 10.5.2.0 255.255.0.0 md5
Terminando a configuração, reinicie o PostgreSQL.
Debian/Ubuntu:
# /etc/init.d/postgresql-8.4 restart
Obs.: caso seja um servidor de produção e não um de homologação pode ser utilizando o comando:
# /etc/init.d/postgresql-9.1 reload
onde serão lidas as configurações realizadas.
Testando a conexão:
# psql -U postgres
Senha para usuário postgres:
psql (8.4.4)
Digite "help" para ajuda.
postgres=#
ou também, "
sudo su postgres" e depois
psql, onde irá realizar o logon com usuário postgres.