写写我的学习笔记,本文仅为个人学习心得,与AWS无关
内容简介
今天看到【1】中的消息,Middle East(UAE)中东土豪区的Guardduty终于上线了,于是上去测试了一下。发现这个region目前没有K8s和Malware保护功能,因此原来的开启脚本会报错,于是我修改了一版,专门为me- central-1订制!
先决条件
启用region me-central-1
已使用AmazonOrganizations管理多账号,并为Guardduty在其它region指定了Delegated Admin Account,则可以直接使用本文中的CLI sample command开启UAE的guardduty。如果还未使用过Guardduty则请参考【2】中的sample CLI command开启。
部署方法
步骤1 在Organizations Management Account下指定Delegated Admin Account
设置参数
此处region可为任意已经开启guardduty的region,如果没有,也可以直接把12位数字赋予region
region=us-east-1
adminid=$(aws guardduty list-organization-admin-accounts --region=$region --query 'AdminAccounts[*].AdminAccountId' --output text)
admemail=$(aws organizations describe-account --account-id $adminid --region=$region --query 'Account.Email' --output text)
echo $adminid $admemail
运行命令
aws guardduty enable-organization-admin-account --admin-account-id=$adminid --region=me-central-1
步骤2 在Delegated Admin Account为所有Member Account开启Guardduty
设置参数
orgids=($(aws organizations list-accounts --query 'Accounts[*].Id' --output text ))
accountids=( ${orgids[*]/$adminid} )
orgemails=($(aws organizations list-accounts --query 'Accounts[*].Email' --output text ))
accountemails=(${orgemails[*]/$admemail})
len=${#accountids[*]}
echo $len
region=me-central-1
运行命令
for ((i=1; i<=len; i++));do
echo $accountids[i] $accountemails[I]
aws guardduty create-members --detector-id $(aws guardduty list-detectors --output text --query 'DetectorIds' --region=$region) --account-details AccountId=$accountids[i],Email=$accountemails[i] --region=$region
aws guardduty update-detector --detector-id $(aws guardduty list-detectors --output text --query 'DetectorIds' --region=$region) --data-sources S3Logs={Enable=true} --enable --finding-publishing-frequency FIFTEEN_MINUTES --region=$region
aws guardduty update-organization-configuration --detector-id $(aws guardduty list-detectors --output text --query 'DetectorIds' --region=$region) --auto-enable --data-sources S3Logs={AutoEnable=true} --region=$region
done
根据Organization中账号的数量,所需要时间不同,完成后,可以登录console,在Delegated Admin Account中可以看到所有member accounts 状态,如下图:
小结
在这篇博文中,我向您展示了如何使用简单的CLI命令就在中东UAE区域开启所有accounts的Guardduty,并完成统一配置,快来试试吧!如果需要使用第三方情报,可以参考【3】中的方法在UAE同样适用。
参考资料
【1】 amazon-guardduty-available-middle-east-uae-region
【2】 aws-enable-ess
【3】2022-08-27 如何在亚马逊云科技AWS Guardduty上集成第三方威胁情报?