Post

26 AWS security best practices to adopt in production

AWS IAM

(1) IAM policies should not allow full “*” administrative privileges

(2) IAM users should not have IAM policies attached

(3) IAM users’ access keys should be rotated every 90 days or less

(4) IAM root user access key should not exist

(5) MFA should be enabled for all IAM users that have a console password

(6) Hardware MFA should be enabled for the root user

(7) Password policies for IAM users should have strong configurations

(8) Unused IAM user credentials should be removed

Amazon S3

(9) S3 Block Public Access setting should be enabled

(10) S3 buckets should have server-side encryption enabled

(11) S3 Block Public Access setting should be enabled at the bucket level

AWS CloudTrail

(12) CloudTrail should be enabled and configured with at least one multi-Region trail

(13) CloudTrail should have encryption at rest enabled

(14) Ensure CloudTrail log file validation is enabled

AWS Config

(15) AWS Config should be enabled

Amazon EC2

(16) Attached EBS volumes should be encrypted at rest

(17) VPC flow logging should be enabled in all VPCs

(18) The VPC default security group should not allow inbound and outbound traffic

(19) EBS default encryption should be enabled

AWS DMS

(20) AWS Database Migration Service replication instances should not be public

Amazon EBS

(21) Amazon EBS snapshots should not be public, determined by the ability to be restorable by anyone

Amazon OpenSearch Service

(22) Elasticsearch domains should have encryption at rest enabled

Amazon SageMaker

(23) SageMaker notebook instances should not have direct internet access

AWS Lambda

(24) Lambda functions should use supported runtimes

AWS KMS

(25) AWS KMS keys should not be unintentionally deleted

Amazon GuardDuty

(26) GuardDuty should be enabled


🔖 Source

  • [26 AWS security best practices to adopt in productionSysdig](https://sysdig.com/blog/26-aws-security-best-practices/)
This post is licensed under CC BY 4.0 by the author.