| Crates.io | rustwall |
| lib.rs | rustwall |
| version | 0.1.1 |
| created_at | 2025-05-30 20:30:25.383661+00 |
| updated_at | 2025-05-31 17:27:05.105616+00 |
| description | Advanced Rust-based firewall and security system with DDoS protection, CAPTCHA verification, and specialized Tor network security features |
| homepage | https://github.com/Elevated-Standards/RustWall |
| repository | https://github.com/Elevated-Standards/RustWall |
| max_upload_size | |
| id | 1695640 |
| size | 216,941 |
RustWall is a comprehensive Rust-based security solution that provides advanced site protection capabilities, DDoS protection, CAPTCHA verification, and specialized security features for Tor networks and privacy-focused applications. Built using Axum and Tera templating, it offers a robust, modular security layer for your applications.
RustWall is built with a modular architecture consisting of specialized security modules:
src/ddos/) - Rate limiting, IP blocking, and traffic analysissrc/captcha/) - Analog clock challenges and session managementsrc/tor/) - Specialized .onion service protection and circuit analysissrc/anonymity/) - Traffic obfuscation, timing protection, and anti-correlationsrc/content-security/) - JS sanitization, metadata removal, font protectionsrc/network/) - Tor integration, multi-onion management, steganographysrc/operational/) - Emergency shutdown, canary systems, health monitoring✅ Analog clock image generation
✅ Secure session management
✅ Configurable difficulty levels
✅ API endpoints for integration
✅ Web interface and widget support
Clone the repository:
git clone https://github.com/austinsonger/rustwall.git
cd rustwall
Build and run:
cargo run
By default, the server will start on http://localhost:8080.
Edit the Config struct in src/config.rs to adjust settings such as:
Visit http://localhost:8080/captcha to see the analog clock CAPTCHA in action.
POST /api/captcha/new – Generate a new CAPTCHA challengePOST /api/captcha/verify – Verify a user's responseGET /api/security/status – Get system security statusPOST /api/security/emergency-shutdown – Trigger emergency shutdownGET /api/security/canary – Get warrant canary statusExample requests:
# Generate new CAPTCHA
curl -X POST http://localhost:8080/api/captcha/new
# Check security status
curl -X GET http://localhost:8080/api/security/status
# Get warrant canary
curl -X GET http://localhost:8080/api/security/canary
Each security module can be enabled/disabled independently:
use rustwall::{
TorSecurityManager,
AnonymityManager,
ContentSecurityManager,
OperationalManager
};
// Initialize security managers
let tor_security = TorSecurityManager::new()?;
let anonymity = AnonymityManager::new()?;
let content_security = ContentSecurityManager::new()?;
let operational = OperationalManager::new()?;
src/
├── lib.rs # Main library entry point
├── anonymity/ # Privacy and anonymity features
│ ├── traffic_obfuscation.rs
│ ├── timing_protection.rs
│ ├── connection_mixing.rs
│ ├── metadata_scrubbing.rs
│ └── anti_correlation.rs
├── captcha/ # CAPTCHA system
│ ├── captcha.rs
│ ├── session.rs
│ └── main.rs
├── content-security/ # Content security features
│ ├── js_sanitization.rs
│ ├── image_metadata.rs
│ ├── referrer_policy.rs
│ └── font_protection.rs
├── ddos/ # DDoS protection
│ ├── rate_limiting.rs
│ ├── ip_blocking.rs
│ └── traffic_analysis.rs
├── network/ # Advanced networking
│ ├── tor_config.rs
│ ├── multi_onion.rs
│ ├── bridge_support.rs
│ ├── circuit_control.rs
│ ├── load_balancing.rs
│ ├── decoy_traffic.rs
│ ├── multi_hop_proxy.rs
│ └── steganography.rs
├── operational/ # Operational security
│ ├── emergency_shutdown.rs
│ ├── canary_system.rs
│ ├── health_monitoring.rs
│ ├── incident_response.rs
│ ├── backup_management.rs
│ ├── audit_logging.rs
│ └── config_management.rs
└── tor/ # Tor network security
├── onion_service.rs
├── ddos_mitigation.rs
├── circuit_analysis.rs
├── exit_node_filter.rs
└── rendezvous_security.rs
Contributions are welcome! Please open issues or submit pull requests for new features, bug fixes, or documentation improvements.
This project is licensed under the MIT License. See LICENSE for details.