---
title: "ShadowsocksR"
description: "Les chiffrements, protocoles et méthodes d’obfuscation ShadowsocksR pris en charge par 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 serveur ShadowsocksR (SSR) se décrit par trois réglages : un **chiffrement**, un **protocole** et une méthode **obfs** (obfuscation). Potatso ne se connecte à un serveur que s’il prend en charge les trois. Utilisez les tableaux ci-dessous pour vérifier les réglages de votre serveur, tels que votre fournisseur les indique ou tels qu’ils figurent dans son lien `ssr://`.

Vous pouvez ajouter un serveur SSR à la main, avec un [lien `ssr://`](#links), ou depuis un abonnement Clash ou Mihomo. Potatso conserve le protocole et l’obfs que nomme votre fournisseur, y compris les formes `_compatible`.

## Chiffrements {#ciphers}

| Chiffrement | Pris en charge |
| --- | --- |
| `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` | ❌ |

Les chiffrements AEAD comme `aes-256-gcm` sont des chiffrements Shadowsocks, pas ShadowsocksR. Si votre fournisseur en indique un pour un serveur SSR, vérifiez si le serveur est en réalité un serveur Shadowsocks.

## Protocoles {#protocols}

| Protocole | Pris en charge | Multi-utilisateur |
| --- | --- | --- |
| `origin` | ✅ | — |
| `verify_deflate` | ✅ | — |
| `auth_sha1`, `auth_sha1_v2` | Obsolète (non testé avec un vrai serveur) | — |
| `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` | Obsolète (importé comme `origin`) | — |

Les serveurs **multi-utilisateurs** partagent un port entre plusieurs utilisateurs. Pour ceux-ci, réglez le paramètre du protocole (`protocol-param`, ou `protoparam` dans un lien `ssr://`) sur `uid:key`, avec l’identifiant utilisateur et la clé fournis par votre fournisseur.

Les serveurs ShadowsocksR actuels ne proposent plus `auth_sha1` ni `auth_sha1_v2`. Potatso s’y connecte toujours, mais ils n’ont pas été testés avec un vrai serveur : préférez donc un autre protocole si votre fournisseur en propose un.

Les anciennes versions de Potatso listaient `verify_simple`, `verify_sha1` et `auth_simple`, mais se connectaient toujours avec `origin`. Potatso les importe toujours comme `origin` et affiche un avertissement quand il le fait.

## Obfs {#obfs}

| Obfs | Pris en charge |
| --- | --- |
| `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` | ✅ Obsolète |

Un nom `_compatible` signifie que le serveur accepte aussi les clients qui n’utilisent pas d’obfuscation. Potatso utilise la méthode obfs qu’il nomme : vous pouvez donc garder le nom que vous donne votre fournisseur.

Pour les méthodes HTTP, le paramètre obfs (`obfs-param`, ou `obfsparam` dans un lien `ssr://`) définit l’en-tête `Host`. Il peut s’agir d’un seul hôte, d’une liste d’hôtes séparés par des virgules ou d’un bloc d’en-têtes personnalisés. Vide, Potatso utilise l’adresse du serveur. Pour les méthodes TLS, il définit le nom du serveur envoyé lors de la négociation TLS.

## UDP {#udp}

L’UDP fonctionne avec tous les protocoles pris en charge et est activé par défaut pour les serveurs SSR. Désactivez-le dans les réglages du serveur si votre serveur ne relaie pas l’UDP.

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

Un lien `ssr://` contient un serveur entier sur une ligne. Tout ce qui suit `ssr://` est encodé en Base64 :

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

La partie avant `/?` comprend six champs séparés par des deux-points :

| Champ | Description |
| --- | --- |
| `host` | Adresse du serveur. Placez une adresse IPv6 entre crochets, comme `[2001:db8::1]`. |
| `port` | Port du serveur. |
| `protocol` | L’un des [protocoles](#protocols) ci-dessus. Vide, Potatso utilise `origin`. |
| `cipher` | L’un des [chiffrements](#ciphers) ci-dessus. Obligatoire. |
| `obfs` | L’une des [méthodes obfs](#obfs) ci-dessus. Vide, Potatso utilise `plain`. |
| `password` | Le mot de passe, encodé en Base64. |

La partie après `/?` est facultative. Chaque valeur est encodée en Base64 :

| Paramètre | Description |
| --- | --- |
| `obfsparam` | Le paramètre obfs, comme le `Host` pour `http_simple`. |
| `protoparam` | Le paramètre du protocole, comme `uid:key` pour un serveur multi-utilisateur. |
| `remarks` | Le nom du serveur dans Potatso. |

Potatso ignore les autres paramètres, comme `group`, `udpport` et `uot`, ainsi que tout `#name` à la fin du lien. L’UDP ne fait pas partie du lien : il est activé par défaut, et vous pouvez le désactiver après l’import.

Potatso accepte le Base64 standard et le Base64 compatible URL, avec ou sans remplissage `=`. Les noms ne sont pas sensibles à la casse : `AUTH_CHAIN_A` fonctionne donc comme `auth_chain_a`. Quand Potatso partage un serveur, il écrit du Base64 compatible URL sans remplissage.

### Exemples {#link-examples}

Chaque exemple montre d’abord le texte décodé, puis le lien à importer. Le mot de passe de chaque exemple est `secret`.

Un serveur de base sans plug-in de protocole ni obfuscation :

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

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

Obfuscation TLS, avec `cdn.example.com` comme nom de serveur :

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

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

Un serveur multi-utilisateur : l’utilisateur `2173` avec la clé `userkey`, le chiffrement `none` et l’obfuscation HTTP :

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

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

Un serveur avec une adresse 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/fr/protocols/shadowsocksr/index.mdx
