SSH sobre HTTPS
Executar SSH sobre HTTPS está emergindo como uma forma prática de contornar redes que bloqueiam a maioria das portas e protocolos de saída, mas ainda permitem tráfego web nas portas 80/443. Os comentaristas comparam abordagens como colocar SSH diretamente na porta 443, tunelar via HTTP CONNECT, WebSockets ou VPNs que imitam HTTPS, e usar ferramentas como sslh, chisel ou Cloudflare Tunnel, avaliando a facilidade de configuração versus a resistência à inspeção profunda de pacotes. A discussão também aborda preocupações mais amplas sobre ossificação de protocolos, em que middleboxes cada vez mais agressivos levam tudo a rodar sobre HTTPS, e os trade-offs de usabilidade e privacidade de métodos alternativos de autenticação como certificados TLS de cliente e passkeys.
SSH sobre HTTPS vs. apenas mudar portas
- Vários comentários observam que simplesmente executar SSH na porta 80/443 muitas vezes contorna firewalls básicos, e muitos fazem isso na prática.
- Outros enfatizam que redes modernas usam inspeção profunda de pacotes (DPI), então SSH em 80/443 é trivial de detectar pelo banner SSH e bloquear.
- O apelo de SSH-sobre-HTTPS é a resistência à DPI e o compartilhamento da porta 443 com tráfego web normal, em vez de dedicar um IP/porta ao SSH.
Políticas de firewall e “segurança”
- Muitas redes bloqueiam todas as portas de saída, exceto 80/443, às vezes também fazendo MITM de HTTPS com CAs personalizadas.
- As razões dadas são “boas práticas de segurança” genéricas, muitas vezes sem modelos de ameaça claros.
- Isso leva usuários a tunelar tudo sobre HTTPS (SSH, VPN, outros protocolos) para restaurar a funcionalidade completa da Internet.
Identidade do cliente e certificados de cliente HTTPS
- Alguns gostariam de identidade nativa estilo “HTTP sobre SSH” (baseada em chave pública) nos navegadores.
- Passkeys são vistos como de camada de aplicação e não equivalentes.
- Certificados de cliente HTTPS são levantados como candidato, mas têm problemas:
- UX ruim: popups frequentes, troca de conta desajeitada e erros opacos da camada TLS.
- Risco de fingerprinting: a mera presença de certificados pode ser abusada para rastreamento.
- Peculiaridades de plataforma: restrições do chaveiro do macOS, instalação de CA em nível de sistema, limites de certificados de 1 ano.
Ferramentas e variantes de tunelamento
- Muitas ferramentas e padrões existentes são mencionados:
- Demultiplexar SSH/HTTPS na mesma porta: sslh, httpssh, HAProxy com SNI/ALPN ou inspeção heurística.
- Ferramentas de HTTP CONNECT / túnel HTTP: corkscrew, httptunnel; SSH sobre WebSockets via patches personalizados de socat ou websocat.
- Soluções semelhantes a VPN sobre HTTPS/TLS: SSL VPNs (por exemplo, AnyConnect/OpenConnect), SSTP, WireGuard em portas “permitidas”, Cloudflare Tunnel, Tailscale, chisel, Ligolo-ng.
- Shells baseadas em navegador: shellinabox para ambientes em que clientes SSH não estão disponíveis.
HTTPS como substrato universal
- Vários comentários veem uma tendência de executar protocolos arbitrários sobre HTTPS (e QUIC/HTTP3) devido à discriminação de middleboxes.
- gRPC e RPC sobre HTTP2 semelhantes são citados como exemplos de “HTTP como o novo TCP”.
- Surgem preocupações sobre centralização de protocolo e provedor (tudo sobre 443, muitas vezes atrás de grandes CDNs), mas אחרים observam que isso dificulta bloquear conteúdo específico.