CloudTrail-Watcher: Dapatkan notifikasi saat resource AWS dibuat
(github.com/rubysoho07)Apa ini?
- Mendeteksi percobaan login AWS (baik berhasil maupun gagal).
- Anda bisa menerima notifikasi saat resource dibuat di AWS.
- (Jika dikonfigurasi terpisah) Anda bisa menerima notifikasi melalui pesan Slack. (menggunakan Webhook)
- Jika notifikasi Slack tidak dikonfigurasi secara terpisah, Anda juga bisa menerima notifikasi melalui email. (namun tidak direkomendasikan jika Anda secara aktif menggunakan Auto Scaling)
- Jika dikonfigurasi terpisah, tag 'User' akan otomatis ditambahkan agar Anda bisa mengetahui siapa yang membuat resource AWS.
Cara konfigurasi
README.md 파일을 참고해 주세요!
- Membangun dengan Terraform
- Membangun dengan AWS SAM
Bagaimana cara menerima notifikasi?
(Anda hanya perlu melakukan salah satu dari keduanya)
- Setelah menyiapkan Incoming Webhook Slack, atur alamat webhook sebagai variabel lingkungan.
- Setelah menyiapkan AWS SNS Topic, atur subscription untuk Topic tersebut.
Resource AWS yang didukung
Menerima alarm untuk aktivitas login konsol dan pembuatan berbagai resource.
- Login konsol
- IAM (User, Group, Role, Policy, Instance Profile)
- EC2 (Instance, Security Group)
- RDS (Cluster, Instance)
- S3 (Bucket)
- ElastiCache (Redis, Memcached)
- EMR (Cluster)
- Lambda (Function)
- Redshift (Cluster)
- ECS (Cluster)
- EKS (Cluster)
- DocumentDB (Cluster, Instance)
- MSK(Managed Streaming for Apache Kafka) (Cluster)
- MWAA(Managed Workflow for Apache Airflow) (Environment)
- DynamoDB (Table)
- ELB (CLB, ALB, NLB, GLB)
- CloudFront (Distribution)
2 komentar
Kalau
cloudtrailsudah diaktifkan, lalu memakai lambda dan notifikasi email, berarti yang dipakai hanya sampaisnsya? Biaya operasional gratis sampai sebelum 1 juta panggilan, kan?Halo, maaf balasannya terlambat.
Pada dasarnya, ini dibuat dengan asumsi Anda belum mengatur CloudTrail, sehingga diasumsikan CloudTrail diaktifkan dan disimpan ke S3.
Jika CloudTrail sudah dinyalakan, saya akan mencoba memperbaikinya agar cukup menghubungkan fungsi Lambda saja.
Pada dasarnya, yang digunakan hanya S3 untuk menyimpan log CloudTrail, fungsi Lambda untuk mengirim notifikasi, dan SNS jika ingin mengirim notifikasi email.
Sesuai konfigurasi tersebut, akan ada biaya untuk CloudTrail, S3, Lambda, dan SNS. Namun, jika ini adalah akun pribadi yang Anda gunakan, kemungkinan besar hampir tidak ada biaya yang timbul. (Setidaknya, itulah hasilnya setelah saya menjalankannya secara pribadi selama lebih dari 1 tahun di akun yang saya gunakan sendiri)
Namun, jika digunakan di lingkungan produksi nyata, notifikasi login atau notifikasi terkait Auto Scaling akan cukup sering terjadi. Dalam kasus ini, sepertinya mungkin akan ada sedikit biaya yang dikenakan.
(Untuk akun produksi, saya tidak merekomendasikan mengaktifkan notifikasi email melalui layanan SNS)
Terima kasih atas pertanyaannya, dan saya akan memanfaatkannya untuk perbaikan ke depannya.