Je dois accéder à une base de données postgresql depuis une machine distante sur un VPS à DigitalOcean exécutant 12.10 et postgresql 9.1.
Comment puis-je le faire? J'ai remarqué que le port 5432 est fermé, comment puis-je l'ouvrir?
Pour ouvrir le port 5432, modifiez votre /etc/postgresql/9.1/main/postgresql.conf
et modifiez
listen_addresses='localhost'
à
listen_addresses='*'
et redémarrez votre SGBD
invoke-rc.d postgresql restart
maintenant vous pouvez vous connecter avec
$ psql -h hostname -U username -d database
si vous ne pouvez pas vous authentifier, vous devez accorder à votre utilisateur des droits d’accès à votre base de données
Modifier votre
/etc/postgresql/9.1/main/pg_hba.conf
et ajouter
host all all all md5
(Ceci est pour un accès largement ouvert. Pour un contrôle plus strict, consultez le pg_hba.conf documentation et s’ajuster en fonction de vos besoins).
Ci-après, vous avez également besoin d'un rechargement
invoke-rc.d postgresql reload
Je n'ai pas besoin de mentionner qu'il s'agit d'une configuration de base, vous devez maintenant modifier votre pare-feu et améliorer la sécurité de votre SGBD.
Cela ne fonctionne plus, si jamais il a fait:
héberger tout * md5
Les lignes possibles pour cela sont:
héberge toutes les plages 0.0.0.0/0 md5 # ipv4
héberger tout tout :: 0/0 md5 # ipv6 range
héberge tout tout md5 #all ip
Lire d'autres questions sur les étiquettes remote-access postgresql vps