---
title: "ShadowsocksR"
description: "Los cifrados, protocolos y métodos de ofuscación de ShadowsocksR 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.

# ShadowsocksR

Un servidor ShadowsocksR (SSR) se describe con tres ajustes: un **cifrado**, un **protocolo** y un método de **obfs** (ofuscación). Potatso se conecta a un servidor solo cuando admite los tres. Usa las tablas siguientes para comprobar los ajustes de tu servidor, tal como los muestra tu proveedor o su enlace `ssr://`.

Puedes añadir un servidor SSR a mano, con un [enlace `ssr://`](#links) o desde una suscripción de Clash o Mihomo. Potatso conserva el protocolo y el obfs que indica tu proveedor, incluidas las formas `_compatible`.

## Cifrados {#ciphers}

| Cifrado | Admitido |
| --- | --- |
| `none` | ✅ |
| `aes-128-ctr`, `aes-192-ctr`, `aes-256-ctr` | ✅ |
| `aes-128-cfb`, `aes-192-cfb`, `aes-256-cfb` | ✅ |
| `camellia-128-cfb`, `camellia-192-cfb`, `camellia-256-cfb` | ✅ |
| `chacha20`, `chacha20-ietf` | ✅ |
| `salsa20` | ✅ |
| `bf-cfb` | ✅ |
| `rc4-md5` | ✅ |
| `cast5-cfb`, `des-cfb`, `idea-cfb`, `rc2-cfb`, `seed-cfb` | ✅ |
| `rc4-md5-6`, `table` | ✅ |
| `xchacha20`, `xsalsa20` | ❌ |

Los cifrados AEAD como `aes-256-gcm` son cifrados de Shadowsocks, no de ShadowsocksR. Si tu proveedor indica uno para un servidor SSR, comprueba si el servidor es en realidad un servidor Shadowsocks.

## Protocolos {#protocols}

| Protocolo | Admitido | Varios usuarios |
| --- | --- | --- |
| `origin` | ✅ | — |
| `verify_deflate` | ✅ | — |
| `auth_sha1`, `auth_sha1_v2` | Obsoletos (no probados con un servidor real) | — |
| `auth_sha1_v4` | ✅ | — |
| `auth_sha1_v4_compatible` | ✅ | — |
| `auth_aes128_md5` | ✅ | ✅ |
| `auth_aes128_sha1` | ✅ | ✅ |
| `auth_chain_a` | ✅ | ✅ |
| `auth_chain_b` | ✅ | ✅ |
| `verify_simple`, `verify_sha1`, `auth_simple` | Obsoletos (se importan como `origin`) | — |

Los servidores **de varios usuarios** comparten un puerto entre varios usuarios. Para ellos, indica en el parámetro del protocolo (`protocol-param`, o `protoparam` en un enlace `ssr://`) `uid:key`, con el ID de usuario y la clave que te da tu proveedor.

Los servidores ShadowsocksR actuales ya no ofrecen `auth_sha1` ni `auth_sha1_v2`. Potatso todavía se conecta con ellos, pero no se han probado con un servidor real, así que prefiere otro protocolo si tu proveedor lo ofrece.

Las versiones anteriores de Potatso enumeraban `verify_simple`, `verify_sha1` y `auth_simple`, pero siempre se conectaban con `origin`. Potatso los sigue importando como `origin` y muestra una advertencia cuando lo hace.

## Obfs {#obfs}

| Obfs | Admitido |
| --- | --- |
| `plain` | ✅ |
| `http_simple`, `http_simple_compatible` | ✅ |
| `http_post`, `http_post_compatible` | ✅ |
| `tls1.2_ticket_auth`, `tls1.2_ticket_auth_compatible` | ✅ |
| `tls1.2_ticket_fastauth`, `tls1.2_ticket_fastauth_compatible` | ✅ |
| `random_head`, `random_head_compatible` | ✅ Obsoleto |

Un nombre `_compatible` significa que el servidor también acepta clientes que no usan ofuscación. Potatso usa el método de obfs que nombra, así que puedes dejar el nombre que te da tu proveedor.

En los métodos HTTP, el parámetro de obfs (`obfs-param`, o `obfsparam` en un enlace `ssr://`) establece la cabecera `Host`. Puede ser un único host, una lista de hosts separados por comas o un bloque de cabeceras personalizadas. Si está vacío, Potatso usa la dirección del servidor. En los métodos TLS, establece el nombre del servidor enviado en la negociación TLS.

## UDP {#udp}

UDP funciona con todos los protocolos admitidos y está activado por defecto en los servidores SSR. Desactívalo en los ajustes del servidor si tu servidor no retransmite UDP.

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

Un enlace `ssr://` contiene un servidor completo en una sola línea. Todo lo que hay después de `ssr://` está codificado en Base64:

```text
ssr://base64(host:port:protocol:cipher:obfs:base64(password)/?obfsparam=…&protoparam=…&remarks=…)
```

La parte anterior a `/?` son seis campos separados por dos puntos:

| Campo | Descripción |
| --- | --- |
| `host` | Dirección del servidor. Pon una dirección IPv6 entre corchetes, como `[2001:db8::1]`. |
| `port` | Puerto del servidor. |
| `protocol` | Uno de los [protocolos](#protocols) anteriores. Si está vacío, Potatso usa `origin`. |
| `cipher` | Uno de los [cifrados](#ciphers) anteriores. Obligatorio. |
| `obfs` | Uno de los [métodos de obfs](#obfs) anteriores. Si está vacío, Potatso usa `plain`. |
| `password` | La contraseña, codificada en Base64. |

La parte posterior a `/?` es opcional. Cada valor está codificado en Base64:

| Parámetro | Descripción |
| --- | --- |
| `obfsparam` | El parámetro de obfs, como el `Host` de `http_simple`. |
| `protoparam` | El parámetro del protocolo, como `uid:key` en un servidor de varios usuarios. |
| `remarks` | El nombre del servidor en Potatso. |

Potatso ignora otros parámetros, como `group`, `udpport` y `uot`, y cualquier `#name` al final del enlace. UDP no forma parte del enlace: está activado por defecto y puedes desactivarlo después de importar.

Potatso acepta Base64 estándar y seguro para URL, con o sin relleno `=`. Los nombres no distinguen mayúsculas de minúsculas, así que `AUTH_CHAIN_A` funciona igual que `auth_chain_a`. Cuando Potatso comparte un servidor, escribe Base64 seguro para URL sin relleno.

### Ejemplos {#link-examples}

Cada ejemplo muestra primero el texto decodificado y después el enlace que se importa. La contraseña en todos los ejemplos es `secret`.

Un servidor básico sin plugin de protocolo ni ofuscación:

```text
ssr.example.com:8388:origin:aes-256-cfb:plain:c2VjcmV0/?remarks=QmFzaWM
```

```text
ssr://c3NyLmV4YW1wbGUuY29tOjgzODg6b3JpZ2luOmFlcy0yNTYtY2ZiOnBsYWluOmMyVmpjbVYwLz9yZW1hcmtzPVFtRnphV00
```

Ofuscación TLS, con `cdn.example.com` como nombre del servidor:

```text
ssr.example.com:443:auth_aes128_md5:chacha20-ietf:tls1.2_ticket_auth:c2VjcmV0/?obfsparam=Y2RuLmV4YW1wbGUuY29t&remarks=VExTIG9iZnM
```

```text
ssr://c3NyLmV4YW1wbGUuY29tOjQ0MzphdXRoX2FlczEyOF9tZDU6Y2hhY2hhMjAtaWV0Zjp0bHMxLjJfdGlja2V0X2F1dGg6YzJWamNtVjAvP29iZnNwYXJhbT1ZMlJ1TG1WNFlXMXdiR1V1WTI5dCZyZW1hcmtzPVZFeFRJRzlpWm5N
```

Un servidor de varios usuarios: el usuario `2173` con la clave `userkey`, el cifrado `none` y ofuscación HTTP:

```text
ssr.example.com:8080:auth_chain_a:none:http_simple:c2VjcmV0/?obfsparam=Y2RuLmV4YW1wbGUuY29t&protoparam=MjE3Mzp1c2Vya2V5&remarks=TXVsdGktdXNlcg
```

```text
ssr://c3NyLmV4YW1wbGUuY29tOjgwODA6YXV0aF9jaGFpbl9hOm5vbmU6aHR0cF9zaW1wbGU6YzJWamNtVjAvP29iZnNwYXJhbT1ZMlJ1TG1WNFlXMXdiR1V1WTI5dCZwcm90b3BhcmFtPU1qRTNNenAxYzJWeWEyVjUmcmVtYXJrcz1UWFZzZEdrdGRYTmxjZw
```

Un servidor con una dirección IPv6:

```text
[2001:db8::1]:8388:auth_sha1_v4:rc4-md5:http_post:c2VjcmV0/?remarks=SVB2Ng
```

```text
ssr://WzIwMDE6ZGI4OjoxXTo4Mzg4OmF1dGhfc2hhMV92NDpyYzQtbWQ1Omh0dHBfcG9zdDpjMlZqY21WMC8_cmVtYXJrcz1TVkIyTmc
```

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