{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/9"},{"label":"Proxy Servers","url":"https://skillfed.io/packages/category/internet-proxy-servers"}],"enrichment":{"capability":"SniTun is an SNI proxy with TCP multiplexer that encrypts traffic end-to-end using Fernet tokens and AES ciphers, forwarding external TLS connections through an encrypted multiplexed channel to local endpoints.","skillfed_tags":["encryption","networking","asyncio"],"use_cases":["Secure remote access to local services by proxying TLS connections through an encrypted multiplexed tunnel with token-based authentication.","Building a home automation or IoT gateway that forwards external device connections to internal services without exposing them directly.","Implementing a VPN-like proxy layer where multiple clients share a single encrypted multiplexer session with per-connection isolation.","Protecting against man-in-the-middle attacks on untrusted networks by encrypting both the multiplexer protocol and the forwarded TLS payload.","Multi-tenant or multi-device scenarios where clients authenticate via Fernet tokens and the server routes traffic based on SNI hostname matching."],"what_it_does":"SniTun is a proxy and multiplexer library that secures TCP connections by encrypting them end-to-end using Fernet tokens for authentication and AES (CBC, GCM, or GCM-SIV) for payload encryption. It intercepts external TLS/SNI connections, validates clients via a challenge-response handshake, and forwards traffic through an encrypted multiplexed channel to local endpoints. The library handles protocol versioning, flow control (pause/resume), and connection lifecycle management (new, data, close, ping messages) within the multiplexer frame format.\n\nThe package is designed for scenarios where you need to proxy TLS connections through an untrusted network while maintaining encryption and authentication. It uses aiohttp for async HTTP operations and cryptography for all encryption primitives. Configuration is flexible via environment variables for queue sizes and watermarks. The implementation supports both stateful (AES-GCM) and stateless-nonce (AES-GCM-SIV) modes, with the latter providing nonce-misuse resistance at the cost of requiring OpenSSL 3.0+.","worth_installing":"Yes, if you need an encrypted SNI proxy with multiplexing and are comfortable with GPL v3 licensing. The package is production-stable, actively maintained, has low install friction, and no known vulnerabilities. Install only if your project can comply with copyleft terms and your deployment targets Python 3.13+."},"id":"snitun","links":{"html":"https://skillfed.io/packages/snitun","md":"https://skillfed.io/packages/snitun.md","pypi":"https://pypi.org/project/snitun/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-06-29","license_spdx":null,"license_treatment":"copyleft","name":"snitun","python_support":"supports_current","summary":"SNI proxy with TCP multiplexer"},"popularity":{"monthly_downloads":667606,"position":5419,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.47.0"}
