Skip to content

Repository files navigation

Banner

AWS Level IAM S3 VPC Contributions

AWS — Zero to Hero

☁️ From cloud fundamentals to advanced AWS architecture — comprehensive explanations, hands-on labs, and real-world best practices.


📖 About This Repository

AWS Zero to Hero is a structured, project-based learning repository designed to take you from understanding the basics of cloud computing all the way through deploying secure, scalable, and highly available architectures on Amazon Web Services.

Every section is organized into its own folder with a dedicated README.md covering in-depth explanations, diagrams, AWS Console walkthroughs, and hands-on labs. The content progresses logically — from foundational cloud concepts to advanced AWS networking and security.

By the end of this course, you will be able to:

  • ✅ Explain cloud computing concepts, deployment models, and service models
  • ✅ Navigate the AWS global infrastructure — Regions, AZs, and Edge Locations
  • ✅ Implement fine-grained access control using IAM users, roles, policies, and Organizations
  • ✅ Store, secure, and manage data at scale with Amazon S3
  • ✅ Design isolated, secure cloud networks using AWS VPC
  • ✅ Connect and protect VPCs using Peering, Transit Gateway, Endpoints, and DNS Firewall

📚 Table of Contents

1. Introduction to Cloud Computing

This section introduces the fundamentals of cloud computing — what it is, why it exists, and how it differs from traditional on-premises IT infrastructure. It covers key characteristics, business benefits, and real-world use cases that form the foundation for understanding modern cloud platforms like AWS.

📂 Explore → Introduction to Cloud Computing


2. Cloud Deployment and Service Models

This section explains how cloud environments are architected and consumed. It covers cloud deployment models — Public, Private, Hybrid, and Community — alongside cloud service models — IaaS, PaaS, and SaaS — helping you understand the architectural and usage choices available in cloud computing.

📂 Explore → Cloud Deployment and Service Models


3. Introduction to AWS

This section provides an overview of Amazon Web Services — its global infrastructure, how AWS organizes compute and storage capacity across Regions and Availability Zones, and a high-level introduction to the essential AWS services that power modern cloud applications.

📂 Explore → Introduction to AWS


4. AWS Identity and Access Management (IAM)

This section provides a detailed understanding of AWS IAM — how authentication and authorization work in AWS, and how to implement the principle of least privilege at every layer of your environment.

📂 Explore → AWS Identity and Access Management

# Sub-Topic Description
4.1 Introduction to AWS IAM IAM overview, users, groups, and foundational concepts
4.2 Roles and Policies in IAM IAM roles, managed vs inline policies, and policy structure
4.3 Policy Evaluation and Cross Account Access How AWS evaluates policies and enables cross-account resource access
4.4 AWS Organizations, SCPs and Identity Center Managing multiple accounts, Service Control Policies, and AWS Identity Center
4.5 Single Sign-On (SSO) Centralized access to AWS accounts and business applications

5. AWS Simple Storage Service (S3)

This section provides a detailed understanding of Amazon S3 — how to store, manage, secure, and retrieve data at scale. It covers everything from core concepts to advanced features like encryption, replication, lifecycle policies, and attribute-based access control.

📂 Explore → AWS Simple Storage Service

# Sub-Topic Description
5.1 Cloud Storage & S3 Fundamentals What S3 is, core storage concepts, durability, and availability
5.2 S3 Bucket Types & Architecture General-purpose vs directory buckets, flat namespace architecture
5.3 Objects, Storage Classes & Cost Optimization Object structure, versioning, storage tiers, and cost management
5.4 S3 Limits, Multipart Upload & Replication Service quotas, uploading large files, and cross-region replication
5.5 Object Ownership and Bucket ACLs Controlling object ownership and access using ACLs
5.6 S3 Static Website Hosting Hosting static websites directly from an S3 bucket
5.7 Requester Pays & Server Access Logging Cost attribution for data transfer and auditing bucket access
5.8 Lifecycle Configuration Automating object transitions and expirations to reduce costs
5.9 Bucket Policy Resource-based policies for controlling access to S3 buckets
5.10 S3 Encryption SSE-S3, SSE-KMS, SSE-C, and client-side encryption
5.11 Transfer Acceleration Faster uploads using CloudFront edge locations
5.12 S3 ABAC Attribute-Based Access Control for dynamic, tag-driven permissions

6. AWS Virtual Private Cloud (VPC)

This section provides a detailed understanding of Amazon VPC — how to design, secure, and connect isolated cloud networks on AWS. It covers core networking components and progresses through advanced connectivity and security topics.

📂 Explore → AWS Virtual Private Cloud

# Sub-Topic Description
6.1 Introduction to AWS VPC What VPC is, CIDR blocks, and the default VPC
6.2 Components of VPC Subnets, route tables, internet gateways, NAT gateways, and Elastic IPs
6.3 Bastion Host and Private Subnet Connectivity Securely accessing private subnet instances using a bastion host
6.4 Security Groups vs Network ACLs Stateful vs stateless traffic filtering — when to use each
6.5 VPC Peering Direct, private connectivity between two VPCs
6.6 Virtual Private Network (VPN) Site-to-Site VPN for connecting on-premises networks to AWS
6.7 Transit Gateway Hub-and-spoke routing for connecting multiple VPCs and on-premises networks
6.8 VPC Endpoints Private access to AWS services without internet or NAT — Gateway and Interface endpoints
6.9 DNS Firewall Filtering outbound DNS queries to block malicious and unauthorized domains
6.10 VPC FLOWLOG Creation and Accessing logs of network traffic to and from the VPC
6.11 VPC PrivateLink and Lattice Explaining the different methods of private communications - Lattice and PrivateLink

7. AWS Elastic Compute Cloud (EC2)

This section covers Amazon EC2 — the backbone of AWS compute. You'll learn how to launch and manage virtual machines, understand instance types and pricing models, configure networking interfaces, control placement and tenancy, and set up web servers on EC2 instances.

📂 Explore → AWS Elastic Compute Cloud

# Sub-Topic Description
7.1 Introduction to EC2 What EC2 is, AMIs, instance lifecycle, and launching your first instance
7.2 Instance State and Actions Describes different Instance States in Lifecycle and Different Actions to execute
7.3 Elastic Network Interface ENIs — attaching, detaching, and managing network interfaces on EC2
7.4 Instance Types and Purchase Options On-Demand, Reserved, Spot, and Savings Plans — choosing the right option
7.5 Key-Pair and SSH Clients Generating key pairs, connecting via SSH, and managing access
7.6 Placement Groups Cluster, Spread, and Partition placement strategies for performance and HA
7.7 Tenancy and Tenancy Types Shared, Dedicated Instance, and Dedicated Host — isolation and compliance
7.8 Webservers Installing and configuring web servers (Apache/Nginx) on EC2 instances
7.9 Multi-Website in Single Ec2 Installing and configuring Multiple websites in a single ec2 machine using multiple ips
8.0 ssh-keygen Generating New key-pair incase we lose private key in our machine
8.1 LoadBalancers Introduction to loadbalancers , Loadbalancing Algorithms and Types of Loadbalancers in aws
8.2 Network LoadBalancer -Handson Lab demonstrating the Network Loadbalancer setup
8.3 Application-LoadBalancer -Handson Lab demonstrating the Application Loadbalancer setup
8.4 Introduction to Autoscaling Introduction to autoscaling and scaling policies
8.5 AutoScaling-Hands-on Hands-on Lab on autoscaling in aws
8.5 Autoscaling+SNS+S3 Hands-on Lab on Autoscaling+SNS+S3

8. AWS Elastic Block Store (EBS)

This section provides a detailed understanding of Amazon EBS — how to create, manage, and optimize persistent block storage for EC2 instances. It covers core storage concepts, volume types, performance tuning, snapshots, and security features.

📂 Explore → AWS Elastic Block Store (EBS)

# Sub-Topic Description
8.1 Introduction to AWS EBS Block Storage Introduction, EBS and filesystem Types and Hands-on Lab
8.2 EBS Permanent Mounting Hands-on Lab on Permanent mouting of ebs volume
8.3 Keypair Recovery using EBS Hands-on Lab on keypair recovery using ebs root volume swapping
8.4 Disk-Partition-using-fdisk Disk Partitioning using fdisk commandlet
8.5 Logical Volume Management logical volume management and hands-on labs

9. AWS Elastic File System (EFS)

This section provides a detailed understanding of Amazon EFS — how to create, mount, manage, and optimize scalable shared file storage for EC2 instances. It covers core file storage concepts, performance modes, throughput modes, mount targets, security, lifecycle management, and hands-on labs.

📂 Explore → AWS Elastic File System (EFS)

# Sub-Topic Description
9.1 Introduction to AWS EFS File Storage Introduction, EFS architecture, features, and hands-on lab
9.2 Creating and Mounting EFS Create EFS, mount targets, attach to EC2 Linux instances

10. AWS Lambda

This section provides a detailed understanding of Amazon Lambda — how to create, deploy, manage, and optimize serverless functions for event-driven workloads. It covers core serverless concepts, function creation, triggers, execution roles, environment variables, versions and aliases, scaling behavior, monitoring, security, and hands-on labs.

📂 Explore → AWS LAMBDA

# Sub-Topic Description
10.1 Introduction to AWS Lambda Introduction to AWS Lambda and hands-on lab
10.2 Containerized Lambda Function Create a container image, push to ecr and create a containerized lambda function

11. AWS RDS

This section provides a detailed understanding of Amazon RDS — how to create, deploy, manage, and optimize relational databases in the cloud. It covers core database concepts, DB instance creation, engine selection, connectivity, backups, Multi-AZ deployments, read replicas, scaling behavior, monitoring, security, maintenance, and hands-on labs.

📂 Explore → AWS RDS

# Sub-Topic Description
11.1 Introduction to AWS RDS Introduction to AWS RDS
11.2 DB Creation and Connecting Creating a RDS MySQL database and Connecting it through client from an ec2 machine

12. AWS Elastic Beanstalk

This section provides a detailed understanding of AWS Elastic Beanstalk — how to deploy, manage, monitor, and scale applications in the cloud without manually managing infrastructure. It covers core Elastic Beanstalk concepts, environment creation, deployment workflows, application versions, deployment policies, scaling, load balancing, monitoring, security, Docker support, configuration management, and hands-on labs.

📂 Explore → AWS Elastic Beanstalk

# Sub-Topic Description
12.1 Introduction to Elastic Beanstalk Introduction to AWS Elastic Beanstalk
12.2 Creating and Deploying an Application Creating an Elastic Beanstalk environment and deploying an application

13. AWS Route 53

This section provides a detailed understanding of AWS Route 53 — how to manage DNS, create hosted zones, register domains, configure routing policies, and route internet traffic efficiently. It covers core DNS concepts, hosted zones, DNS records, routing policies, health checks, domain registration, private and public hosted zones, failover mechanisms, and hands-on labs.

📂 Explore → AWS-Route-53

# Sub-Topic Description
13.1 Introduction to Route 53 Introduction to AWS Route 53 and DNS concepts
13.2 Creating a Hosted Zone Creating Public and Private Hosted Zones and configuring DNS records

🛠️ Prerequisites

  • Basic understanding of AWS networking (VPC, Subnets, Security Groups)
  • Knowledge of EC2 instances and SSH access
  • Familiarity with Linux commands
  • AWS account with permissions to create EFS and EC2 resources
  • Key pair for connecting to EC2 instances

Before diving in, make sure you have:

Requirement Details
AWS Account Free tier account is sufficient for most labs
AWS CLI Installed and configured (aws configure)
Basic Linux Comfortable with terminal commands
IAM User With appropriate permissions for each service
Text Editor VS Code or similar for editing policy documents

🚦 Getting Started

# Clone this repository
git clone https://github.com/bhuvan-raj/AWS-Zero-to-Hero.git

# Navigate into the project
cd AWS-Zero-to-Hero

# Start with the first section
cd "Introduction to cloud computing"

Each folder contains its own README.md with step-by-step explanations, diagrams, AWS Console walkthroughs, and CLI commands. Work through the topics in order for the best learning experience.


🤝 Contributing

Contributions are welcome! If you have suggestions for improvements, new examples, or find any issues, feel free to open an issue or submit a pull request.


Happy Cloud Building! ☁️

If this repo helped you, please consider giving it a ⭐

About

AWS Zero-to-Hero is a comprehensive learning repository that takes you from cloud fundamentals to advanced AWS concepts through clear explanations, hands-on labs, real-world examples, and best-practice architectures

Topics

Resources

Stars

6 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors