分享

AWS安全实践:禁用root API访问密钥

desehawk 发表于 2015-4-10 01:18:01 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 1 22203

问题导读

1.root用户在aws中是否重要?
2.在禁用AWS访问密钥之前,你还需要哪些准备工作?







从本文起,我们开始撰写一系列博文来总结AWS安全相关的十大最佳实践,这些经验总结来自安全工作者和AWS工作人员的大规模AWS部署实践。其中大部分操作起来都非常简单,但却影响着AWS实践的成败。
本系列博文主要包括:
1. 禁用root API访问密钥
2. 在任何时候开启MFA令牌
3. 通过Admin权限减少IAM用户的数量
4. 利用EC2的Roles功能
5. 最小化特权:通过strong/explicit策略限制IAM实体行为
6. 定期循环所有秘钥
7. 在任何可能的地方通过STS AssumeRole来设置IAM角色
8. 使用AutoScaling来抑制DDoS攻击
9. 除非你有怪癖,在任何EC2/ELB 安全组中都禁用0.0.0.0/0
10. 认真对待world-readable/listable S3 bucket策略
最佳实践#1:禁用root API 访问密钥
在AWS的说明中,“root”用户是用来建立AWS账户的登录凭证。曾今,在连接AWS服务的许多地方都必须使用“root”用户。然而,时至今日,“root”用户在AWS基础设施运维中已经可有可无。
在这里,我们推荐禁用这个用户,甚至是删除AWS root API 访问密钥。使用root用户登录Security Credentials page,删除或者禁止任何你可以看到的访问秘钥。
1.jpg
进入Credentials页面时收到的AWS控制台警告
在禁用AWS访问密钥之前,你还需要一些准备工作。
1. 通过管理策略建立至少2个(不超过3个)IAM用户
需要注意的是,你肯定不期望将每个IAM用户都设置为管理员用户!Evident Security Platform(ESP)可以帮助你完成这个设置,并在管理员权限设置不足或者太多时进行提醒。
2.jpg
当设置太多管理员用户时ESP会进行提醒
2. 在实例需要访问其他AWS服务时为其配置IAM Roles
常见用例是存储或者检索S3 bucket、SQS、SNS等服务中的对象,更多信息可访问这里。在这个系列后续的博文中,我们将详细阐述EC2的Roles。
3. 在你的账户中开启Billing和Recovery相关功能
同样是登入root user的前提下,进入 My Account并填写以下几个信息:Alternate Contacts、Security Challenge Questions和IAM User Access to Billing Information。
3.jpg
在移除root 账户和 API访问秘钥之前,一个新的AWS账户需要完整填写上述信息
首先,你的内部邮件分发列表将能够分别从AWS收到与账户相关的支持、账单及安全提醒,当然这个邮件列表是你注册到AWS时所设定的。
其次,最重要的是,当你丢失root账户凭证或者更糟糕的状况发生时,你可以恢复你的账户,如果你为root账户或者IAM凭证做了相关折中设置。
最后,通过IAM用户你可以设置和获得账单分析数据,这样你就可以搭配使用类似Cloudability的第三方花费管理平台。

已有(1)人评论

跳转到指定楼层
ljlinux2012 发表于 2017-3-1 18:11:42
顶顶顶顶顶顶顶
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条