rGus is an advanced Host Intrusion Detection System (HIDS) that uses machine learning to detect intrusions through system call monitoring. It features a modern CLI interface and can automatically respond to detected intrusions by locking down the system and capturing images of potential intruders.
- Real-time system call monitoring
- Ensemble machine learning models for intrusion detection
- Automatic system lockdown on intrusion detection
- Intruder image capture
- Modern CLI interface with real-time monitoring
- System resource usage tracking
- Detailed logging and history
- Docker containerization support
- Clone the repository:
git clone https://github.com/yourusername/rGus.git
cd rGus- Install dependencies:
pip install -r requirements.txt- Make the scripts executable:
chmod +x rgus.py ids_core.py cli.py- Clone the repository:
git clone https://github.com/yourusername/rGus.git
cd rGus- Build and start the Docker container:
docker-compose up -d- To stop the container:
docker-compose downrGus provides a command-line interface with the following commands:
python cli.py startpython cli.py stoppython cli.py statuspython cli.py historypython cli.py monitordocker-compose up -ddocker-compose downdocker exec -it rgus-ids python cli.py statusdocker exec -it rgus-ids python cli.py historydocker exec -it rgus-ids python cli.py monitorThe system uses models from the models directory. Make sure your trained models are placed in this directory with the .joblib extension.
- System logs:
logs/rgus.log - Core IDS logs:
logs/ids_core.log - Incident logs:
logs/incidents.log - Intruder images:
intruder_images/directory
- The system requires root privileges to monitor system calls and perform lockdown actions
- Make sure to properly secure the intruder images and logs
- Regularly update the machine learning models for better detection accuracy
- When using Docker, ensure proper security configurations are in place
- The container requires access to the host's webcam for intruder image capture
- System call monitoring requires elevated privileges (SYS_ADMIN capability)
- Volumes are mounted to persist data between container restarts
- The container runs as a non-root user for security
MIT License
Contributions are welcome! Please feel free to submit a Pull Request.