Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AWS Cloud Security Status License


Secure AWS Cloud Infrastructure with Monitoring, Logging & Compliance

This project demonstrates how to build a secure AWS cloud environment using AWS security best practices. It includes a custom VPC, secure remote access, centralized monitoring, audit logging, compliance monitoring, and automated notifications.

The project showcases secure infrastructure design, monitoring, and compliance using native AWS services.

πŸ› οΈ Tech Stack

  • Amazon EC2
  • Amazon VPC
  • Internet Gateway
  • NAT Gateway
  • AWS Systems Manager (SSM)
  • Amazon CloudWatch
  • Amazon SNS
  • AWS CloudTrail
  • Amazon S3
  • AWS Config
  • IAM
  • MFA
  • OpenVPN Access Server

πŸ“– Project Overview

This project demonstrates the implementation of a secure AWS cloud infrastructure using AWS security best practices. The environment was designed with a secure network architecture, private workload deployment, centralized monitoring, audit logging, and compliance monitoring.

The project showcases how to securely deploy and manage Windows workloads in AWS using Amazon VPC, Systems Manager (SSM), Amazon CloudWatch, Amazon SNS, AWS CloudTrail, Amazon S3, and AWS Config.


🎯 Project Objectives

  • Build a secure AWS infrastructure.
  • Deploy workloads in private subnets.
  • Secure administrative access without exposing RDP to the internet.
  • Monitor infrastructure health using Amazon CloudWatch.
  • Configure automated alerts using Amazon SNS.
  • Enable audit logging using AWS CloudTrail.
  • Continuously evaluate security compliance using AWS Config.

πŸ—οΈ Architecture Diagram

Architecture Diagram


πŸ›  AWS Services Used

AWS Service Purpose
IAM Identity and access management
MFA Secure user authentication
Amazon VPC Isolated virtual network
Internet Gateway Internet connectivity
Public Subnet Bastion Host deployment
Private Subnet Windows Application Server deployment
Amazon EC2 Compute instances
AWS Systems Manager Secure instance management
Amazon CloudWatch Agent Collect OS-level metrics
Amazon CloudWatch Infrastructure monitoring
CloudWatch Dashboard Visualize system metrics
CloudWatch Alarm Threshold-based monitoring
Amazon SNS Email notifications
AWS CloudTrail Audit logging
Amazon S3 CloudTrail log storage
AWS Config Compliance monitoring

πŸ” Security Architecture

Identity & Access Management

  • Created an IAM Administrator User.
  • Enabled Multi-Factor Authentication (MFA).
  • Avoided using the AWS Root Account for daily operations.

Networking

  • Created a custom Amazon VPC.
  • Configured Public and Private Subnets.
  • Attached an Internet Gateway.
  • Configured Route Tables.
  • Applied Security Groups following least-privilege principles.
  • Configured a NAT Gateway to provide outbound internet access for resources in the private subnet.

🌐 Amazon VPC

A custom Amazon VPC was created with separate public and private subnets. Route tables, an Internet Gateway, and a NAT Gateway were configured to provide secure, controlled, and reliable network connectivity between public and private resources.

Amazon VPC


Compute

πŸ–₯️ EC2 Instances

The environment consists of a Bastion Host deployed in the public subnet and a Windows Application Server deployed in the private subnet. The Application Server is managed securely using AWS Systems Manager (SSM) and monitored using the CloudWatch Agent.

The screenshot below shows both EC2 instances in the Running state.

EC2 Instances


πŸ” Secure Remote Access

OpenVPN Access Server was configured to provide secure remote access to the AWS environment. Administrators connect through an encrypted VPN tunnel before accessing resources inside the VPC.

Benefits:

  • Encrypted communication
  • Secure remote administration
  • Controlled access to private resources

Bastion Host

  • Deployed in the Public Subnet.
  • Used for administrative access.

Windows Application Server

  • Deployed in the Private Subnet.
  • No Public IP assigned.
  • Managed securely using AWS Systems Manager.

πŸ–₯️ Secure Instance Management

AWS Systems Manager Session Manager was configured to securely manage the Windows Application Server without exposing RDP (3389) to the internet.

Benefits:

  • No Public IP required
  • No inbound RDP access
  • IAM-controlled access
  • Encrypted session

πŸ“Š Monitoring

Amazon CloudWatch Agent was installed on the Windows Application Server to collect operating system metrics.

Collected Metrics:

  • CPU Utilization
  • Memory Utilization
  • Disk Usage
  • Network In
  • Network Out

πŸ“Š CloudWatch Dashboard

A custom CloudWatch dashboard was created to monitor the health and performance of the Windows Application Server.

The dashboard displays the following metrics:

  • CPU Utilization
  • Memory Utilization
  • Network In
  • Network Out

CloudWatch Dashboard


🚨 CloudWatch Alarms

CloudWatch Alarms were configured to monitor CPU and memory utilization. When the configured threshold is exceeded, the alarm state changes from OK to ALARM and triggers an Amazon SNS notification.

Configured alarms:

  • High CPU Utilization
  • High Memory Utilization

CloudWatch Alarms


πŸ“§ Amazon SNS

Amazon SNS was integrated with CloudWatch Alarms to send email notifications whenever a CPU or memory alarm enters the ALARM state. This helps administrators respond quickly to potential issues.

Workflow:

CloudWatch Alarm
        ↓
Amazon SNS
        ↓
Email Notification

Amazon SNS


πŸ“œ Audit Logging

AWS CloudTrail records AWS API activities and securely stores the log files in an Amazon S3 bucket. These logs help monitor user activity and support security auditing.

Benefits:

  • Tracks AWS account activities
  • Records API calls
  • Supports security auditing
  • Helps with compliance

CloudTrail


βœ… Compliance Monitoring

AWS Config continuously evaluates AWS resources against configured compliance rules. In this project, the managed rule s3-bucket-public-read-prohibited checks whether Amazon S3 buckets allow public read access.

Managed Rule:

  • s3-bucket-public-read-prohibited

Compliance Status:

  • βœ… COMPLIANT

AWS Config


πŸ“„ Documentation

For detailed implementation steps, refer to:


πŸ“ˆ Project Workflow

IAM User + MFA
        β”‚
        β–Ό
Secure Access
        β”‚
        β–Ό
Amazon VPC
        β”‚
 β”Œβ”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚                 β”‚
 β–Ό                 β–Ό
Public Subnet   Private Subnet
 β”‚                 β”‚
 β–Ό                 β–Ό
Bastion Host   Windows Application Server
                     β”‚
             CloudWatch Agent
                     β”‚
                     β–Ό
             Amazon CloudWatch
              β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β–Ό              β–Ό
      Dashboard         Alarm
                           β”‚
                           β–Ό
                     Amazon SNS
                           β”‚
                           β–Ό
                         Email

CloudTrail ─────────► Amazon S3

AWS Config ────────► Managed Rules

πŸ”’ Security Controls Implemented

  • IAM User Authentication
  • Multi-Factor Authentication (MFA)
  • Private Subnet Deployment
  • AWS Systems Manager Session Manager
  • CloudWatch Monitoring
  • CloudWatch Alarms
  • Amazon SNS Notifications
  • AWS CloudTrail Logging
  • AWS Config Compliance Monitoring
  • OpenVPN Access Server for secure remote access

πŸ“š Key Learnings

Through this project, I gained practical experience with:

  • AWS Identity and Access Management (IAM)
  • Multi-Factor Authentication (MFA)
  • Amazon VPC Architecture
  • Public & Private Subnets
  • AWS Systems Manager (SSM)
  • Amazon CloudWatch Agent
  • CloudWatch Dashboards
  • CloudWatch Alarms
  • Amazon SNS
  • AWS CloudTrail
  • Amazon S3
  • AWS Config
  • Cloud Security Best Practices
  • VPN-based secure access using OpenVPN Access Server

πŸš€ Future Improvements

Planned enhancements include:

  • AWS GuardDuty
  • Amazon Inspector
  • AWS Security Hub
  • AWS WAF
  • AWS Shield
  • Amazon EventBridge
  • AWS Lambda Auto Remediation

πŸ“‚ Repository Structure

aws-cloud-security-project/
β”‚
β”œβ”€β”€ README.md
β”‚
β”œβ”€β”€ architecture/
β”‚   β”œβ”€β”€ AWS-Cloud-Security-Architecture.drawio
β”‚   └── architecture-diagram.png
β”‚
β”œβ”€β”€ screenshots/
β”‚   β”œβ”€β”€ cloudwatch-dashboard.png
β”‚   β”œβ”€β”€ cloudwatch-alarm.png
β”‚   β”œβ”€β”€ sns-topic.png
β”‚   β”œβ”€β”€ cloudtrail.png
β”‚   β”œβ”€β”€ aws-config-rule.png
β”‚   └── architecture-overview.png
β”‚
└── docs/
    └── implementation-guide.md

⭐ Acknowledgements

This project was created as part of my hands-on learning journey in AWS Cloud Security to strengthen practical skills in secure infrastructure design, monitoring, logging, and compliance.

About

Secure AWS cloud infrastructure with monitoring, logging, compliance, and security best practices using Amazon VPC, EC2, CloudWatch, CloudTrail, AWS Config, SNS, and Systems Manager.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors