mirror of
https://github.com/salam-ai-learning3/RayhunterWalledGarden.git
synced 2026-07-31 23:47:28 -07:00
A self-contained module add-on for Rayhunter that implements a "walled garden" WiFi hotspot configuration
- Shell 88.2%
- HTML 11.8%
| config | ||
| docs | ||
| scripts | ||
| install_walled_garden.sh | ||
| MODULE_SUMMARY.md | ||
| README.md | ||
| reload_all_services.sh | ||
RayhunterWalledGarden Module
A self-contained module add-on for Rayhunter that implements a "walled garden" WiFi hotspot configuration.
What is a Walled Garden?
A walled garden is a network configuration where:
- Clients connect to WiFi normally
- DNS redirects all traffic to the local hotspot (192.168.1.1)
- A sign-in page appears at http://192.168.1.1
- Users click a link to access the Rayhunter webapp at http://192.168.1.1:8080/index.html
- All internet traffic goes over the client's cellular data connection
- Local services on the hotspot remain accessible
Features
- DNS Manipulation: Uses dnsmasq to redirect all DNS queries to local hotspot
- Web Server Setup: Configures Busybox httpd to serve sign-in and webapp pages
- Cross-Platform Support: Works with Android, iOS, Windows, and macOS clients
- No Client Configuration: Fully server-side solution requiring no client changes
- Cellular Fallback: Preserves client cellular data for internet access
Requirements
- Orbic RC400L mobile hotspot (Linux ARMhf)
- ADB access with device ID 48600131
- rootshell privileges on the device
- Rayhunter daemon already installed and configured
Installation
-
Deploy the module:
./install_walled_garden.sh -
Verify installation:
./scripts/test_walled_garden.sh
Configuration
Network Settings
- Hotspot IP: 192.168.1.1
- DHCP Range: 192.168.1.100 - 192.168.1.200
- Webapp Port: 8080
- Sign-in Port: 80
DNS Configuration
- All DNS queries redirected to 192.168.1.1
- Google DNS (8.8.8.8, 8.8.4.4) available for cellular fallback
- Local domain resolution for hotspot services
File Structure
RayhunterWalledGarden/
├── README.md # This file
├── MODULE_SUMMARY.md # Complete module overview
├── install_walled_garden.sh # Main installer script
├── reload_all_services.sh # Service management utility
├── config/ # Configuration templates
│ ├── dnsmasq.conf # DNS configuration
│ └── signin.html # Sign-in page template
├── scripts/ # Utility and testing scripts
│ ├── test_walled_garden.sh # Test the installation
│ └── status.sh # Check status
└── docs/ # Documentation
└── DEPLOYMENT.md # Deployment guide
Usage
Basic Installation
# Deploy the complete walled garden
./install_walled_garden.sh
Testing
# Test the walled garden functionality
./scripts/test_walled_garden.sh
Status Check
# Check current status
./scripts/status.sh
Service Management
# Restart all services
./reload_all_services.sh
Integration with Rayhunter
This module integrates with Rayhunter by:
- Configuring DNS to redirect clients to local services
- Setting up web servers to serve Rayhunter webapp
- Fixing hardcoded URLs in existing Rayhunter files
- Managing log directories for proper data flow
- Providing sign-in flow from WiFi connection to webapp
Troubleshooting
Common Issues
-
Port 8080 not responding
- Check if Busybox httpd is running
- Verify webapp directory exists
- Check firewall rules
-
DNS not redirecting
- Verify dnsmasq configuration
- Check if dnsmasq service is running
- Confirm interface configuration
-
Hardcoded URLs still redirecting
- Run the main installer again
- Check for new hardcoded references
- Verify file permissions
Debug Commands
# Check service status
./scripts/status.sh
# View logs
adb -s 48600131 shell "rootshell -c 'tail -f /var/log/dnsmasq.log'"
# Test web server
curl http://192.168.1.1:8080/
# Check DNS resolution
nslookup google.com 192.168.1.1
Development
Adding New Features
- Modify configuration templates in
config/ - Update installation script to handle new configurations
- Add test cases to
scripts/test_walled_garden.sh - Update documentation in
docs/
Testing Changes
- Test on device using
./scripts/test_walled_garden.sh - Verify integration with Rayhunter daemon
- Check cross-platform compatibility
- Validate DNS and web server behavior
License
This module is part of the Rayhunter Enhanced project and follows the same licensing terms.
Support
For issues and questions:
- Check the troubleshooting guide in
docs/TROUBLESHOOTING.md - Review the deployment guide in
docs/DEPLOYMENT.md - Check Rayhunter main project documentation
- Open an issue in the project repository