Ich habe auf DBA und anderen Websites gesehen, dass das Aussetzen einer Datenbank gegenüber dem Internet eine besonders schlechte Idee ist, aber ich habe festgestellt, dass PostgreSQL nur über SSL-Zertifikate verfügt. Ist es dadurch sicherer, eine Datenbank dem Internet zugänglich zu machen (nur Zertifikatsauthentifizierung von nicht lokalen Host-Verbindungen), oder wäre es immer noch besser, ein VPN einzurichten oder über SSH usw. zu tunneln?
Wenn letzteres sicherer ist, was genau macht es sicherer? Ich habe das Gefühl, in dieser Hinsicht etwas offensichtlich Offensichtliches zu übersehen.
Ich habe bereits eine Handvoll Datenbanken eingerichtet, musste jedoch nie eine einrichten, für die eine Remoteverwaltung erforderlich ist (in diesem Fall „remote“ bedeutet dies über das Internet oder WAN anstelle eines LAN).
quelle
Das einzige Szenario, das ich mir vorstellen kann, in dem es erforderlich sein könnte, Ihre Datenbank dem Internet auszusetzen, ist für Replikations- oder Clusterzwecke. In diesem Fall sollten Sie den Zugriff nur auf die zusätzlichen Hosts über die Firewall beschränken.
Für andere Zwecke würde ich empfehlen, Webdienste zu erstellen, die als Gateways für den Zugriff auf die Datenbank dienen. Diese Dienste bieten genau die Funktionen, die Sie benötigen, und Sie sind für deren Sicherheit und Integrität verantwortlich.
Tatsächlich macht jedes Web-Front-End, das eine Verbindung zu einer Datenbank herstellt, diese Art von Dingen, indem die Skripte auf dem Webserver als RESTful-Webdienste verwendet werden.
quelle