Remote administration
Mobile and Remote Access
1. VPN Method (Recommended)
- Set up a VPN server on your home router or Raspberry Pi
- Connect to your home network via VPN to access the Pi-hole admin panel
- Recommended VPN solutions: WireGuard, OpenVPN, or ZeroTier
2. Cloudflare Tunnel Method (Secure & User-Friendly)
Installation
# Download and install Cloudflare Tunnel
curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm -o cloudflared
chmod +x cloudflared
sudo mv cloudflared /usr/local/bin
Configuration
# Authenticate and set up tunnel
cloudflared login
cloudflared tunnel create pihole
cloudflared tunnel route dns pihole yourdomain.com
Create Service Configuration
Create /etc/cloudflared/config.yml with:
tunnel: pihole
credentials-file: /root/.cloudflared/pihole.json
ingress:
- hostname: pihole.yourdomain.com
service: http://localhost:80
- service: http_status:404
Start Service
sudo systemctl enable cloudflared
sudo systemctl start cloudflared
3. SSH Tunneling Method (Manual)
# Create SSH tunnel from your remote machine
ssh -L 8080:localhost:80 pi@your-public-ip
Then access the admin interface at http://localhost:8080/admin
Security Best Practices
Enable HTTPS
- Implement a reverse proxy (Nginx or Apache)
- Install Let's Encrypt SSL certificate
Strengthen SSH Security
- Use a non-standard port
- Implement SSH key authentication
- Disable password-based login
Configure Firewall
- Set up IP-based access restrictions
- Implement appropriate filtering rules
Each method provides secure remote access to Pi-hole while maintaining network security. Choose the approach that best matches your technical expertise and security requirements.
Something here not working for you? Ask in the community — other makers and the Little Bird team read it.