Pastikan penyeimbang beban AWS menggunakan protokol pendengar yang aman (HTTPS, SSL/TLS) - AWS Prescriptive Guidance

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Pastikan penyeimbang beban AWS menggunakan protokol pendengar yang aman (HTTPS, SSL/TLS)

Chandini Penmetsa dan Purushotham G K, Amazon Web Services

Ringkasan

Di Amazon Web Services (AWS) Cloud, Elastic Load Balancing secara otomatis mendistribusikan lalu lintas aplikasi yang masuk ke beberapa target, seperti instans Amazon Elastic Compute Cloud ( EC2Amazon), container, alamat IP, dan fungsi AWS Lambda. Load balancer menggunakan pendengar untuk menentukan port dan protokol yang digunakan penyeimbang beban untuk menerima lalu lintas dari pengguna. Application Load Balancers membuat keputusan routing di lapisan aplikasi dan menggunakan protokol. HTTP/HTTPS Network Load Balancer membuat keputusan routing pada lapisan transport dan menggunakan protokol Transmission Control Protocol (TCP), Transport Layer Security (TLS), User Datagram Protcol (UDP), atau TCP_UDP. Classic Load Balancers membuat keputusan routing baik pada layer transport, menggunakan protokol TCP atau Secure Sockets Layer (SSL), atau pada lapisan aplikasi, menggunakan HTTP/HTTPS.

Organisasi Anda mungkin memiliki persyaratan keamanan atau kepatuhan bahwa penyeimbang beban menerima lalu lintas dari pengguna hanya pada protokol aman, seperti HTTPS atau SSL/TLS.

Pola ini menyediakan kontrol keamanan yang menggunakan EventBridge aturan Amazon untuk memantau CreateListener dan panggilan ModifyListener API untuk Application Load Balancers dan Network Load Balancers, dan panggilan CreateLoadBalancer API CreateLoadBalancerListeners dan untuk Classic Load Balancers. Jika HTTP, TCP/UDP, atau TCP_UDP digunakan untuk protokol pendengar penyeimbang beban, kontrol akan memanggil fungsi Lambda. Fungsi Lambda menerbitkan pesan ke topik Amazon Simple Notification Service (Amazon SNS) untuk mengirim notifikasi yang berisi detail penyeimbang beban.

Prasyarat dan batasan

Prasyarat

  • Akun AWS yang aktif

  • Alamat email tempat Anda ingin menerima pemberitahuan pelanggaran

  • Bucket Amazon Simple Storage Service (Amazon S3) untuk menyimpan file.zip kode Lambda

Batasan

  • Kontrol keamanan ini tidak memeriksa penyeimbang beban yang ada kecuali pembaruan dilakukan untuk pendengar penyeimbang beban.

  • Kontrol keamanan ini bersifat regional dan harus diterapkan di Wilayah AWS yang ingin Anda pantau.

Arsitektur

Tumpukan teknologi target

  • Fungsi Lambda

  • Topik Amazon SNS

  • EventBridge aturan

Arsitektur target

EventBridge Aturan yang memantau panggilan API penyeimbang beban dan memulai notifikasi Amazon SNS.

Otomatisasi dan skala

  • Jika Anda menggunakan AWS Organizations, Anda dapat menggunakan AWS Cloudformation StackSets untuk menerapkan template ini di beberapa akun yang ingin dipantau.

Alat

  • AWS CloudFormation — AWS CloudFormation adalah layanan yang membantu Anda memodelkan dan menyiapkan sumber daya AWS dengan menggunakan infrastruktur sebagai kode.

  • Amazon EventBridge — Amazon EventBridge memberikan aliran data real-time dari aplikasi Anda sendiri, aplikasi perangkat lunak sebagai layanan (SaaS), dan layanan AWS, merutekan data tersebut ke target seperti fungsi Lambda.

  • AWS Lambda — Lambda mendukung menjalankan kode tanpa menyediakan atau mengelola server.

  • Amazon S3 - Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3) adalah layanan penyimpanan objek yang sangat skalabel yang dapat digunakan untuk berbagai solusi penyimpanan, termasuk situs web, aplikasi seluler, cadangan, dan danau data.

  • Amazon SNS — Amazon Simple Notification Service (Amazon SNS) mengoordinasikan dan mengelola pengiriman atau pengiriman pesan antara penerbit dan klien, termasuk server web dan alamat email. Pelanggan menerima semua pesan yang dipublikasikan ke topik tempat mereka berlangganan, dan semua pelanggan ke suatu topik menerima pesan yang sama.

Praktik terbaik

Pastikan bahwa topik SNS yang digunakan tidak dapat diakses publik. Untuk informasi selengkapnya, lihat dokumentasi AWS.

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Tentukan bucket S3.

Di konsol Amazon S3, pilih atau buat bucket S3 dengan nama unik yang tidak mengandung garis miring di depan. Nama bucket S3 unik secara global, dan namespace dibagikan oleh semua akun AWS. Bucket S3 Anda harus berada di Wilayah yang sama dengan penyeimbang beban yang sedang dievaluasi.

Arsitek Cloud

Unggah kode Lambda ke bucket S3.

Unggah file kode Lambda .zip yang disediakan di bagian “Lampiran” ke bucket S3 yang ditentukan.

Arsitek Cloud

Menerapkan CloudFormation template AWS.

Di CloudFormation konsol AWS, di Wilayah AWS yang sama dengan bucket S3, terapkan template yang disediakan di bagian “Lampiran”. Dalam epik berikutnya, berikan nilai untuk parameter.

Arsitek Cloud
TugasDeskripsiKeterampilan yang dibutuhkan

Beri nama ember S3.

Masukkan nama bucket S3 yang Anda buat di epik pertama.

Arsitek Cloud

Berikan awalan Amazon S3.

Berikan lokasi file kode Lambda .zip di bucket S3 Anda, tanpa garis miring di depan (misalnya,). <directory>/<file-name>.zip

Arsitek Cloud

Menyediakan ARN topik SNS.

Berikan topik SNS Nama Sumber Daya Amazon (ARN) jika Anda ingin menggunakan topik SNS yang ada untuk pemberitahuan pelanggaran. Untuk membuat topik SNS baru, pertahankan nilainya sebagai None (nilai default).

Arsitek Cloud

Berikan alamat email.

Berikan alamat email aktif untuk menerima notifikasi Amazon SNS.

Arsitek Cloud

Tentukan tingkat logging.

Tentukan tingkat logging dan frekuensi untuk fungsi Lambda Anda. Infomenunjuk pesan informasi rinci tentang kemajuan aplikasi. Errormenunjuk peristiwa kesalahan yang masih memungkinkan aplikasi untuk terus berjalan. Warningmenunjuk situasi yang berpotensi berbahaya.

Arsitek Cloud
TugasDeskripsiKeterampilan yang dibutuhkan

Unduh templat .

Unduh CloudFormation templat yang disediakan di bagian Lampiran.

Arsitek awan

Buat tumpukan.

Di Wilayah yang sama dengan bucket S3, navigasikan ke konsol CloudFormation layanan, dan terapkan templat yang diunduh. Lihat epik sebelumnya untuk detail parameter.

Arsitek awan

Verifikasi sumber daya.

Setelah tumpukan dibuat sepenuhnya, navigasikan ke tab Sumber Daya, dan verifikasi sumber daya. Template akan membuat sumber daya berikut:

  • EventBridge aturan

  • Fungsi Lambda

  • Peran eksekusi Lambda

  • Lambda meminta izin

Arsitek awan
TugasDeskripsiKeterampilan yang dibutuhkan

Konfirmasi langganan.

Ketika template berhasil digunakan, jika topik SNS baru dibuat, pesan email langganan dikirim ke alamat email yang disediakan dalam parameter. Anda harus mengonfirmasi langganan email ini untuk menerima pemberitahuan pelanggaran.

Arsitek awan

Pemecahan Masalah

IsuSolusi

Pembuatan tumpukan gagal. Terjadi kesalahan saat GetObject. Kode Kesalahan S3: PermanentRedirect. Pesan Kesalahan S3: Bucket ada di wilayah ini: xx-xxxx-1. Silakan gunakan wilayah ini untuk mencoba kembali permintaan.

Pastikan bahwa Wilayah bucket S3 dan Wilayah tempat tumpukan digunakan adalah sama.

Pembuatan tumpukan gagal. Parameter runtime python3.6 tidak lagi didukung untuk membuat atau memperbarui fungsi AWS Lambda.

Perbarui template yang diunduh pada baris 186 dari Python versi 3.6 ke 3.9.

Sumber daya terkait

Lampiran

Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip