Installation
Install Octoporty using the quick install scripts:
# Install Gateway (on cloud server)
curl -fsSL https://octoporty.com/install-gateway.sh | bash
# Install Agent (on private network server)
curl -fsSL https://octoporty.com/install-agent.sh | bash
Updating
Update to the latest version:
# Update Gateway
curl -fsSL https://octoporty.com/update-gateway.sh | bash
# Update Agent
curl -fsSL https://octoporty.com/update-agent.sh | bash
0.9.55
2026-02-12
- Fix automatic route cleanup that could accidentally drop active tunnel connections. Caddy route removal on tunnel unavailable is now opt-in via
Gateway__RemoveRoutesOnTunnelUnavailable(default:false) to prevent Caddy reloads from dropping long-lived connections when the Agent tunnels through Caddy
0.9.54
2026-02-12
- Show a pending update modal when the Gateway is updating, with automatic version polling until the update completes
0.9.53
2026-02-12
- Import/Export - Export and import port mapping definitions as JSON for easy backup, migration, or sharing between Agents
- Add SQLite database backup download for complete data protection
0.9.52
2026-02-12
- Fix request forwarding to correctly translate between the web UI and the tunnel protocol
- Improve forwarding error messages with a TLS mismatch hint when a mapping is set to HTTPS but the upstream speaks plain HTTP
- Fix internal HTTP client to not follow redirects, correctly passing them through to the external client
0.9.51
2026-02-12
- Agent Logs - New page in the Agent web UI for viewing Agent process logs in real time. A background service tails the Serilog rolling file and streams new entries via SignalR, while historical logs are available through a paginated API with infinite scroll. Includes level filtering (Debug/Info/Warning/Error), auto-scroll, and a clear button. Logs are buffered in memory (up to 10,000 entries) and the log directory is validated at startup with clear error messages if not writable
0.9.50
2026-02-11
- Gateway Log Detail - New page for inspecting individual Gateway log entries with search, level filtering (Debug/Info/Warning/Error), and full message payload display
- Enhanced Gateway error logging for 404 and 502 responses now includes request method, path, host, mapping info, user agent, remote IP, and a response body preview for easier troubleshooting
0.9.49
2026-02-11
- Add gateway update status modal that shows real-time progress when the Gateway is updating, with auto-refresh until the new version is confirmed
0.9.48
2026-02-11
- WebSocket Proxy Support - Tunneled services that use WebSockets now work end-to-end through Octoporty. The Gateway detects WebSocket upgrade requests and relays frames bidirectionally through the tunnel to the internal service. Real-time applications like chat, live dashboards, and development servers with hot reload are fully supported without additional configuration
- Capability negotiation between Gateway and Agent ensures graceful fallback when one side doesn’t support WebSocket proxy (mixed-version deployments return a clear 501 error)
0.9.47
2026-02-06
- Add mapping names to tunnel requests for easier identification in logs
- Improve request logging with host, mapping name, and domain details
- Auto-Updater Installer - New
install-updater.shscript to add the Gateway auto-updater to existing installations. Runcurl -fsSL https://octoporty.com/install-updater.sh | sudo bashon your Gateway server
0.9.46
2026-02-03
- Request Inspector - New debugging tool to compare Gateway vs Agent responses for any URL. Shows status codes, headers, response bodies, and timing differences to help diagnose tunnel routing issues
0.9.45
2026-02-03
- Caddy Configuration Viewer - New page in the Agent web UI to inspect the current Caddy reverse proxy configuration from the Gateway. Access it from the Gateway page or navigate to
/gateway/caddy-config. Useful for debugging routing rules and verifying that port mappings are correctly configured in the reverse proxy - Internal improvements
0.9.44
2026-01-31
- Simplify login to password-only authentication using industry-standard SHA-512 crypt hashing
0.9.43
2026-01-31
- Fix Gateway landing page to properly handle all URL paths
0.9.42
2026-01-30
- Simplified Gateway Configuration - New
Agent__GatewayFqdnoption lets you configure the Agent with just the Gateway domain (e.g.,gateway.example.com) instead of the full WebSocket URL. The WebSocket URL is automatically derived aswss://{GatewayFqdn}/tunnel. The FQDN is also sent to the Gateway during config sync, enabling automatic landing page routing without manual Gateway FQDN configuration.
0.9.41
2026-01-30
- Customizable Landing Page - New Settings page in the Agent UI to customize the Gateway landing page HTML shown when no mapping exists for a domain. Features include:
- Live HTML preview while editing
- MD5 hash-based change detection for efficient syncing
- Reset to default Octoporty branding
- Automatic sync to Gateway when changes are saved
0.9.40
2026-01-29
- Make screenshots clickable with hover effects on the website
0.9.39
2026-01-29
- Update branding colors from red to blue
- Refresh screenshots throughout the application
0.9.38
2026-01-29
- Add error boundary for improved crash recovery in the web UI
- Improve Gateway log error handling
0.9.37
2026-01-29
- Simplify login page button text
0.9.36
2026-01-29
- Add logo branding across the application
- Gateway Logs - View real-time Gateway logs in the Agent web UI. Logs are streamed via the tunnel and include historical retrieval with infinite scroll (up to 10,000 entries)
- Improve mappings page responsiveness and layout
- Fix connection status display for all states (Authenticating, Syncing)
0.9.35
2026-01-29
- Remove light theme, keep dark mode only
- Internal improvements
0.9.34
2026-01-29
- Display gateway uptime in the dashboard
- Simplify port mapping by removing external port configuration
- Fix SignalR infinite reconnection loop in web UI
0.9.33
2026-01-29
- Improve Docker container compatibility for platforms requiring custom user IDs
0.9.32
2026-01-29
- Version bump for release consistency
0.9.31
2026-01-29
- Improve reliability of container user ID detection in startup banner
0.9.30
2026-01-29
- Display container user and group IDs in startup banner for easier debugging of permission issues
0.9.29
2026-01-29
- Improved Permission Handling - The
/app/datadirectory is no longer pre-created in the Docker image. It’s now created at runtime, inheriting the container’s UID. Error messages now provide clearer platform-specific guidance:- TrueNAS SCALE: Set Security Context User ID to 568 (apps user)
- Docker Compose: Use
user: "1000:1000"orchownthe bind mount
0.9.28
2026-01-29
- Data Directory Validation - The Agent now validates data directory permissions at startup with clear, actionable error messages. Includes platform-specific guidance for Docker bind mounts, TrueNAS SCALE, and other NAS platforms.
0.9.27
2026-01-29
- Fix data directory ownership in Docker containers for correct database permissions
0.9.26
2026-01-29
- Database Migration to SQLite - Replaced SQL Server with SQLite for simpler setup and lower resource usage. No external database required. Data is stored in
/app/data/octoporty.dbwith automatic volume mounting in Docker deployments. Existing SQL Server installations should migrate data before upgrading.
0.9.25
2026-01-29
- Version bump for release consistency
0.9.24
2026-01-29
- Auto-apply database migrations on Agent startup - fresh Docker installations now create the database automatically without manual migration steps
0.9.23
2026-01-28
- Update install and update script versions
0.9.22
2026-01-28
- Version bump for release consistency
0.9.21
2026-01-28
- Add support for ARM64 architecture (e.g., Raspberry Pi, Apple Silicon)
0.9.20
2026-01-28
- Internal improvements
0.9.19
2026-01-28
- Fix container file permissions for non-root deployments
0.9.18
2026-01-28
- Fix file watcher issues in read-only Docker containers
0.9.17
2026-01-28
- Improve version display in Docker containers
0.9.16
2026-01-28
- Improve version display in Docker containers
0.9.15
2026-01-28
- Add startup banner showing configuration details when services start
0.9.14
2026-01-28
- Fix container compatibility for read-only environments
0.9.13
2026-01-28
- Internal improvements
0.9.12
2026-01-28
- Update documentation for NAS platforms (QNAP and Unraid)
0.9.11
2026-01-28
- Add new build system configuration options for improved developer workflow
0.9.0
2026-01-28
Initial release of Octoporty - a self-hosted reverse proxy tunneling solution.
Core Features:
- WebSocket Tunnel - Efficient binary protocol with MessagePack serialization and Lz4 compression
- Automatic HTTPS - Caddy integration provides automatic TLS certificates via Let’s Encrypt
- Web Management UI - React-based dashboard for managing port mappings
- Multi-Domain Support - Route multiple external domains to different internal services
- Automatic Reconnection - Agent maintains persistent connection with exponential backoff
- Gateway Self-Update - Update Gateway remotely from the Agent UI when version mismatch is detected
Security:
- Pre-shared API key authentication between Agent and Gateway
- JWT authentication for web UI with HttpOnly cookies
- Rate limiting with exponential backoff lockout
- Constant-time comparison for security-sensitive operations
Infrastructure:
- Docker deployment with multi-arch images (amd64/arm64)
- GitHub Container Registry for image distribution
- Caddy reverse proxy integration
- SQLite database for Agent configuration storage