A comprehensive hands-on learning project for understanding Azure security monitoring, threat detection, and incident response using Microsoft Sentinel.
┌─────────────────┐ ┌─────────────────┐
│ Linux VM │ │ Windows VM │
│ (Ubuntu) │ │ (server 2019) │
└────────┬────────┘ └────────┬────────┘
│ │
└────────────┬───────────┴─────────────┬─────────┘
│ Log Analytics Agent
▼
┌────────────────────────┐
│ Log Analytics Workspace│ (Log Storage & Analysis)
│ (LAW) │
└────────────┬───────────┘
│
▼
┌────────────────────────┐
│ Microsoft Sentinel │ (SIEM/SOC Engine)
│ (Threat Detection) │
└────────────┬───────────┘
│
┌────────────┴──────────────┐
│ │
▼ ▼
┌─────────────┐ ┌──────────────┐
│ Alerts │ │ Incidents │
│ │ │ │
└─────────────┘ └──────────────┘
│ │
└───────────┬───────────────┘
▼
┌────────────────────────┐
│ SOC Dashboard │
│ (Workbooks) │
└────────────────────────┘
- VMs Generate Logs → Security events, authentication attempts, system activities
- Log Analytics Collects → Agents on VMs send logs to LAW workspace
- Sentinel Analyzes → Applies analytics rules to detect threats
- Alerts Generated → Suspicious activities trigger alerts
- Incidents Created → Related alerts grouped into incidents
- Dashboard Visualizes → Workbooks show security posture
| Component | Role | Function |
|---|---|---|
| Log Analytics Workspace | Log Storage | Centralized repository for all logs |
| Microsoft Sentinel | SIEM Engine | Threat detection & correlation |
| Linux VM (Ubuntu) | Data Collector | Generates Syslog events |
| Windows VM (Server 2019) | Data Collector | Generates Security events |
| Analytics Rules | Threat Detection | Custom queries detect attacks |
| Incidents | Grouped Alerts | Related security events |
| Workbooks | Visualization | Dashboard & reporting |
cd cloudshell/
bash deploy.shThis creates:
- Resource Group
- Virtual Network + Subnet
- Linux VM (Ubuntu 20.04) + public IP
- Windows VM (Server 2019) + public IP
- Log Analytics Workspace
- Network Security Group (SSH/RDP enabled)
- Log Analytics agents on both VMs
Follow portal/sentinelconfig.md:
- Enable Microsoft Sentinel
- Connect data sources (Security Events, Syslog)
- Create analytics rules for threat detection
- Set up alerts & automation
Test attack detection by:
- Attempting failed logins (brute force)
- Running suspicious processes
- Making lateral movement attempts
- Checking generated incidents in Sentinel
-
Review generated incidents
-
Run KQL queries (see
cloudshell/queries.txt) -
Create custom workbooks
-
Understand attack patterns
VMs not sending logs:
- Verify agents are installed:
az vm extension list - Check agent health in Log Analytics
- Ensure NSG allows outbound 443 to Azure services
No data in Sentinel:
- Wait 10+ minutes after agent installation
- Check Log Analytics ingestion status
- Verify agent configuration with correct workspace ID