Warum kann ich keine Verbindung zu PostgreSQL (localhost-Server) herstellen, wenn mein VPN aktiv ist?

1408
Chris Cirefice

Ich habe gerade eine Stunde meines Lebens damit verschwendet, herauszufinden, warum pgAdminIII keine Verbindung zum Server herstellen kann localhost. Nach dem Ausprobieren von Konfigurationsänderungen, dem Starten / Stoppen des Postgresql-Dienstes usw. wurde mir schließlich klar, dass sich seit der letzten Verwendung von pgAdminIII nur eines geändert hatte: Ich war mit meinem VPN verbunden.

Ich bin kein Netzwerkassistent. Deshalb frage ich hier: Warum kann ich keine Verbindung zu PostgreSQL (localhost) herstellen, wenn ich aktiv mit meinem VPN-Provider verbunden bin?

Bonus: Mit welchen Befehlen / Schritten kann ich genau zeigen, warum ?


BEARBEITEN :

pg_hba.conf :

... # CAUTION: Configuring the system for local "trust" authentication # allows any local user to connect as any PostgreSQL user, including # the database superuser. If you do not trust all your local users, # use another authentication method.   # TYPE DATABASE USER ADDRESS METHOD  # "local" is for Unix domain socket connections only local all all trust # IPv4 local connections: host all all 127.0.0.1/32 trust # IPv6 local connections: host all all ::1/128 trust # Allow replication connections from localhost, by a user with the # replication privilege. #local replication chris trust #host replication chris 127.0.0.1/32 trust #host replication chris ::1/128 trust 

OS X-Version : 10.12.6 (Sierra)

PostgreSQL-Version : 9.6.3

VPN-Anbieter : ExpressVPN

0
Weitere Informationen sind erforderlich - einschließlich der Verbindungsinformationen - hauptsächlich Hostname (kein Kennwort angeben), der von pgAdminIII verwendet wird. Ein Dump der Datei pg_hba.conf und der Betriebssystemdetails wäre hilfreich. Ich vermute, dass OpenVPN ein roter Hering ist. davidgo vor 6 Jahren 0
@davidgo hinzugefügt Tut mir leid, ich habe gepostet, ohne wirklich über Konfigurationsinformationen nachzudenken. Die Postgres-Installation ist alles Standard - ich habe nichts geändert. Und ich verwende ExpressVPN, nicht OpenVPN. Der localhost-Server ist `localhost: 5432` (Standardeinstellung). Chris Cirefice vor 6 Jahren 0
ExpressVPN ist ein Anbieter - OpenVPN ist ein Programm. ExpressVPN verwendet OpenVPN. Welchen Fehler erhalten Sie, und stellen Sie fest, dass Ihre Postgres-Konfigurationsdatei es jedem ermöglicht, ohne Passwort vom lokalen System aus eine Verbindung herzustellen? Es ist sehr unwahrscheinlich, dass das Problem mit OpenVPN zusammenhängt. Überprüfen Sie jedoch, ob Ihre Hosts-Datei localhost 127.0.0.1 (oder :: 1/128) zuordnet, und nicht einer anderen IP-Adresse, die nicht über die LO-Schnittstelle erreichbar ist. Prüfen Sie auch, ob die VPN-Software Ihre Firewall-Regeln durcheinanderbringt. Dies ist jedoch unwahrscheinlich davidgo vor 6 Jahren 0

1 Antwort auf die Frage

0
Ramhound

Ich bin kein Netzwerkassistent. Deshalb frage ich hier: Warum kann ich keine Verbindung zu PostgreSQL (localhost) herstellen, wenn ich aktiv mit meinem VPN-Provider verbunden bin?

Sie haben Ihre PostgreSQL-Installation so konfiguriert, dass nur Localhost-Verbindungen zugelassen werden.

Mit welchen Befehlen / Schritten kann ich genau zeigen, warum?

Ändern Sie pg_hba.conf, um einen Eintrag für Ihre ExpressVPN-IP-Adresse hinzuzufügen

hosten alle xxx.xxx.xxx.xxx vertrauen

Ich schlage nicht vor, dass Sie allen lokalen Benutzern und Datenbankbenutzern, die über die VPN-Adresse eine Verbindung zu Ihrem Server herstellen, Zugriff auf Ihre Datenbank gewähren. Wenn Sie möchten, dass dies der Fall ist, ändern Sie die xxx.xxx.xxx.xxxIP-Adresse in Ihre ExpressVPN-Adresse, und jeder Benutzer kann eine Verbindung zu Ihrem Datenbankserver herstellen.