it-swarm.com.de

Auf der EC2-Instanz kann nicht remote auf PostgreSQL zugegriffen werden

Ich konnte über Dinge wie psql -h *EC2ExternalIP* -U *me* Nicht auf eine entfernte AWS-Postgres-Datenbank zugreifen. Ich würde bekommen:

psql -h *EC2ExternalIP* -U *me*
psql: could not connect to server: Operation timed out
Is the server running on Host *EC2ExternalIP* and accepting
TCP/IP connections on port 5432?

das Gleiche gilt für eine einfache Telnet-Verbindung zu diesem Port:

curl telnet://*EC2ExternalIP*:5434
curl: (7) Failed to connect to *EC2ExternalIP* port 5434:
Operation timed out

und obwohl ich auf andere Dienste (z. B. Apache) auf demselben zugreifen konnte EC2ExternalIP.

Also stöberte ich in Themen wie diesen herum:

und sie halfen mir sicherzustellen, dass ich entsprechende Änderungen an postgresql.conf und pg_hba.conf vorgenommen hatte; Die richtigen Einstellungen für Sie hängen von den Sicherheitsbedenken Ihrer Instanz ab. Aber es funktioniert immer noch nicht.

Was soll ich tun, um diese Datenbank zugänglich zu machen?

5
rikb

(Selbstantwort, falls jemand anderes die gleichen Symptome hat!)

Dann stolperte ich über Shubham Dipt's Post on "PostgreSQL unter EC2 (Ubuntu) in AWS" und machte mich auf die von AWS gepflegte Ebene "Sicherheitsgruppe" aufmerksam. Es ist einfach, über die AWS-Konsole eine neue anzugeben, insbesondere Custom TCP: 5432, Source: Anywhere und SSH TCP:22, Source: Anywhere Regeln für Inbound:

(EC2 console editing Security group

Dann wurde diese Sicherheitsgruppe zur Instanz hinzugefügt, und es hat bei mir funktioniert.

3
rikb