---
title: "AnyTLS"
description: "Los ajustes TLS, enlaces y funciones de AnyTLS que admite Potatso."
---

> Documentation Index
> Fetch the complete documentation index at: https://potatso.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# AnyTLS

Un servidor AnyTLS se describe con una **contraseña** y sus **ajustes TLS**. AnyTLS funciona dentro de TLS y rellena su tráfico (padding), de modo que la conexión parece una visita HTTPS normal y no muestra las señales habituales de un proxy dentro de TLS. Potatso se conecta a un servidor cuando admite los ajustes TLS de este. Usa las tablas siguientes para comprobar los ajustes de tu servidor, tal como los muestra tu proveedor o su enlace `anytls://`.

Puedes añadir un servidor AnyTLS a mano, con un [enlace `anytls://`](#links) o importándolo desde:

- una suscripción de Clash o Mihomo,
- una configuración de Surge.

Potatso todavía no importa servidores AnyTLS desde una configuración de sing-box. Usa en su lugar el enlace `anytls://` del servidor.

## TLS {#tls}

| Ajuste | Clave de Clash | Parámetro del enlace | Admitido |
| --- | --- | --- | --- |
| Nombre del servidor (SNI) | `sni` | `sni` | ✅ Sin él, Potatso usa la dirección del servidor. |
| ALPN | `alpn` | `alpn` | ✅ Sin él, Potatso no envía ninguno, igual que Clash. |
| Omitir verificación del certificado | `skip-cert-verify` | `insecure` | ✅ |
| Pin del certificado (SHA-256) | `fingerprint` | `hpkp` | ✅ |
| Huella digital del navegador | `client-fingerprint` | `fp` | ✅ `chrome`, `firefox`, `safari`, `ios`, `android`, `edge` y `random`. Otros nombres se conectan con una negociación predeterminada. |
| [REALITY](#reality) | `reality-opts` | | ✅ |
| Encrypted Client Hello (ECH) | `ech-opts` | | ✅ Con la configuración ECH de la suscripción, o consultada en el DNS |
| Certificado de CA personalizado | | | ❌ |
| Certificado de cliente TLS | `certificate`, `private-key` | | ❌ |

Desactivar la verificación del certificado permite que cualquiera entre tú y el servidor lea tu tráfico. Si el servidor usa un certificado autofirmado, fija mejor su certificado: indica el SHA-256 de su certificado como pin del certificado.

Una huella digital del navegador hace que la negociación TLS de la conexión parezca la de ese navegador. No cambia lo que debe admitir el servidor.

Potatso no importa un servidor que necesite un certificado de cliente TLS, ya que el servidor rechazaría la conexión.

### REALITY {#reality}

Un servidor REALITY toma prestado el certificado TLS de otro sitio web, así que no necesita uno propio. Los servidores sing-box ofrecen AnyTLS con REALITY. Indica la **clave pública** y el **ID corto** del servidor tal como te los da tu proveedor, y como nombre del servidor el sitio web del que lo toma prestado. REALITY necesita una huella digital del navegador, como `chrome`.

## Conexiones {#connections}

AnyTLS reutiliza sus conexiones TLS: cuando termina una conexión a un sitio web, la siguiente usa la misma conexión TLS en lugar de abrir una nueva. Cada conexión TLS transporta una conexión a la vez, así que varias a la vez abren varias conexiones TLS, que se reutilizan después.

| Ajuste | Clave de Clash | Admitido |
| --- | --- | --- |
| Cada cuánto se comprueban las conexiones inactivas | `idle-session-check-interval` | ✅ En segundos, 30 por defecto |
| Cuánto tiempo permanece abierta una conexión inactiva | `idle-session-timeout` | ✅ En segundos, 60 por defecto |
| Cuántas conexiones inactivas permanecen abiertas | `min-idle-session` | ✅ 1 por defecto |

Los valores de 5 segundos o menos significan 30, como en Clash. Estos ajustes proceden de una suscripción de Clash. Potatso usa los valores predeterminados en los servidores que añades a mano o mediante un enlace.

El `reuse=false` de una configuración de Surge no se aplica: Potatso siempre reutiliza las conexiones, como establece la especificación de AnyTLS. Potatso importa el servidor y muestra una advertencia.

## Padding {#padding}

AnyTLS rellena el inicio de cada conexión para ocultar los tamaños que delatan a un proxy. Un servidor puede enviar su propio esquema de padding. Potatso lo usa a partir de la siguiente conexión TLS, como define AnyTLS. No hay nada que configurar en tu dispositivo.

## UDP {#udp}

AnyTLS transporta UDP dentro de su conexión TLS (UDP sobre TCP). UDP está desactivado por defecto, como en Clash. Activa Retransmisión UDP en los ajustes del servidor si tu servidor retransmite UDP. Una suscripción de Clash lo activa con `udp: true`, y una configuración de Surge lo activa siempre.

## Compatibilidad de funciones {#features}

| Función | Admitida |
| --- | --- |
| [Protocolo AnyTLS](https://github.com/anytls/anytls-go/blob/main/docs/protocol.md) v2: contraseña, padding, reutilización de conexiones | ✅ |
| Esquemas de padding enviados por el servidor | ✅ |
| UDP sobre TCP | ✅ |
| [Ajustes de conexiones inactivas](#connections) | ✅ |
| REALITY, ECH | ✅ |
| Pin de certificado, huellas digitales del navegador | ✅ |
| CA personalizada, certificados de cliente TLS | ❌ |
| Enlaces `anytls://` | ✅ |

Cada función admitida se prueba con al menos un servidor AnyTLS real: [anytls-go](https://github.com/anytls/anytls-go), [sing-box](https://sing-box.sagernet.org/) o [mihomo](https://wiki.metacubex.one/).

Cuando la contraseña es incorrecta, el servidor cierra la conexión. Comprueba primero la contraseña cuando un servidor AnyTLS no llegue a conectarse nunca.

## Enlaces `anytls://` {#links}

Un enlace `anytls://` contiene un servidor completo en una sola línea:

```text
anytls://password@host:port/?parameters#name
```

| Parte | Descripción |
| --- | --- |
| `password` | La contraseña, con codificación porcentual. |
| `host` | Dirección del servidor. Pon una dirección IPv6 entre corchetes, como `[2001:db8::1]`. |
| `port` | Puerto del servidor. Si falta, Potatso usa 443. |
| `name` | Opcional. El nombre del servidor en Potatso. |

Los parámetros siguen el [formato de anytls-go](https://github.com/anytls/anytls-go/blob/main/docs/uri_scheme.md), más algunos que añaden otras apps:

| Parámetro | Descripción |
| --- | --- |
| `sni` | El nombre de servidor TLS. |
| `insecure` | `1` desactiva la verificación del certificado. |
| `alpn` | La lista ALPN, separada por comas y con codificación porcentual. |
| `fp` | La huella digital del navegador. |
| `hpkp` | El SHA-256 del certificado del servidor. |

Cuando Potatso comparte un servidor AnyTLS, ofrece un enlace `anytls://` con los mismos parámetros.

### Ejemplos {#link-examples}

Cada ejemplo muestra el enlace que se importa. La contraseña es `secret`.

Un servidor básico:

```text
anytls://secret@anytls.example.com:443/?sni=anytls.example.com#Basic
```

Un certificado autofirmado, sin verificación:

```text
anytls://secret@203.0.113.7/?insecure=1#Self-signed
```

Una huella digital de Chrome, una lista ALPN y un certificado fijado:

```text
anytls://secret@anytls.example.com:443/?sni=anytls.example.com&alpn=h2%2Chttp%2F1.1&fp=chrome&hpkp=abababababababababababababababababababababababababababababababab#Shaped
```

Source: https://potatso.com/docs/es/protocols/anytls/index.mdx
