Como configurar

Explicação por modo de conexão. O payload tem botão de copiar; os demais campos você troca pelos seus dados.

Payload HTTPPayload TLSSSL/TLS SSH_XHTTPSlowDNSXrayBHTTPXRAY-BHTTP
🔀

NTProxy: 1 porta, todos os protocolos

A porta do NTProxy detecta o protocolo sozinha (pelo 1º byte, ALPN, SNI, cabeçalhos e caminho). O destino SSH ou Xray só é escolhido quando houver uma assinatura válida; o tipo genérico xhttp sozinho não seleciona o Xray:

  • SSL/TLS (security) ative TLS no app + SNI (bug)
  • Payload (HTTP) cole um payload (modelos abaixo)
  • SSH puro SSL/TLS sem payload (estilo stunnel)

Importante: Upgrade: websocket nos exemplos abaixo é apenas um marcador de payload para redes que exigem esse header. O NTProxy aceita o upgrade do payload e responde 101, mas não implementa framing WebSocket nem Sec-WebSocket-Accept; para Xray use XHTTP ou TCP nativo.

SSH + Xray na mesma porta: o motor Xray roda embutido no próprio NTProxy (sem porta/certificado separados). No XHTTP, ele separa pelo SNI/ALPN/path; no XRAY-BHTTP, o NTProxy reconhece o BHTTP binário e encaminha o stream ao VLESS interno. O SSH continua sendo o destino padrão dos fluxos que não pertencem ao Xray.

Compatibilidade: SSH_XHTTP pode usar o mesmo bug/Host da opção 1 porque usa HTTP/2 (h2) e o Xray usa http/1.1. SSH SSL/TLS ou payload que também usem o mesmo SNI e anunciem o mesmo ALPN http/1.1 ainda ficam indistinguíveis nessa camada; sem esse ALPN ou usando h2, continuam no SSH.

🌐

1) Proxy + Payload (HTTP)

Para redes que liberam por payload/bug. O NTProxy aguarda o payload completo e responde uma única vez com HTTP 200 antes do SSH. Preencha Servidor com o bug usado em [host] e Proxy com o endereço real da porta NTProxy.

  • Servidor / Porta BUG:22
  • Proxy / Porta SEU_IP:PORTA_NT
  • Payload GET ... [crlf][crlf]
  • Usuário / Senha os do SSH
Payload
GET / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]

O TurnCore atual resolve: [host], [port], [host_port]/[ssh], [ua], [crlf], [cr], [lf], [lfcr], [cdn], [cdn_rotate], [cdn_random], [cdn_id=...], [cdn_name=...], [rotate=a;b], [random=ip;ip], [instant_split], [split] e [delay_split].

🔒

2) Proxy + Payload (TLS/SSL)

Igual ao HTTP, mas por dentro de TLS. Abra o NTProxy com certificado, preencha Servidor com o bug, Proxy com o endereço real da porta NTProxy e informe o mesmo SNI no app.

  • Servidor / Porta BUG:22
  • Proxy / Porta SEU_IP:PORTA_NT_TLS
  • SNI seu bug
  • TLS 1.2 ou 1.3
Payload
GET / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]
🧩

Modelos de payload

Teste qual passa na sua operadora e use no card 1 ou 2. O [host] é o seu bug — não precisa trocar.

Básico
GET / HTTP/1.1[crlf]Host: [host][crlf]Connection: Keep-Alive[crlf][crlf]
CONNECT com host/porta
CONNECT [host_port] HTTP/1.1[crlf]Host: [host_port][crlf]Proxy-Connection: Keep-Alive[crlf][crlf]
CDN com rotação
GET /[cdn_rotate] HTTP/1.1[crlf]Host: [cdn_name=principal][crlf]User-Agent: [ua][crlf][crlf]
Variação de linhas
GET / HTTP/1.1[crlf]Host: [host][crlf]X-Online-Host: [host][lf]X-Forward-Host: [host][lfcr][crlf]
Upgrade em payload
GET / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]
Front / Split
GET / HTTP/1.1[crlf]Host: [host][crlf][crlf][split]GET / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]
ACL + Upgrade em payload
ACL / HTTP/1.1[crlf]Host: [host][crlf]Connection: Upgrade[crlf]Upgrade: websocket[crlf][crlf]
Com User-Agent
GET / HTTP/1.1[crlf]Host: [host][crlf]User-Agent: Mozilla/5.0[crlf]Upgrade: websocket[crlf][crlf]
CONNECT
CONNECT [host]:80 HTTP/1.1[crlf]Host: [host][crlf][crlf]
Instant split
[instant_split]GET / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]
Headers de operadora
GET / HTTP/1.1[crlf]Host: [host][crlf]X-Online-Host: [host][crlf]X-Forward-Host: [host][crlf]Upgrade: websocket[crlf][crlf]
URL ws:// completa
GET ws://[host]/ HTTP/1.1[crlf]Host: [host][crlf]Connection: Upgrade[crlf]Upgrade: websocket[crlf][crlf]
Método PUT
PUT / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]
Keep-alive
GET / HTTP/1.1[crlf]Host: [host][crlf]Connection: keep-alive[crlf]Upgrade: websocket[crlf][crlf]
Duplo (split)
GET / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf][split]GET / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]
Rotate de método
[rotate=GET;POST;PUT] / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]
📶

Por operadora (apelido pela cor)

Payloads pro modo Proxy + Payload do NTProxy que costumam passar em cada operadora. O [host] = bug; ele muda por operadora/região e é atualizado sempre — use um atual. A estrutura é o ponto de partida.

🟣 Roxinha
GET / HTTP/1.1[crlf]Host: [host][crlf]X-Online-Host: [host][crlf]Upgrade: websocket[crlf][crlf]
🔵 Azulzinha (split)
GET / HTTP/1.1[crlf]Host: [host][crlf][crlf][split]GET / HTTP/1.1[crlf]Host: [host][crlf]Upgrade: websocket[crlf][crlf]
🔴 Vermelinha (CONNECT)
CONNECT [host]:80 HTTP/1.1[crlf]Host: [host][crlf]Connection: Keep-Alive[crlf][crlf]
🛡️

3) SSL/TLS direto (sem payload)

Túnel TLS puro até a porta (modo "SSL"). Não usa payload — só o SNI.

  • Servidor:Porta SEU_IP:PORTA_TLS
  • SNI (bug) seu bug
  • Usuário / Senha os do SSH
🌐

4) SSH_XHTTP (HTTP/2)

Não usa payload. O app abre HTTP/2 real, com cinco streams de download e uploads sequenciados. Use Servidor como Host/front, Proxy como endereço real do NTProxy e deixe o payload vazio. Em porta compartilhada, não use o SNI reservado ao Xray.

  • Servidor / Porta HOST_FRONT:PORTA_NT
  • Proxy / Porta SEU_IP:PORTA_NT
  • SNI seu domínio TLS (ou vazio sem TLS)
  • TLS TLSv1.2 ou TLSv1.3
  • Usuário / Senha os do SSH

Importante: o caminho /ssh (SSH por dentro do HTTP, para atravessar CDN) só responde nas portas que têm um inbound XHTTP configurado no menu do Xray — inclusive o protocolo ssh puro, sem VLESS/VMess (ver card 6). Sem nenhum inbound XHTTP na porta, use SSH puro/SSL ou payload, que não passam por HTTP.

🧬

5) SlowDNS (DNSTT)

Túnel por DNS — funciona até em redes bem fechadas. No menu do SSH Core, ative o SlowDNS e informe o domínio NS e a porta SSH (o menu gera a chave pública). No app, configure o modo SSH_DNSTT com os mesmos dados:

  • NS (name server) domínio delegado para a VPS (ex.: dnstt.seudominio.com)
  • Resolvedor DNS 0.0.0.0 para usar o DNS da rede; no Claro, prefira também DoH: https://cloudflare-dns.com/dns-query
  • Chave pública do menu (server.pub)
  • Porta SSH mesma do SSH (ex.: 2222)
  • Usuário / Senha os do SSH

Importante: o campo Resolvedor DNS não é a porta SSH nem precisa ser o IP da VPS. O domínio NS deve apontar para a VPS; o app envia as consultas pelo DNS da rede, UDP, DoH ou DoT.

6) Xray nativo (VLESS / VMess)

No terminal, abra Conexões → Xray → Configurar porta e depois escolha o modo:

  • CDN (automático) só 3 campos; usa VLESS+XHTTP+TLS
  • Personalizado escolhe protocolo, transporte e path

No modo CDN (automático) o menu pergunta só o que muda de CDN para CDN — o resto já vem pronto:

  • Endereço do link vai depois do @ (IP da VPS ou domínio)
  • Host da CDN vai em host= (ex.: ....map.azionedge.net)
  • SNI do aplicativo vai em sni= (o bug da operadora)

O link sai pronto assim (copie em Link de usuário e importe no app por link/URI):

vless://UUID_DO_CLIENTE@ENDERECO_DO_LINK:443?encryption=none&security=tls&sni=app.tim.com.br&type=xhttp&host=HOST_DA_CDN&path=%2Fxhttp&allowInsecure=1#nome vmess://BASE64_DO_JSON_DO_LINK

Porta: o motor roda embutido no NTProxy (sem binário nem certificado separados). Você escolhe usar uma porta NTProxy já aberta (compartilhada) ou pedir uma dedicada, que o menu abre na hora. Dá para ter várias portas com Xray ao mesmo tempo (uma por CDN, por exemplo) — o mesmo usuário/UUID vale em todas, e Link de usuário mostra um link para cada porta.

SSH puro por dentro do XHTTP: no modo Personalizado existe o protocolo ssh — um inbound XHTTP sem cliente VLESS/VMess, que entrega direto no SSH. Não gera link de app: o cliente conecta com usuário/senha SSH normais. É o que destrava o caminho /ssh descrito no card 4.

O SSH_XHTTP usa h2, então pode usar o mesmo bug na porta compartilhada; o NTProxy separa pelo ALPN/path antes de encaminhar. Nos modos CDN, o Host do CDN e o SNI precisam bater com a configuração feita no painel da CDN.

🛰️

7) SSH_BHTTP

O SSH_BHTTP usa transporte binário sobre TCP, sem payload HTTP, proxy, SNI ou path. Informe a entrada pública do NTProxy e, se quiser autenticação automática, os dados da conta SSH.

  • Modo SSH_BHTTP
  • Servidor / Porta SEU_IP_OU_HOST:PORTA_NT
  • Usuário / Senha opcionais; dados do SSH
  • Ajuste BHTTP AUTO, AUTO-SSHCORE, MANUAL ou SAFE

Importante: dt_protocol é fixo em TCP; não existe mais seletor de KCP ou UDP neste modo. O bloco bhttp_config guarda o modo, sondagem, chunks, conexões, tentativas e timeouts.

Portas UDP, quando exibidas no perfil, servem apenas ao encaminhamento UDP opcional do SSH e não mudam o transporte BHTTP. Para abrir o BHTTP, libere somente a porta pública em TCP.

8) XRAY-BHTTP (VLESS por BHTTP)

É um modo separado do SSH_BHTTP: usa o mesmo transporte binário TCP, mas autentica com UUID e entrega o fluxo ao VLESS nativo do NTProxy. Não usa usuário/senha SSH, payload, proxy, SNI, path, KCP ou UDP.

  • Modo XRAY-BHTTP
  • Servidor / Porta IP_OU_HOST_PUBLICO:PORTA_NT
  • UUID UUID do cliente Xray
  • Ajuste BHTTP AUTO, AUTO-SSHCORE, MANUAL ou SAFE

No SSH Core: abra Conexões → Xray → Configurar porta → XRAY-BHTTP. O menu configura uma porta pública e reinicia a unit responsável: ntproxy-<porta> compartilhada ou sshcore-xraybhttp-<porta> standalone.

Aplicativo → BHTTP/TCP na porta pública → NTProxy ├─ SSH_BHTTP → SSHD local (backend SSH) └─ XRAY-BHTTP → VLESS local 127.0.0.1:31285 → destino solicitado

Porta interna: uma porta como 127.0.0.1:31285 é somente loopback e pode variar quando há vários BHTTP standalone. Não coloque essa porta no app, não abra no firewall e não procure um serviço Xray separado: o motor VLESS roda dentro do próprio serviço.

No painel: em Configurações → Adicionar, escolha XRay BHTTP e preencha apenas servidor, porta, UUID e o bloco de ajuste BHTTP. O link/cliente usa VLESS + TCP + BHTTP, não um JSON Xray separado.