PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Erlauben Sie den Zugriff auf Postgresql von jedem Computer aus

Möchten Sie Postgresql aus dem lokalen Netzwerk administrieren oder anderen Benutzern in der ganzen Welt erlauben, sich mit Ihrem Postgresql-Server zu verbinden?

Es ist sehr einfach, sich den Zugriff auf den Server zu erlauben, um ihn im selben Subnetz zu verwalten. Es ist unklug, Benutzern in der ganzen Welt den Zugriff auf Ihren Server zu erlauben.

So erlauben Sie den Fernzugriff:Sie müssen die Datei pg_HBA.conf bearbeiten. Standardmäßig erlaubt es nur einem lokalen Benutzer des Servers, sich mit der Datenbank zu verbinden. Dies ist eine Einrichtungssicherheitssache.

Das folgende Snippet stammt von meinem eigenen Postgresql-Server:

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5

Dies besagt, dass nur die Hosts, die mit 127.0.0.1/32 übereinstimmen, auf meinen Server zugreifen dürfen.

Wenn Sie allen Computern in Ihrem Subnetz den Zugriff auf Ihren Postgresql-Server erlauben möchten, können Sie Folgendes tun:

# IPv4 local connections:
host    all             all             192.168.0.1/24            md5

Das obige Beispiel wird Sie in Schwung bringen, aber es wäre ratsam, kurz die postgresql-Dokumentation für die Datei pg_hba.conf zu lesen.

Wenn Sie besonders rücksichtslos und verantwortungslos wären und die Aussicht genießen, gefährlich und mit regelmäßigen Intervallen von Angst und Abscheu zu leben, würden Sie die folgende Zeile in Ihrer pg_hba.conf-Datei verwenden, obwohl ich ernsthaft dagegen rate.

# IPv4 local connections:
host    all             all             0.0.0.0/0            md5

Dies sagt im Grunde "Jeder von überall kann auf meinen Postgresql-Server zugreifen". Ich habe es nur als Beispiel dafür bereitgestellt, wie vorsichtig Sie sein müssen.

Die Dokumentation für die aktuelle Version von Postgresql 9.6 kann sein finden Sie hier Frühere Versionen sind auch in der Nähe dieses Links verfügbar, aber im Fall von pg_hba.conf scheinen sich die Dinge zwischen den Versionen nicht geändert zu haben.