SEC06-BP03 Kurangi manajemen manual dan akses interaktif
Gunakan otomatisasi sebisa mungkin untuk melakukan tugas deployment, konfigurasi, pemeliharaan, dan investigasi. Pertimbangkan akses manual ke sumber daya komputasi saat melakukan prosedur darurat atau berada dalam lingkungan yang aman (sandbox), ketika otomatisasi tidak tersedia.
Hasil yang diinginkan: Skrip terprogram dan dokumen otomatisasi (runbook) merekam tindakan resmi pada sumber daya komputasi Anda. Runbook ini dimulai baik secara otomatis, melalui sistem deteksi perubahan, maupun secara manual, ketika penilaian oleh manusia diperlukan. Akses langsung ke sumber daya komputasi hanya tersedia dalam situasi darurat ketika otomatisasi tidak tersedia. Semua aktivitas manual dicatat lognya dan dimasukkan ke dalam proses peninjauan untuk terus meningkatkan kemampuan-kemampuan otomatisasi Anda.
Anti-pola umum:
-
Akses interaktif ke instans Amazon EC2 dengan protokol seperti SSH atau RDP.
-
Mempertahankan login pengguna individu seperti
/etc/passwdatau pengguna lokal Windows. -
Berbagi kata sandi atau kunci privat untuk mengakses instans di antara beberapa pengguna.
-
Menginstal perangkat lunak dan membuat atau memperbarui file konfigurasi secara manual.
-
Memperbarui atau melakukan patching perangkat lunak secara manual.
-
Masuk ke instans untuk memecahkan masalah.
Manfaat menerapkan praktik terbaik ini: Melakukan tindakan dengan otomatisasi dapat membantu Anda mengurangi risiko operasional dari perubahan dan kesalahan konfigurasi yang tidak diinginkan. Penghentian penggunaan Secure Shell (SSH) dan Remote Desktop Protocol (RDP) untuk akses interaktif akan mengurangi cakupan akses ke sumber daya komputasi Anda. Hal ini akan menghilangkan jalur umum yang memungkinkan tindakan tidak sah. Pencatatan tugas manajemen sumber daya komputasi Anda dalam dokumen otomatisasi dan skrip programatis akan menyediakan sebuah mekanisme untuk menentukan dan mengaudit cakupan penuh aktivitas yang sah secara lebih mendetail.
Tingkat risiko yang terjadi jika praktik terbaik ini tidak diterapkan: Sedang
Panduan implementasi
Masuk ke instans adalah pendekatan klasik untuk administrasi sistem. Setelah menginstal sistem operasi server, pengguna biasanya akan masuk log in secara manual untuk mengonfigurasi sistem dan menginstal perangkat lunak yang diinginkan. Selama masa pakai server, pengguna mungkin masuk log in untuk melakukan pembaruan perangkat lunak, menerapkan patch, mengubah konfigurasi, dan memecahkan masalah.
Namun demikian, akses secara manual dapat menimbulkan sejumlah risiko. Hal ini membutuhkan server yang mendengarkan permintaan, seperti layanan SSH atau RDP, yang dapat memberikan jalur potensial untuk terjadinya akses tidak sah. Ini juga meningkatkan risiko kesalahan manusia yang terkait dengan pelaksanaan langkah-langkah secara manual. Hal ini dapat mengakibatkan insiden beban kerja, kerusakan atau pemusnahan data, atau masalah-masalah keamanan lainnya. Akses manusia juga memerlukan perlindungan dari tindakan berbagi kredensial, yang bisa menimbulkan biaya overhead manajemen tambahan.
Untuk mengurangi risiko ini, Anda dapat menerapkan solusi akses jarak jauh berbasis agen, seperti AWS Systems Manager
Systems Manager memberikan Anda kontrol terperinci tentang cara berinteraksi dengan instans terkelola. Anda dapat menentukan otomatisasi yang akan dijalankan, siapa yang bisa menjalankannya, dan kapan mereka bisa menjalankannya. Systems Manager dapat menerapkan patch, menginstal perangkat lunak, dan membuat perubahan konfigurasi tanpa akses interaktif ke instans. Systems Manager juga dapat menyediakan akses ke shell jarak jauh dan mencatat log dari setiap perintah yang diinvokasi, dan outputnya, selama sesi ke log dan Amazon S3
Langkah-langkah implementasi
-
Instal Agen AWS Systems Manager (SSM Agent) di instans Amazon EC2 Anda. Periksa untuk melihat apakah Agen SSM disertakan dan dimulai secara otomatis sebagai bagian dari konfigurasi AMI dasar Anda.
-
Verifikasi bahwa Peran IAM yang dikaitkan dengan profil instans EC2 Anda menyertakan kebijakan IAM terkelola
AmazonSSMManagedInstanceCore. -
Non-aktifkan SSH, RDP, dan layanan akses jarak jauh lainnya yang berjalan di instans Anda. Anda dapat melakukannya dengan menjalankan skrip yang dikonfigurasi di bagian data pengguna untuk templat peluncuran Anda atau dengan membuat AMI yang disesuaikan dengan alat seperti EC2 Image Builder.
-
Pastikan bahwa aturan lalu lintas masuk grup keamanan yang berlaku untuk instans EC2 Anda tidak mengizinkan akses pada port 22/tcp (SSH) atau port 3389/tcp (RDP). Implementasikan deteksi dan peringatan terkait grup keamanan yang salah konfigurasi dengan menggunakan layanan-layanan seperti AWS Config.
-
Tentukan otomatisasi dan runbook yang sesuai, lalu jalankan perintah di Systems Manager. Gunakan kebijakan IAM untuk menentukan siapa yang dapat melakukan tindakan ini dan kondisi yang akan membuat mereka diizinkan. Uji otomatisasi ini secara menyeluruh di sebuah lingkungan non-produksi. Lakukan invokasi terhadap otomatisasi ini jika diperlukan, bukan mengakses instans secara interaktif.
-
Gunakan AWS Systems Manager Session Manager untuk menyediakan akses interaktif ke instans bila diperlukan. Aktifkan pencatatan log aktivitas sesi untuk mempertahankan jejak audit di Log Amazon CloudWatch atau Amazon S3
.
Sumber daya
Praktik-praktik terbaik terkait:
Contoh terkait:
Alat terkait:
Video terkait: