Bearbeiten Sie zunächst die Datei postgresql.conf und setzen Sie listen_addresses
. Der Standardwert „localhost“ lauscht nur auf dem Loopback-Adapter. Sie können es in „*“ ändern, was bedeutet, dass alle Adressen abgehört werden, oder speziell die IP-Adresse der Schnittstellen auflisten, von denen Verbindungen akzeptiert werden sollen. Beachten Sie, dass dies die IP-Adresse ist, die die Schnittstelle ihr zugewiesen hat, was Sie mit ifconfig
sehen können oder ip addr
Befehle.
Sie müssen postgresql neu starten, damit die Änderungen an listen_addresses wirksam werden.
Als nächstes in pg_hba.conf , benötigen Sie einen Eintrag wie diesen:
# TYPE DATABASE USER ADDRESS METHOD
host {dbname} {user} 192.168.1.0/24 md5
{dbname} ist der Datenbankname, auf den Sie Zugriff gewähren. Sie können "all" für alle Datenbanken eingeben.
{user} ist der Benutzer, der sich verbinden darf. Beachten Sie, dass dies der postgresql-Benutzer ist, nicht unbedingt der Unix-Benutzer.
Der ADDRESS-Teil ist die Netzwerkadresse und -maske, die Sie zulassen möchten. Die von mir angegebene Maske funktioniert wie gewünscht für 192.168.1.x.
Der METHOD-Teil ist die zu verwendende Authentifizierungsmethode. Da gibt es mehrere Möglichkeiten. md5 bedeutet, dass ein md5-gehashtes Passwort verwendet wird. "Vertrauen", das Sie in Ihre Probe hatten, bedeutet überhaupt keine Authentifizierung - dies wird definitiv nicht empfohlen.
Änderungen an pg_hba.conf werden nach dem Neuladen des Servers wirksam. Dazu können Sie pg_ctl reload
verwenden (oder über die Init-Skripte, abhängig von Ihrer Betriebssystem-Distribution).