https://github.com/vsi12/intrusion-detection-system
This project deploys a mock Intrusion Detection System (IDS) on AWS using Terraform. It leverages ECS Fargate to run a containerized Flask app that analyzes network traffic data in NSL-KDD format. Users upload datasets, and the app classifies intrusions, storing results in S3. The system ensures scalable, automated, and secure network monitoring.
https://github.com/vsi12/intrusion-detection-system
aws devops docker python terraform
Last synced: about 2 months ago
JSON representation
This project deploys a mock Intrusion Detection System (IDS) on AWS using Terraform. It leverages ECS Fargate to run a containerized Flask app that analyzes network traffic data in NSL-KDD format. Users upload datasets, and the app classifies intrusions, storing results in S3. The system ensures scalable, automated, and secure network monitoring.
- Host: GitHub
- URL: https://github.com/vsi12/intrusion-detection-system
- Owner: VSI12
- License: mit
- Created: 2025-03-19T06:07:05.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-03T08:40:45.000Z (about 1 year ago)
- Last Synced: 2025-04-03T09:32:57.306Z (about 1 year ago)
- Topics: aws, devops, docker, python, terraform
- Language: HCL
- Homepage:
- Size: 445 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# README.md
## Project Overview
This project is a cloud-native,intrusion detection system built using AWS services. The system allows users to upload network logs, which are processed using machine learning models to detect anomalies and potential threats. The architecture leverages AWS Fargate for containerized workloads.
## Features
- **Next.js Frontend**: Serves the user interface and interacts with backend APIs.
- **Flask Backend**: Runs ML inference on uploaded network logs.
- **Secure AWS Deployment**: Hosted using ECS Fargate for both frontend and backend.
- **File Storage**: Uses ECS task storage (/tmp) within the container for processing files as well as S3 storage for persistent storage.
- **Scalable and Secure**: Designed with AWS best practices including IAM, WAF, and AWS Shield.
- **Infastructure as Code (IaC)**: Fully provisioned with Terraform.
## Architecture
- **Frontend**: Next.js app running on AWS Fargate behind an ALB.
- **Backend**: Flask application running on AWS fargate behind an ALB
- **Storage**: S3 for file uploads and result storage.
- **Networking**: Uses private subnets, VPC endpoints, and ALB.
## Setup & Installation
### Prerequisites
- AWS CLI configured
- Terraform installed
- Docker installed
- Node.js & Python installed
### Infrastructure deployment (Terraform)
-- Go into the terraform folder, the details steps to provision the AWS infrastructure are outlined there.
## Contribution Guidelines
- Fork the repository.
- Create a feature branch.
- Submit a pull request with clear documentation .
## License
MIT License