This project simulates a secure enterprise network that supports Bring Your Own Device (BYOD) using layered security modules like MDM, NAC, ZTNA, and Firewalls. It ensures only compliant devices get access while tracking the impact of each layer on performance metrics such as latency and throughput.
- MDM (Mobile Device Management): Enforces OS/encryption/jailbreak policies and adjusts device performance.
- NAC (Network Access Control): Authenticates users, validates IP/port access, and assigns network segments.
- ZTNA (Zero Trust Network Access): Continuously verifies device trust and revokes access if suspicious.
- Firewall Filtering: Allows TCP traffic, blocks UDP, and simulates dynamic packet inspection.
- Traffic Simulation: Uses Scapy to simulate packets from active devices.
.
├── data_generation.py # Generates realistic device data using Faker
├── mdm_module.py # Performs MDM compliance checks
├── nac_module.py # Enforces network access based on policies
├── ztna_module.py # Applies ZTNA logic for trust-based access
├── firewall_module.py # Simulates network firewall behavior
├── requirements.txt # Dependencies
└── .gitignore # File exclusions
pip install -r requirements.txtpython data_generation.py
python mdm_module.py
python nac_module.py
python ztna_module.py
python firewall_module.pyEach script reads the output from the previous step and produces updated CSV files.
BYOD_Device_Data.csv→ Raw device dataMDM_Compliant_Data.csv→ Devices passing MDM checksNAC_Compliant_Data.csv→ Devices with network accessZTNA_Device_Data.csv→ Trust-evaluated devicesFirewall_Data.csv→ Final performance post-firewallFirewall_Rules_TCP_Only.csv→ Generated rule setActive_Device_Traffic_Details.csv→ Simulated traffic
- Sowmya Reddy Likkidi
This project is intended for academic and educational use only. Contact the authors for permission to use in other contexts.