Site Guard is a comprehensive security and monitoring solution designed to safeguard web applications from vulnerabilities, unauthorized access, and malicious traffic. It acts as a protective layer, ensuring your digital assets remain secure and performant.
- 🛡️ Threat Detection: Automated scanning for common vulnerabilities like SQL injection and XSS.
- 🚦 Traffic Control: Integrated rate-limiting and IP filtering to prevent DDoS attacks.
- 🔍 File Integrity Monitoring: Real-time tracking of file system changes to detect unauthorized modifications.
- 📊 Security Dashboard: A clean UI to visualize logs, blocked requests, and system health.
- 🔔 Instant Notifications: Webhook support for Slack, Discord, or Email alerts.
Site Guard is built with a modular architecture to ensure low latency and high scalability:
- Core Engine: Written in [Your Language, e.g., Node.js/Python/Go].
- Data Store: Utilizes [e.g., Redis/PostgreSQL] for rapid session tracking.
- Middleware: Plugs directly into your existing server setup with minimal overhead.
- [e.g., Node.js v18+] or [e.g., Python 3.10+]
- [e.g., Docker] (Optional but recommended)
- Clone the repository
git clone https://github.com/[your-username]/site-guard-project.git
cd site-guard-project
- Install Dependencies
# If using NPM
npm install
# If using Python
pip install -r requirements.txt
- Environment Setup Copy the example environment file and fill in your details:
cp .env.example .env
- Start the Service
npm run start:dev # or python main.py
Site Guard is highly customizable via the .env file or config.yaml:
| Variable | Description | Default |
|---|---|---|
PORT |
The port the service runs on | 3000 |
STRICT_MODE |
Enable aggressive blocking | false |
ALERT_WEBHOOK |
URL for security notifications | null |
MAX_REQUESTS |
Rate limit threshold per minute | 100 |
GET /api/v1/status
Returns the current health and active protection layers.
POST /api/v1/blacklist
Content-Type: application/json
{
"ip": "192.168.1.1",
"reason": "Malicious activity"
}
We love contributions! To keep things organized:
- Fork the repository.
- Create a Branch (
git checkout -b feature/AmazingFeature). - Commit your changes (
git commit -m 'Add some AmazingFeature'). - Push to the branch (
git push origin feature/AmazingFeature). - Open a Pull Request.