1. Home
  2. Training Library
  3. Designing Secure solutions in AWS - Level 2

AWS Network Firewall vs. Security Groups vs. NACLs

Instructor: Jon Myer

AWS Network Firewall vs. Security Groups vs. NACLs

In this lecture we need to discuss the difference between an AWS Network Firewall, Security Group, and or Network Access Control Lists

An AWS security group is a virtual firewall used to protect AWS instances. Now we can’t say just EC2 instances because Security Groups are used for AWS Services that deploy AWS managed instances to support AWS Managed Services. Wow...a lot of “managed” in that sentence.

Example: AWS Directory Services using EC2 instances to support the service but you can’t access the instances since it’s a managed service.

SG’s (Security Groups) have granular rules for inbound/outbound traffic. By default all outbound traffic is allowed out but you can explicitly deny certain types of outbound traffic. Security groups are considered stateful so traffic that is allowed outbound, will be allowed back inbound since the communication has already been established. If you want to allow other types of inbound traffic where the communication didn’t originate from the instance, then an inbound rule will need to be configured.

What about Network Access Control Lists or what’s typically referred to as NACLs?

NACLs do not protect instances, they only protect the network around the infrastructure. Example: You can govern the access and network traffic to Public or Private Subnets within a VPC utilizing a different set of rules. The default is to allow all traffic to go through because let's face it, Network ACLs are tough to work with and understand if you aren’t used to it.

How does AWS Network Firewall fit into the picture with Security Groups and Network Access Control List. We can easily take Security Groups out of this comparison because they only protect instances. The real comparison is AWS Network Firewall vs NACLs. If you’re looking to fully manage all your VPCs network traffic, setup alerting, logging, handle application traffic, integrate with AWS WAF and AWS Shield using AWS Firewall Manager. My suggestion would be to go with AWS Network Firewalls. 

If not, then it’s probably easier to use NACLs in what I like to call a “set it and forget it” method that provides you VPC security.

2h 45m

This course covers the core learning objective to meet the requirements of the 'Designing secure solutions in AWS - Level 2' skill

Learning Objectives:

  • Analyze the available options to secure credentials using features of AWS Identity and Access Management (IAM)
  • Evaluate the appropriate routing mechanism to securely access AWS service endpoints or internet-based resources from an Amazon VPC
  • Evaluate the appropriate encryption options available for data in transit and when at rest across AWS services
  • Evaluate the most appropriate key management service and options based on business requirements and governance controls


About the Author
Learning Paths

Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.

To date, Stuart has created 150+ courses relating to Cloud reaching over 180,000 students, mostly within the AWS category and with a heavy focus on security and compliance.

Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.

He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.

In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.

Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.