CloudTrail-Watcher: AWS kaynakları oluşturulduğunda bildirim alın
(github.com/rubysoho07)Bu nedir?
- AWS'deki oturum açma denemelerini (başarılı/başarısız fark etmeksizin) algılar.
- AWS içinde kaynak oluşturulduğunda bildirim alabilirsiniz.
- (Ayrıca yapılandırdıysanız) Slack mesajı olarak bildirim alabilirsiniz. (Webhook kullanır)
- Slack bildirimini ayrıca yapılandırmadıysanız, e-posta ile de bildirim alabilirsiniz. (Ancak Auto Scaling'i yoğun şekilde kullanıyorsanız bu önerilmez)
- Ayrıca yapılandırdıysanız, AWS kaynağını kimin oluşturduğunu görebilmeniz için otomatik olarak
Useretiketi ekler.
Kurulum yöntemi
README.md dosyasına bakın!
- Terraform ile kurulum
- AWS SAM ile kurulum
Nasıl bildirim alabilirim?
(Yalnızca birini yapmanız yeterlidir)
- Slack Incoming Webhook'u yapılandırın, ardından webhook adresini ortam değişkeni olarak ayarlayın.
- Bir AWS SNS Topic yapılandırın, ardından Topic için abonelik ayarlayın.
Desteklenen AWS kaynakları
Konsol oturum açma etkinlikleri ve çeşitli kaynakların oluşturulması için alarm alırsınız.
- Konsol oturum açma
- 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 yorum
cloudtrail zaten etkinse, lambda ve e-posta bildirimi gönderilecekse yalnızca sns kullanmak mı yeterli? İşletim maliyeti de 1 milyon çağrıya kadar ücretsiz, değil mi?
Merhaba, geri dönüşüm gecikti.
Temelde, CloudTrail yapılandırmasını yapmamış olduğunuz varsayımıyla CloudTrail etkinleştirme + S3’e kaydetme senaryosunu esas alarak hazırladım.
CloudTrail açıkken yalnızca Lambda fonksiyonunu bağlama kısmını da iyileştirmeye çalışacağım.
Temelde yalnızca CloudTrail loglarını depolayan S3, bildirim gönderen Lambda fonksiyonu ve e-posta bildirimi gönderilecekse SNS kullanılır.
Bu yapıya göre CloudTrail, S3, Lambda ve SNS maliyetleri oluşur. Ancak kişisel olarak kullandığınız bir hesapsa neredeyse hiç maliyet çıkmayacaktır. (Yakın zamanda benim kişisel olarak kullandığım hesapta bunu 1 yıldan uzun süre çalıştırdığımda sonuç böyleydi.)
Ancak bunu gerçek production ortamında kullanıyorsanız giriş bildirimi veya Auto Scaling ile ilgili bildirimler sık sık oluşur. Bu durumda bir miktar ücret çıkabilir gibi görünüyor.
(Production hesabında SNS servisi üzerinden e-posta bildirimi etkinleştirmenizi önermiyorum.)
Sorunuz için teşekkür ederim, ilerideki iyileştirmelerde değerlendireceğim.