# OctoPrint Tailscale Funnel Plugin This plugin makes your OctoPrint instance accessible from anywhere via Tailscale Funnel, without needing to configure port forwarding, dynamic DNS, or complex firewall settings. ## Features * Enable/disable Tailscale Funnel access directly from OctoPrint's settings * Monitor the current Funnel connection status * Display the public URL for accessing OctoPrint remotely * Configure the port to expose via Funnel ## Requirements * OctoPrint 1.3.0 or higher * Tailscale installed and configured on the system * Python 3.7 or higher ## Installation 1. Install Tailscale on your system and ensure it's running (see https://tailscale.com/download/linux or run `curl -fsSL https://tailscale.com/install.sh | sh`) 2. Start Tailscale on your system (run `sudo tailscale up`) 3. Authenticate using the Tailscale URL (e.g. https://login.tailscale.com/a/) 4. Install the plugin through OctoPrint's plugin manager (go to Settings -> Plugins -> Install and search for "Tailscale Funnel") 5. Configure the plugin settings in OctoPrint's settings panel 6. Enable Funnel through the plugin interface ## Building from Source If you want to build the plugin from source, please refer to the [BUILDING.md](octoprint_tailscale_funnel/BUILDING.md) file for detailed instructions. ## Configuration The plugin adds a new section to OctoPrint's settings panel with the following options: * **Port**: The port to expose via Funnel (default: 80) * **Confirm Enable**: Require confirmation before enabling Funnel (default: True) ## Security Considerations Enabling Funnel makes your OctoPrint instance accessible from the public internet. Only enable it when needed and disable it when finished. The plugin will show a confirmation dialog before enabling Funnel if the "Confirm Enable" option is checked. ## API Endpoints The plugin exposes the following API endpoints: * `GET /api/plugin/tailscale_funnel/status` - Get current Funnel status * `POST /api/plugin/tailscale_funnel/enable` - Enable Tailscale Funnel * `POST /api/plugin/tailscale_funnel/disable` - Disable Tailscale Funnel ## License AGPLv3