Quick answer: AWS security best practices are the controls that protect accounts, identities, networks and data on Amazon Web Services. For small businesses the essentials are locking down the root user, single sign-on with MFA through IAM Identity Center, a multi-account structure with guardrails, organization-wide CloudTrail, GuardDuty and Security Hub, blocked public S3 access, encryption, least-privilege networking and tested backups.
Key takeaways
- Under the shared responsibility model, AWS secures the cloud and you secure what you put in it.
- Identity is the perimeter. Use IAM Identity Center with MFA and eliminate long-lived access keys.
- Separate workloads into multiple accounts and apply guardrails with service control policies.
- Turn on CloudTrail, GuardDuty, Security Hub and AWS Config across all accounts and regions.
- Backups only count if they are isolated from production credentials and regularly test-restored.
Attackers routinely scan for exposed AWS credentials, open storage buckets and unprotected management ports, and small organizations are not exempt. The good news is that a short list of well-understood controls blocks most real-world attacks on AWS. This guide covers those controls in priority order for small businesses and nonprofits. It aligns with the security pillar of the AWS Well-Architected Framework and the foundation work on our AWS consulting page.
What is the shared responsibility model on AWS?
AWS is responsible for security of the cloud, and you are responsible for security in the cloud. Most AWS security incidents result from customer-side configuration, not AWS infrastructure failures.
| AWS is responsible for | You are responsible for |
|---|---|
| Physical data centers and hardware | Identities, users, roles and permissions |
| Network infrastructure and hypervisor | Security groups, network ACLs, public exposure |
| Managed service infrastructure (for example the RDS engine host) | Data classification, encryption settings and keys |
| Global infrastructure availability | Operating system patching on EC2 |
| Application code and dependencies | |
| Logging, monitoring and incident response |
How do you secure identity and access on AWS?
Lock down the root user, give every person single sign-on with MFA, and replace long-lived keys with roles. Compromised credentials are the most common starting point for AWS breaches.
Identity checklist
- Enable MFA on the root user of every account, store credentials securely and use root only for tasks that require it.
- With AWS Organizations, consider centralized root access management to remove root credentials from member accounts.
- Use IAM Identity Center for all human access, connected to Microsoft Entra ID, Google Workspace or another identity provider where possible.
- Require MFA for every user, preferring phishing-resistant methods such as passkeys or security keys for administrators.
- Assign permission sets by job function, starting from least privilege.
- Delete IAM users with access keys, or rotate and restrict any that must remain.
- Use IAM roles for EC2, Lambda and containers, never embedded access keys.
- For CI/CD, use OpenID Connect federation, for example from GitHub Actions, instead of stored keys.
- Review unused permissions and roles with IAM Access Analyzer.
How should you structure accounts and guardrails?
Use multiple accounts with preventive and detective guardrails applied centrally. Accounts are the strongest isolation boundary on AWS.
- Separate accounts for production, non-production, shared services, log archive and security tooling.
- Service control policies (SCPs) to prevent disabling CloudTrail or GuardDuty, restrict regions, and block root user actions in member accounts.
- AWS Control Tower to deploy a governed landing zone with preconfigured controls.
- Delegated administration of GuardDuty, Security Hub and Config to a dedicated security account.
Our AWS landing zone guide walks through the account structure step by step.
How do you detect threats and misconfigurations?
Enable organization-wide logging, threat detection and posture management, and route findings to someone who will act. Prevention eventually fails, so detection determines impact.
| Service | Purpose | Recommended setup |
|---|---|---|
| AWS CloudTrail | Records API activity | Organization trail, all regions, logs to an isolated log archive account |
| Amazon GuardDuty | Threat detection from logs and activity | Enabled in all accounts and regions with a delegated admin |
| AWS Security Hub | Aggregates findings and checks best practice standards | Enable AWS Foundational Security Best Practices |
| AWS Config | Records resource configuration and evaluates rules | Organization-wide with conformance packs as needed |
| IAM Access Analyzer | Finds resources shared outside your organization | Organization-level analyzer |
| Amazon Inspector | Scans EC2, containers and Lambda for vulnerabilities | Enable for workloads with internet exposure |
Send high and critical findings to email, chat or a ticketing system using Amazon EventBridge, and agree on who responds and how fast.
How do you protect data on AWS?
Block public access by default, encrypt everything and control who can use the keys. Exposed S3 buckets remain one of the most common causes of cloud data leaks.
Data protection checklist
- Enable S3 Block Public Access at the account level, with documented exceptions only for intentionally public content served through CloudFront.
- Turn on default encryption for EBS volumes in every region.
- Encrypt RDS databases and snapshots, and keep databases in private subnets.
- Use AWS KMS customer managed keys for sensitive data where you need control over key policies.
- Store secrets in AWS Secrets Manager or Systems Manager Parameter Store, not in code or environment files.
- Enable S3 versioning and consider Object Lock for critical data.
- Use Amazon Macie where you need to discover sensitive data in S3.
How do you secure networks and workloads?
Keep servers and databases private, expose only what must be public, and manage instances without open admin ports.
- Place EC2 instances and databases in private subnets, with load balancers in public subnets.
- Never allow SSH (22) or RDP (3389) from the internet. Use AWS Systems Manager Session Manager instead.
- Write security groups that reference other security groups rather than broad IP ranges.
- Put AWS WAF in front of public web applications and APIs.
- Patch EC2 instances with Systems Manager Patch Manager on a schedule.
- Scan container images and dependencies in your pipeline, as described in our DevSecOps guide.
How do you prepare for incidents and recovery?
Have backups an attacker cannot delete and a simple, rehearsed response plan. Ransomware and credential theft target backups first.
- Use AWS Backup with backup vaults in a separate account and Vault Lock where appropriate.
- Test restores at least twice a year and document recovery times.
- Write a short incident response runbook: who to call, how to revoke credentials, how to isolate an instance, and how to contact AWS Support.
- Set billing alarms, since unexpected spend can be the first sign of compromised credentials used for crypto mining.
Security for nonprofits and regulated organizations
Nonprofits handling donor, client or health data and businesses subject to HIPAA or PCI DSS should map these controls to their obligations. AWS Artifact provides AWS's compliance reports, and Security Hub standards help track posture, but compliance still depends on your configuration and processes. For a broader checklist that includes endpoints and email, see our IT security checklist for small businesses.
Get an AWS security review
Desai InfoTech reviews AWS environments against these practices as part of an AWS Well-Architected review and delivers a prioritized fix list. If you also run Azure, see our Azure security assessment. To get started, request a free cloud assessment.
Frequently asked questions
What is the AWS shared responsibility model?
The shared responsibility model divides security duties between AWS and the customer. AWS secures the infrastructure that runs its services, including data centers, hardware and the virtualization layer. Customers secure their data, identities, access policies, network configuration, operating systems on EC2 and application code. The more managed the service, the more AWS handles.
What are the first AWS security steps for a small business?
Enable MFA on the root user and stop using it for daily work, set up IAM Identity Center with MFA for all people, delete unused access keys, turn on Block Public Access for S3 at the account level, enable CloudTrail and GuardDuty in all regions, and set a billing alarm. These steps take hours and address the most common attack paths.
Do small businesses need multiple AWS accounts?
Yes, in most cases. Separate accounts for production, development, logging and security limit the damage from a compromised credential or mistake, simplify access control and make costs clearer. AWS Organizations and AWS Control Tower make multiple accounts manageable even for small teams, and there is no charge for the accounts themselves.
How much do AWS security services cost?
IAM, IAM Identity Center, AWS Organizations and a basic CloudTrail trail of management events have no additional charge. GuardDuty, Security Hub, AWS Config and Amazon Inspector are billed on usage, such as events analyzed or resources evaluated. For small environments these costs are usually modest relative to the risk they reduce, and free trials help estimate them.
What is the best IDS for AWS?
For most small businesses the best intrusion detection system on AWS is Amazon GuardDuty, a managed service that analyzes CloudTrail, VPC Flow Logs and DNS logs for signs of compromise without installing agents. Where traffic must be inspected and blocked inline, AWS Network Firewall adds intrusion prevention using Suricata-compatible rules. Send findings from both to Security Hub so alerts are reviewed in one place. Third-party IDS appliances from the AWS Marketplace are usually only needed for specific compliance or existing-tool requirements.
Part of the AWS Consulting hub.