Hands-on AWS Lab & Projects Repository
This repository is dedicated to practicing AWS cloud computing and cloud security skills using AWS Free Tier. It contains mini-projects that demonstrate knowledge and practical experience with EC2, S3, Lambda, VPC, IAM, CloudWatch, and Infrastructure-as-Code (IaC).
The purpose of this repository is to build practical cloud experience while reinforcing foundational knowledge gained from certifications and courses.
Specific goals:
- Compute & Storage: Launch EC2 instances and host static websites on S3 + CloudFront.
- Security & IAM: Implement secure IAM users, roles, and policies. Explore CloudTrail for auditing.
- Networking: Create VPCs with public/private subnets, security groups, and NACLs.
- Serverless & APIs: Deploy Lambda functions and expose them via API Gateway.
- Monitoring & Alerts: Configure CloudWatch alarms and SNS notifications.
- Infrastructure as Code (IaC): Automate deployments with Terraform or CloudFormation.
- Portfolio Development: Document projects with architecture diagrams, screenshots, and step-by-step instructions.
Outcome: By completing these projects, this repo demonstrates real-world AWS skills and provides a hands-on portfolio to show potential employers.
cloud-playground/
│
├── Project1-Setup-EC2/
├── Project2-S3-Website/
├── Project3-IAM-Security/
├── Project4-CloudWatch-SNS/
├── Project5-VPC-Networking/
├── Project6-Lambda-API/
├── Project7-IaC/
├── Project8-Capstone/
└── README.md
Each project folder contains a README with objectives, commands, notes, and screenshots. You can complete projects in any order over 1–6 days or less than a week.
Objectives:
- Create AWS Free Tier account and enable MFA
- Launch EC2 t3.micro instance
- Connect via SSH and document setup
Screenshots:
- EC2 Dashboard
- SSH Terminal
- Linux Commands
Objectives:
- Create S3 bucket for static site
- Upload HTML/CSS files
- Configure public access and CloudFront distribution
Screenshots:
- S3 Bucket Dashboard
- Live Website
Objectives:
- Create IAM users and groups
- Apply least-privilege policies
- Enable CloudTrail logging
Screenshots:
- IAM Dashboard
- Create IAM User
- Permission Policy
Objectives:
- Create CloudWatch alarms
- Setup SNS notifications for alerts
Screenshots:
- CloudWatch Dashboard
- Create Alarm
- SNS Notification
Objectives:
- Create Virtual Private Cloud (VPC) with public and private subnets
- Configure security groups and Network ACLs (NACLs)
- Launch EC2 instances in different subnets
Screenshots:
- VPC Dashboard
- Public Subnet
- Private Subnet
Objectives:
- Deploy Lambda function (Python/Node.js)
- Expose Lambda via API Gateway
- Enable CloudWatch logging
Screenshots:
- Lambda Dashboard
- Create Lambda Function
- API Gateway Test
Objectives:
- Deploy EC2 and S3 using Terraform or CloudFormation
- Version control IaC scripts in GitHub
Screenshots:
- Terraform Deployment Overview
- EC2 Instance Created
- S3 Bucket Created
Objectives:
- Combine EC2, S3, Lambda, API Gateway, VPC, IAM, CloudWatch, and IaC into a single project
- Document architecture, setup, and results
Screenshots:
- Terraform plan and apply output
- AWS Console resources: EC2, S3, Lambda, API Gateway
- CloudWatch logs and metrics
- AWS Free Tier services: EC2, S3, Lambda, API Gateway, VPC, IAM, CloudWatch, SNS
- Cloud security: IAM roles/policies, CloudTrail, GuardDuty, least privilege principles
- Infrastructure as Code: Terraform or CloudFormation
- Monitoring and alerting for cloud resources
- Documentation and portfolio-ready projects
This project is licensed under the MIT License. See LICENSE for details.
Jan Marc – Computer Engineering Graduate | Cloud & Security Enthusiast
- GitHub: https://github.com/janmaaarc
- LinkedIn: https://www.linkedin.com/in/jan-marc-coloma/