Skip to content

TeinSchoemaker/Azure-Cloud-Lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Azure Cloud Lab: Secure Linux VM, Monitoring & Automation

Azure Linux Nginx Monitoring Automation

A hands-on cloud engineering project where I designed, deployed, secured, monitored, and automated a Linux-based infrastructure in Azure.


Project Highlights

  • Deployed Linux VM in Azure
  • Secured infrastructure using NSG rules (least privilege)
  • Hosted web server (Nginx)
  • Enabled monitoring with Azure Monitor & Log Analytics
  • Automated system health checks using Bash + cron

Screenshots

Azure VM Overview

VM Overview

Network Security Group Rules

NSG Rules

Azure Monitor Metrics

Monitoring

Nginx Running in Browser

Nginx

What I Built

Cloud Infrastructure

  • Created Azure resource group and deployed Linux VM
  • Configured Virtual Network and subnet
  • Managed networking components (NIC, public IP)

Security (NSG)

  • Restricted SSH access to my own IP
  • Opened only required ports (HTTP when needed)
  • Applied least-privilege principles

Web Server

  • Installed and configured Nginx
  • Exposed service securely via NSG
  • Verified connectivity through public IP

Monitoring & Logging

  • Configured Azure Monitor and Log Analytics
  • Collected performance metrics and logs
  • Queried logs using KQL

Automation

  • Built Bash script to log system health
  • Scheduled execution using cron
  • Automated recurring admin tasks

Key Skills Demonstrated

  • Azure fundamentals & infrastructure
  • Linux system administration
  • Network security (NSG)
  • Monitoring & observability
  • Bash scripting & automation
  • Cloud security mindset

Example Automation Script

#!/bin/bash

echo "==== $(date) ====" >> /home/azureuser/system_health.log
echo "Hostname: $(hostname)" >> /home/azureuser/system_health.log

echo "CPU Load:" >> /home/azureuser/system_health.log
uptime >> /home/azureuser/system_health.log

echo "Disk usage:" >> /home/azureuser/system_health.log
df -h >> /home/azureuser/system_health.log

echo "Memory usage:" >> /home/azureuser/system_health.log
free -h >> /home/azureuser/system_health.log

Automation Result

Example Log Query (KQL)

Heartbeat
| take 10

What I Learned

This project helped me understand how cloud systems are:

  • deployed and structured
  • secured using network rules
  • monitored using centralized logging
  • maintained through automation

It also strengthened the connection between my cybersecurity background and cloud engineering.

Future Improvements

  • Terraform (Infrastructure as Code)
  • Multi-VM architecture
  • Private networking (no public IP)
  • CI/CD pipeline integration
  • Docker container deployment

About Me

I am building my career at the intersection of Cloud Engineering and Cybersecurity, with a background in software development and hands-on experience in security monitoring and automation.

LinkedIn: tein-schoemaker

About

A hands-on cloud engineering project where I designed, deployed, secured, monitored, and automated a Linux-based infrastructure in Azure.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors