---
title: "SOCKS5 y SOCKS5 sobre TLS"
description: "Las opciones, enlaces y funciones de SOCKS5 y SOCKS5 sobre TLS 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.

# SOCKS5 y SOCKS5 sobre TLS

Un servidor SOCKS5 abre conexiones por ti y retransmite UDP, con o sin nombre de usuario y contraseña ([RFC 1928](https://www.rfc-editor.org/rfc/rfc1928)). **SOCKS5 sobre TLS** es el mismo servidor al que se accede por TLS, de modo que la conexión con el servidor también va cifrada.

Potatso envía al servidor el nombre del sitio que visitas, no su dirección, y el servidor resuelve el nombre. Es lo que otras apps llaman `socks5h`, o DNS remoto.

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

- una suscripción de Clash o Mihomo (`type: socks5`),
- una configuración de Surge (`socks5` y `socks5-tls`),
- una configuración de Xray o V2Ray (salida `socks`, con o sin TLS).

Para añadir un servidor SOCKS5 sobre TLS a mano, elige **SOCKS5** y activa **TLS**.

## Ajustes {#settings}

| Ajuste | Descripción |
| --- | --- |
| Servidor, puerto | La dirección y el puerto del servidor. También funciona una dirección IPv6. |
| Autenticación | Ninguna, o un nombre de usuario y una contraseña. |
| Nombre de usuario, contraseña | Cada uno de hasta 255 bytes. |
| Retransmisión UDP | Activada por defecto. Consulta [UDP](#udp). |
| TLS | Activado para SOCKS5 sobre TLS. |
| Omitir verificación del certificado | Solo SOCKS5 sobre TLS. Acepta cualquier certificado. Úsalo solo para pruebas. |
| Pin del certificado | Solo SOCKS5 sobre TLS, opcional. La huella SHA-256 del certificado del servidor, como 64 dígitos hexadecimales. Con un pin, Potatso acepta el certificado fijado, incluso uno autofirmado, y nada más. |

Si el servidor pide un nombre de usuario y una contraseña y no los has indicado, Potatso no se conecta. Potatso no admite la autenticación GSSAPI (Kerberos).

Un servidor de Clash o Mihomo con un `username` vacío se importa sin autenticación, como hace Clash.

### Certificados {#certificates}

Con SOCKS5 sobre TLS, el nombre del servidor en la negociación TLS es siempre la dirección del servidor, y el certificado del servidor debe ser válido para ella. Si no lo es, fija un [pin del certificado](#settings) o activa **Omitir verificación del certificado**. No puedes indicar un nombre de servidor distinto: Potatso no importa un enlace, un servidor de Surge ni un servidor de Xray que lo tenga. Clash y Mihomo no tienen nombre de servidor para SOCKS5, así que Potatso ignora un `sni` ahí, como hacen ellos.

Potatso no admite:

- un certificado de CA personalizado: fija en su lugar el certificado del servidor,
- un certificado de cliente TLS (`certificate` y `private-key` de Clash), ni un nombre distinto con el que comprobar el certificado (`name-cert-verify`): Potatso no importa un servidor que necesite uno,
- una lista ALPN: Potatso importa el servidor sin ella.

## UDP {#udp}

UDP lo usan QUIC, las llamadas de voz y vídeo y muchos juegos. Con **Retransmisión UDP** activada, Potatso envía UDP a través del servidor (UDP ASSOCIATE), a direcciones IPv4 e IPv6. También funciona con un servidor detrás de NAT que informa de su dirección como `0.0.0.0`: Potatso envía UDP a la dirección que hayas indicado.

Desactiva Retransmisión UDP si tu servidor no retransmite UDP. Entonces:

- Con reglas, Potatso omite una regla que envía UDP a este servidor, y decide la siguiente regla que coincida. El UDP que no coincide con ninguna otra regla se envía directamente.
- En modo Global, UDP no funciona, porque todo el tráfico debe pasar por el servidor.

Algunas cosas que conviene saber sobre UDP:

- UDP se retransmite por el puerto UDP independiente del servidor, así que el cortafuegos del servidor debe dejar pasar UDP.
- Con SOCKS5 sobre TLS, solo va cifrada la conexión con el servidor. SOCKS5 envía UDP fuera de ella, así que tu tráfico UDP llega al servidor sin cifrar.
- Para UDP, Potatso resuelve por sí mismo la dirección del sitio y envía la dirección al servidor.
- Cuando importas desde Clash, Mihomo o Surge, Retransmisión UDP está activada salvo que el servidor indique `udp: false` (`udp-relay=false` en Surge). Clash deja UDP desactivado cuando falta `udp`, así que comprueba que tu servidor retransmite UDP.

## Compatibilidad de funciones {#features}

| Función | Admitida |
| --- | --- |
| `CONNECT` a destinos IPv4, IPv6 y de dominio ([RFC 1928](https://www.rfc-editor.org/rfc/rfc1928)) | ✅ |
| DNS remoto: nombres de dominio resueltos por el servidor (`socks5h`) | ✅ Para TCP |
| Sin autenticación | ✅ |
| Nombre de usuario y contraseña ([RFC 1929](https://www.rfc-editor.org/rfc/rfc1929)) | ✅ |
| GSSAPI ([RFC 1961](https://www.rfc-editor.org/rfc/rfc1961)) | ❌ |
| `UDP ASSOCIATE` a destinos IPv4 e IPv6 | ✅ |
| UDP con un servidor detrás de NAT (dirección de retransmisión `0.0.0.0`) | ✅ |
| Fragmentación UDP | ❌ Los datagramas fragmentados se descartan, lo que permite la RFC 1928 |
| `BIND` (conexiones entrantes, como FTP en modo activo) | ❌ |
| SOCKS5 sobre TLS | ✅ Con pin del certificado y omitir verificación del certificado |
| Nombre de servidor TLS distinto de la dirección del servidor, ALPN, CA personalizada, certificado de cliente | ❌ |
| UDP cifrado con TLS | ❌ SOCKS5 envía UDP fuera de TLS |
| Una dirección de servidor IPv6 | ✅ |
| SOCKS4 y SOCKS4a | ❌ |

Cada función admitida se prueba con servidores SOCKS5 reales: [Xray](https://xtls.github.io/), [sing-box](https://sing-box.sagernet.org/), [Mihomo](https://wiki.metacubex.one/), [3proxy](https://3proxy.org/) y [microsocks](https://github.com/rofl0r/microsocks). sing-box sirve SOCKS5 sobre TLS en su entrada `mixed`, no en su entrada `socks`.

## Enlaces {#links}

Un enlace SOCKS5 contiene un servidor completo en una sola línea:

```text
socks5://user:password@host:port#name
socks5+tls://user:password@host:port?insecure=1#name
```

| Parte | Descripción |
| --- | --- |
| esquema | `socks5://`, `socks://` o `socks5h://` para SOCKS5; `socks5+tls://` o `socks+tls://` para SOCKS5 sobre TLS. Potatso siempre envía los nombres de dominio al servidor, así que `socks5h://` funciona igual que `socks5://`. |
| `user:password` | Opcional. Codifica con porcentaje `:`, `@` y otros caracteres especiales de la contraseña, por ejemplo `p%3Ass` para `p:ss`. El nombre de usuario no puede contener `:`. |
| `host` | Dirección del servidor. Pon una dirección IPv6 entre corchetes, como `[2001:db8::1]`. |
| `port` | Puerto del servidor. |
| `insecure` | Solo SOCKS5 sobre TLS, opcional. `1` activa Omitir verificación del certificado. Potatso también lee `allowInsecure` y `skip-cert-verify`. |
| `name` | Opcional. El nombre del servidor en Potatso. |

Un enlace no puede contener un pin del certificado. Un enlace con un `sni` distinto de la dirección del servidor no se importa.

Potatso también importa otras dos formas:

```text
socks://base64(user:password)@host:port#name
socks5://base64(user:password@host:port)#name
```

La primera es como v2rayN comparte los servidores SOCKS. La segunda es la forma antigua, en la que todo lo que hay entre `://` y `#` está codificado en Base64. Cuando Potatso comparte un servidor SOCKS5 con contraseña, ofrece el enlace estándar y la forma de v2rayN.

### Ejemplos {#link-examples}

Un servidor sin contraseña:

```text
socks5://proxy.example.com:1080#Open
```

Un servidor con el nombre de usuario `alice` y la contraseña `s3cret`:

```text
socks5://alice:s3cret@proxy.example.com:1080#Auth
```

La contraseña `p:ss wörd`, con codificación porcentual:

```text
socks5://alice:p%3Ass%20w%C3%B6rd@proxy.example.com:1080#Encoded
```

El mismo servidor como enlace `socks5h://`:

```text
socks5h://alice:s3cret@proxy.example.com:1080#Remote-DNS
```

La forma de v2rayN, con `alice:s3cret` codificado en Base64:

```text
socks://YWxpY2U6czNjcmV0@proxy.example.com:1080#v2rayN
```

La forma antigua:

```text
socks5://YWxpY2U6czNjcmV0QHByb3h5LmV4YW1wbGUuY29tOjEwODA#Legacy
```

Un servidor con una dirección IPv6:

```text
socks5://[2001:db8::1]:1080#IPv6
```

Un servidor SOCKS5 sobre TLS:

```text
socks5+tls://alice:s3cret@proxy.example.com:443#TLS
```

Un servidor SOCKS5 sobre TLS con un certificado autofirmado:

```text
socks+tls://proxy.example.com:443?insecure=1#Self-signed
```

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