AWS Network ACL and subnets: network level security
Learn how to secure your VPC using an AWS Network ACL and subnets. Network ACLs act as a firewall for controlling traffic in and out of a VPC subne...Learn More
In this article, I’m going to break AWS networking down to its basic building blocks to offer some big-picture insight. By the way, you might enjoy this complete Cloud Academy course on VPCs and AWS networking.
The following are what I believe are the main network-oriented services on AWS:
Properly understanding VPCs is critically important not only for AWS Networking, but for successfully working with AWS itself. As always, AWS’s documentation is a great place to start. Here’s their definition:
Amazon Virtual Private Cloud (Amazon VPC) enables you to launch Amazon Web Services (AWS) resources into a virtual network that you’ve defined. This virtual network closely resembles a traditional network that you’d operate in your own data center, with the benefits of using the scalable infrastructure of AWS.
So if you’re already familiar with networking, you are in luck: AWS networking’s use of virtual networks closely resembles a traditional network that you’d operate in your own data center. but even if you’re still a bit new to the scene, you can hopefully still pick up some important basics.
1. AWS Networking Configurations
Assuming you have an AWS account you should already have a configured VPC waiting for you. If you’d like to roll your own, open your VPC dashboard an select “Start VPC Wizard” you will see these four choices:
For the time being forget about the last two – which involve connecting to an external VPN – and concentrate on numbers one and two.
In a VPC with a Single Public Subnet, your instances run in a private, isolated section of the AWS cloud with direct access to the Internet. Network Access Control Lists and Security Groups can be used to provide close control over inbound and outbound network traffic to your instances.
In a VPC with Public and Private Subnets, besides a public subnet, this configuration adds a private subnet whose instances are not addressable from the Internet. Instances in the private subnet can establish outbound connections to the Internet via the public subnet using Network Address Translation (NAT).
So subnets come in two flavors, public and private. Here’s how they work:
Some other things to know about subnets:
3. Regions and Availability Zones
AWS regions are completely isolated from each other. To reduce network traffic latency, it is usually best to choose a region that’s geographically close to you or your resources. While each AWS region is isolated, there are multiple Availability Zones within a region that are connected to each other via low-latency links.
4. Security Groups and NACLs
While Network Access Control Lists and Security groups both exist to control network traffic, their main difference is that ACLs act as a firewall for controlling traffic into and out of subnets, while security groups provide security at the instance level.
5. Internet Gateways
When you launch a VPC, by default, an Internet Gateway (IGW) will be created and attached. As you can probably guess, this serves to connect resources within a VPC to the Internet. Now, since the Internet is where all the bad guys live, make sure you’ve locked all the doors that need locking.
Hint: If you are setting up an instance, configure your security group to allow only the minimum possible amount of incoming traffic – which is probably SSH (port 22) set to allow access only from your own IP. You can open other ports as needed later on.
6. Route Tables
Route tables direct network traffic between instances inside a subnet. If you need resources within different subnets to be able to talk to each other, then you will definitely need to understand route tables.
You are probably not going to need AWS Direct Connect unless you are planning on building significant infrastructure on AWS. Nevertheless it is an important AWS networking concept. In a nutshell, AWS Direct Connect links a local network to your AWS resources through a dedicated connection to an AWS Direct Connect physical location (generally, a third party provider) over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable.
If you want your users to find you, you’ll need DNS routing. The AWS networking solution to that problem is Route 53, which offers highly available and scalable Domain Name System, domain name registration, and health-checking web services. It provides services not unlike other DNS providers, but with some nice extras like,
AWS Networking is not quite the same as “old world” networking, but where it’s different, it’s usually a good thing. Here’s a summary of what we discussed:
VPC (Virtual Private Cloud)
– Different Configurations for your Network
– Regions and Availability Zones
– Security Groups and NACLs
– Internet Gateways
– Route Tables
AWS Direct Connect
Amazon Route 53
– Health checks and DNS failover
– Routing Decision Making
AWS's WaitCondition can be used with CloudFormation templates to ensure required resources are running.As you may already be aware, AWS CloudFormation is used for infrastructure automation by allowing you to write JSON templates to automatically install, configure, and bootstrap your ...
As companies increasingly shift workloads to the public cloud, cloud computing has moved from a nice-to-have to a core competency in the enterprise. This shift requires a new set of skills to design, deploy, and manage applications in the cloud.As the market leader and most mature p...
The announcements at re:Invent just keep on coming! Let’s look at what benefits these two new EC2 instance types offer and how these two new instances could be of benefit to you. If you're not too familiar with Amazon EC2, you might want to familiarize yourself by creating your first Am...
Google Cloud Platform (GCP) has evolved from being a niche player to a serious competitor to Amazon Web Services and Microsoft Azure. In 2018, research firm Gartner placed Google in the Leaders quadrant in its Magic Quadrant for Cloud Infrastructure as a Service for the first time. In t...
In order to understand AWS VPC egress filtering methods, you first need to understand that security on AWS is governed by a shared responsibility model where both vendor and subscriber have various operational responsibilities. AWS assumes responsibility for the underlying infrastructur...
Is it possible to create an S3 FTP file backup/transfer solution, minimizing associated file storage and capacity planning administration headache?FTP (File Transfer Protocol) is a fast and convenient way to transfer large files over the Internet. You might, at some point, have conf...
Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple Application Programming Interfaces (APIs).Microservices have become increasingly popular over the past few years. The modular architectural style,...
There are many use cases for tags, but what are the best practices for tagging AWS resources? In order for your organization to effectively manage resources (and your monthly AWS bill), you need to implement and adopt a thoughtful tagging strategy that makes sense for your business. The...
Amazon S3 is the most common storage options for many organizations, being object storage it is used for a wide variety of data types, from the smallest objects to huge datasets. All in all, Amazon S3 is a great service to store a wide scope of data types in a highly available and resil...
One of the main promises of cloud computing is access to nearly endless capacity. However, it doesn’t come cheap. With the introduction of Spot Instances for Amazon Web Services’ Elastic Compute Cloud (AWS EC2) in 2009, spot instances have been a way for major cloud providers to sell sp...
A Comparison of Machine Learning Services on AWS, Azure, and Google CloudArtificial intelligence and machine learning are steadily making their way into enterprise applications in areas such as customer support, fraud detection, and business intelligence. There is every reason to beli...
The AWS Command Line Interface (CLI) is for managing your AWS services from a terminal session on your own client, allowing you to control and configure multiple AWS services.So you’ve been using AWS for awhile and finally feel comfortable clicking your way through all the services....