joaoh82/rustunnel
Self-hosted, secure tunnel server in Rust. Expose local HTTP/HTTPS/TCP/UDP services to the public internet via TLS-encrypted WebSocket. Open-source, pay-as-you-go managed option, MCP server for AI agents.
What it solves
rustunnel provides a secure way to expose local services (like a web server or database) to the public internet without needing to configure complex firewall rules or public IP addresses. It eliminates the need to pay for idle server time by offering a pay-as-you-go model for managed hosting or the option to self-host entirely.
How it works
The system consists of a server and a client. The client connects to a public rustunnel server via an encrypted WebSocket connection (TLS). The server then proxies incoming public traffic (HTTP, TCP, or UDP) through this secure tunnel to the local service running on the developer's machine. It supports HTTP/HTTPS with TLS termination, TCP/UDP proxying, and P2P tunnels for direct client-to-client connectivity.
Who it’s for
It is designed for developers who need to quickly share local work, test webhooks, or expose local databases and game servers to the public internet securely and with high performance.
Highlights
- Multi-protocol support: Handles HTTP, TCP, UDP, and P2P tunnels.
- High performance: Built with Rust for speed and efficiency.
- Flexible deployment: Available as a managed service or as a self-hosted open-source project.
- AI Agent Integration: Includes an MCP server for one-click setup with AI agents like Cursor, Claude Code, and Windsurf.
- Observability: Features a live dashboard, Prometheus metrics, and audit logging.
Related
- Project
- Project
- Project
- Project
- Project