A self-contained module add-on for Rayhunter that implements a "walled garden" WiFi hotspot configuration
  • Shell 88.2%
  • HTML 11.8%
Find a file
2025-08-12 22:47:51 -04:00
config Initial commit: RayhunterWalledGarden module v1.0.0 2025-08-12 22:47:51 -04:00
docs Initial commit: RayhunterWalledGarden module v1.0.0 2025-08-12 22:47:51 -04:00
scripts Initial commit: RayhunterWalledGarden module v1.0.0 2025-08-12 22:47:51 -04:00
install_walled_garden.sh Initial commit: RayhunterWalledGarden module v1.0.0 2025-08-12 22:47:51 -04:00
MODULE_SUMMARY.md Initial commit: RayhunterWalledGarden module v1.0.0 2025-08-12 22:47:51 -04:00
README.md Initial commit: RayhunterWalledGarden module v1.0.0 2025-08-12 22:47:51 -04:00
reload_all_services.sh Initial commit: RayhunterWalledGarden module v1.0.0 2025-08-12 22:47:51 -04:00

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

  1. Deploy the module:

    ./install_walled_garden.sh
    
  2. 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:

  1. Configuring DNS to redirect clients to local services
  2. Setting up web servers to serve Rayhunter webapp
  3. Fixing hardcoded URLs in existing Rayhunter files
  4. Managing log directories for proper data flow
  5. Providing sign-in flow from WiFi connection to webapp

Troubleshooting

Common Issues

  1. Port 8080 not responding

    • Check if Busybox httpd is running
    • Verify webapp directory exists
    • Check firewall rules
  2. DNS not redirecting

    • Verify dnsmasq configuration
    • Check if dnsmasq service is running
    • Confirm interface configuration
  3. 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

  1. Modify configuration templates in config/
  2. Update installation script to handle new configurations
  3. Add test cases to scripts/test_walled_garden.sh
  4. Update documentation in docs/

Testing Changes

  1. Test on device using ./scripts/test_walled_garden.sh
  2. Verify integration with Rayhunter daemon
  3. Check cross-platform compatibility
  4. 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:

  1. Check the troubleshooting guide in docs/TROUBLESHOOTING.md
  2. Review the deployment guide in docs/DEPLOYMENT.md
  3. Check Rayhunter main project documentation
  4. Open an issue in the project repository