AWS VPC - mengapa memiliki subnet pribadi?

8

Di Amazon VPC, wizard pembuatan VPC memungkinkan seseorang untuk membuat "subnet publik" tunggal atau meminta wizard membuat "subnet publik" dan "subnet pribadi". Pada awalnya, opsi subnet publik dan pribadi tampak bagus untuk alasan keamanan, yang memungkinkan server web untuk dimasukkan ke dalam subnet publik dan server basis data untuk masuk ke subnet pribadi.

Tapi sejak itu saya mengetahui bahwa instance EC2 di subnet publik tidak dapat dijangkau dari Internet kecuali jika Anda mengaitkan Amazon ElasticIP dengan instance EC2. Jadi sepertinya hanya dengan satu konfigurasi subnet publik, orang bisa saja memilih untuk tidak mengaitkan ElasticIP dengan server database dan berakhir dengan jenis keamanan yang sama.

Adakah yang bisa menjelaskan kelebihan dari konfigurasi subnet publik + pribadi? Apakah keuntungan dari konfigurasi ini lebih berkaitan dengan penskalaan otomatis, atau apakah sebenarnya kurang aman untuk memiliki satu subnet publik?

JKim
sumber
Untuk apa nilainya, contoh EC2 di subnet kemaluan dapat dijangkau dari Internet, bahkan tanpa ElasticIP - mereka tetap mendapatkan alamat IP publik. Perbedaan antara alamat IP publik ini dan ElasticIP adalah bahwa alamat IP publik dapat berubah ketika Anda me-reboot instance Anda, sedangkan ElasticIP tetap ada selama yang Anda inginkan.
offby1

Jawaban:

4

Merupakan batas keamanan untuk memiliki subnet pribadi yang dapat Anda kontrol dengan grup keamanan berbeda dari subnet publik. Jika salah satu instans Anda di subnet publik diretas, akan jauh lebih sulit untuk meretas instans di subnet pribadi jika Anda tidak terlalu liberal dalam kebijakan akses Anda.

generalnetworkerror
sumber
1
Terima kasih. VPC dengan subnet pubic + private sepertinya cara untuk pergi jika AWS akan melempar instance NAT secara gratis. Saya sedang memikirkan penyebaran kecil dan sedang berusaha mencari tahu apakah biaya instance NAT setiap bulan sebanding dengan keuntungan dari 2 konfigurasi subnet.
JKim
2
@ jkim Ini jauh lebih terjangkau sekarang karena mereka akhirnya mendukung t1.microVPC.
Jeffrey Hantin
2

Selain implikasi keamanan, ada juga aspek lain yang ikut berperan: Jika Anda ingin mengizinkan instance tanpa IP Elastis untuk mengakses internet, Anda mungkin memerlukan 2 (atau lebih) subnet yang berbeda.

Mengutip dokumentasi AWS , dalam VPC ada tiga cara untuk memungkinkan akses internet instan:

  1. IP elastis - tetapi saya hanya mendapatkan 5 secara default, dan kemudian Anda harus membayar lebih
  2. Merutekan lalu lintas melalui Virtual Private Gateway - ini mengharuskan Anda memiliki koneksi VPN perangkat keras ke jaringan perusahaan (atau rumah) Anda
  3. Siapkan instance NAT dan rutekan semua lalu lintas keluar melalui NAT

Opsi ketiga adalah yang menarik karena instance NAT harus duduk di dalam subnet "publik" di mana semua lalu lintas keluar dialihkan ke Gateway Internet, tetapi semua contoh lain harus duduk di subnet "pribadi" di mana semua lalu lintas keluar adalah dialihkan ke instance NAT.

Singkatnya, jika Anda berencana menggunakan NAT, Anda memerlukan setidaknya 2 subnet.

Tom Poulton
sumber
Terima kasih tom. Saya pikir itu juga mungkin untuk memiliki 1 subnet publik tetapi hanya menetapkan ElasticIP ke instance NAT. Contoh lain pada subnet publik akan memiliki akses internet keluar melalui Internet Gateway, dan akses masuk dapat dikonfigurasi melalui port ke depan pada instance NAT. Saya mendapat perasaan bahwa 2 subnet adalah cara yang "tepat", tetapi tidak melihat alasan yang jelas untuk itu.
JKim