tidak dapat terhubung ke instance rss postgresql publik

23

Saya membuat tes dasar contoh PostgreSQL RDS dalam VPC yang memiliki satu subnet publik dan yang harus tersedia untuk terhubung melalui internet publik. Ini menggunakan grup keamanan default, yang terbuka untuk port 5432. Ketika saya mencoba untuk terhubung, gagal. Saya pasti melewatkan sesuatu yang sangat mudah - tetapi saya sangat bingung dengan hal ini.

Di sini sedang pengaturan database, perhatikan bahwa itu ditandai sebagai Publicly Accessible: Pengaturan RDS

Di sini adalah pengaturan grup keamanan, catat itu terbuka lebar (ditegaskan dalam pengaturan RDS di atas oleh petunjuk "resmi" di sebelah titik akhir): Pengaturan Grup Keamanan

Inilah perintah yang saya coba gunakan untuk menghubungkan:

psql --host=myinstance.xxxxxxxxxx.us-east-1.rds.amazonaws.com \
     --port=5432 
     --username=masteruser 
     --password 
     --dbname=testdb

Dan ini adalah hasil yang saya dapatkan ketika mencoba terhubung dari Yosemite MacBook Pro (catatan, itu diselesaikan ke 54. * alamat ip):

psql: could not connect to server: Operation timed out
    Is the server running on host "myinstance.xxxxxxxxxx.us-east-1.rds.amazonaws.com" (54.xxx.xxx.xxx) and accepting
    TCP/IP connections on port 5432?

Saya tidak memiliki jenis firewall apa pun yang diaktifkan, dan saya dapat terhubung ke instance PostgreSQL publik pada penyedia lain (mis. Heroku).

Setiap tips pemecahan masalah akan sangat dihargai, karena saya cukup bingung di sini.

Memperbarui

Per komentar, berikut adalah aturan ACL masuk untuk VPC Default: Konfigurasi ACL jaringan

Edward Q. Bridges
sumber
1
Apakah Anda mengacaukan NetworkACL? Saya akan mencari di sana untuk pengaturan yang mungkin yang dapat memblokir akses internet.
Optichip
Terima kasih balasannya! ACL tampaknya tidak memblokir apa pun, karena aturan pertama adalah mengizinkan semua port dari semua sumber, per terlampir.
Edward Q. Bridges

Jawaban:

27

Masalahnya adalah bahwa aturan masuk di Grup Keamanan menentukan grup keamanan sebagai sumber. Mengubahnya menjadi CIDR yang menyertakan alamat IP saya memperbaiki masalah tersebut.

Edward Q. Bridges
sumber
6
Untuk siapa saja yang tidak tahu cara kerja CIDR; jika alamat IP Anda adalah 91.61.76.202 (dapat menemukan milik Anda menggunakan myipaddress.com ), tetapkan sumber Anda sebagai 91.61.76.202/32
Tom G
Apakah Anda bersedia mengambil tangkapan layar seperti apa solusi ini?
smaccoun
Saya akan senang, tetapi saya tidak lagi memiliki contoh ini secara online.
Edward Q. Bridges
11

Menghadapi masalah serupa, dan inilah cara saya mengatasinya:

Klik pada grup keamanan untuk contoh RDS dan periksa aturan masuk. Anda mungkin melihat sesuatu seperti ini:

masukkan deskripsi gambar di sini

Harus mengatur rentang IP untuk mengandung IP Anda atau cukup pilih "Di mana saja" di dropdown Sumber, agar dapat diakses dari localhost atau di mana saja:

masukkan deskripsi gambar di sini

Miguel Mota
sumber
Ya ini berhasil. Saya menyimpan aturan Kustom yang ada di sana dan menambahkan aturan baru yang mengambil alamat IP saya secara otomatis.
MSC
1

Saya memiliki masalah serupa saat menghubungkan ke postgres. Walaupun saya memiliki akses publik yang benar, saya tidak dapat terhubung.

Saya menambahkan satu aturan aturan masuk dalam grup keamanan dan sekarang berfungsi dengan baik.

masukkan deskripsi gambar di sini

Abhash Kumar
sumber
0

Hanya ingin menambahkan temuan saya untuk menghemat waktu seseorang. Solusi ini dijelaskan di atas bekerja pada contoh dev ec2 tetapi setelah saya pindah ke server baru berhenti bekerja. Ternyata kedua instance RDS saya dan instance EC2 berada di VPC yang sama sehingga instance RDS tidak dapat melihat IP publik yang telah saya tambahkan ke grup keamanannya. Agar ini berfungsi, Anda perlu menambahkan ke grup keamanan instance RDS, ip pribadi instance EC2 yang dapat Anda temukan secara detail.

Muhammed Bilal Iqbal
sumber
-1

Setelah saya membuat instance Postgres saya, grup keamanan default saya (rds-launch-wizard) hanya mencantumkan alamat IP saya, jadi saya harus menambahkan Jenis Semua Lalu Lintas dan Sumber dari Mana Saja sebelum saya dapat terhubung. Saya bukan pakar jaringan, tapi anehnya saya tidak bisa terhubung dengan alamat IP saya sendiri sebagai aturan masuk.

jones-chris
sumber