Как отправлять журналы CloudTrail в CloudWatch и Elasticsearch
Связывание CloudTrail и CloudWatch
По умолчанию CloudTrail регистрирует все события вашей учетной записи за последние 90 дней. Однако, чтобы связать его с CloudWatch, вам нужно создать Trail, который дольше хранит записи о событиях, а также имеет возможность вести расширенные журналы для отдельных записей S3 и вызовов Lambda.
Чтобы создать его, перейдите в консоль управления CloudTrail и на вкладке «Trails» создайте новый. Вы можете выбрать, какие регионы и какие события он отслеживает.
В разделе «События данных» вы также можете включить расширенный мониторинг корзин S3 или функций Lambda. Они являются необязательными и потребуют дополнительной оплаты, а также займут гораздо больше места в журналах CloudWatch.
После создания следа вы можете включить интеграцию CloudWatch Logs, щелкнув имя следа в разделе «Тропы», прокрутив вниз до «Журналы CloudWatch» и нажав «Настроить».
Единственным вариантом здесь является имя группы журналов, которое по умолчанию равно CloudTrail/DefaultLogGroup
. Группа будет создана, если она еще не существует.
Из-за того, как работает система разрешений AWS, вам необходимо предоставить CloudTrail достаточные привилегии для доступа к группам журналов CloudWatch и создания потоков, чтобы начать отправку событий журнала. Эта роль уже настроена, и все, что вам нужно сделать, это нажать «Разрешить» на следующем экране, чтобы связать две службы вместе.
Теперь вы должны увидеть группу журналов и роль IAM в настройках трейла:
А в CloudWatch вы увидите новую группу журналов и созданный поток журналов, который автоматически начнет потоковую передачу всех событий.
CloudWatch будет получать все обновления в будущем, но в настоящее время нет встроенного способа импорта предыдущих событий.
Связывание CloudWatch и Elasticsearch
Elasticsearch — это поисковая система, которая обычно используется для анализа файлов журналов Linux и часто работает в паре с Kibana, механизмом визуализации, который может рисовать графики и графики с использованием данных, предоставленных Elasticsearch. Благодаря огромному количеству данных, которые активная учетная запись AWS может выдать из CloudTrail, Elasticsearch имеет смысл для многих людей. К счастью, это довольно легко настроить.
Вы можете прочитать наше полное руководство по настройке сервера Elasticsearch на AWS здесь. Однако, если вы уже настроили его, связать с ним CloudWatch довольно просто. В консоли CloudWatch выберите группу журналов, которую вы хотите связать, и выберите «Stream To Amazon Elasticsearch Service»:
Это вызовет диалоговое окно, в котором вы можете выбрать свой кластер ES. После этого вы должны увидеть все события от Elasticsearch.