Qu'est-ce que Shadowsocks ?

En bref

Contournez les blocages avec Shadowsocks, plus difficile à détecter ; SOCKS5 et AEAD, différences avec le VPN, installation et configuration simples des clients et serveurs.

Pas envie de monter le serveur vous-même ? Obtenir un serveur prêt
Qu'est-ce que Shadowsocks ?

Shadowsocks est un protocole gratuit de chiffrement des données, open source, basé sur la technologie SOCKS5.

Ce protocole a été développé en Chine pour contourner le grand pare-feu chinois, mission qu’il accomplit avec succès.

Lorsqu’une ressource est bloquée, cela signifie que vous n’avez pas accès à son adresse IP. Donc, quand vous tentez d’ouvrir un site bloqué, vous vous connectez d’abord au serveur de votre fournisseur d’accès, puis au site lui-même, mais sans succès. En utilisant un proxy, vous vous connectez d’abord au serveur de votre FAI, ensuite au proxy, puis enfin au site.

Shadowsocks repose sur le protocole proxy SOCKS5, qui protège la connexion avec un chiffrement AEAD, fonctionnant un peu comme un tunnel SSH. AEAD est considéré comme un chiffrement simple, donc moins sécurisé.

Shadowsocks ressemble à un réseau privé virtuel (VPN), mais ce dernier utilise un chiffrement plus complexe, ce qui le rend plus sécurisé. Cependant, le chiffrement simple de Shadowsocks est plus difficile à détecter, car il ressemble à une connexion HTTPS classique.

Les avantages de Shadowsocks

  • Installation du serveur facile : je vous montrerai plus bas qu’un config standard ne fait que 5 lignes et pas besoin de se casser la tête avec des certificats. Ce n’est pas un réseau bancaire non plus.
  • Configuration client simple. Les clients existent pour à peu près tout, sans exagérer. La config client tient aussi en 5 lignes.
  • Le client ne nécessite pas les droits administrateur. En plus, il peut s’installer via pip, donc n’importe quel développeur peut s’y connecter depuis son lieu de travail.
  • Accès facile à configurer par programme. Dans le navigateur, avec des extensions comme FoxyProxy/OmegaSwitchy, c’est même possible par adresse précise et règles complexes. Avec un VPN, cela nécessite de configurer un proxy local sur chaque client.
  • Contrairement au VPN, qui fonctionne souvent via une carte réseau virtuelle, le client Shadowsocks ne disparaît pas en cas de coupure. Ainsi, votre trafic ne part jamais en clair par accident. Et même si l’application Shadowsocks plante, les programmes ne se connectent pas directement, sauf si vous avez expressément configuré cela. Pour un VPN, il faut un kill-switch, souvent peu fiable, surtout sous Windows, avec effets secondaires.
  • Par rapport à un tunnel SSH, Shadowsocks offre un débit plus élevé et supporte des milliers de clients avec beaucoup de connexions simultanées. Le tunnel SSH, par exemple avec torrent, devient lent et sensible aux petites perturbations réseau. Shadowsocks s’en fiche.
  • Il transmet moins d’informations techniques, ce qui économise la batterie sur mobile.
  • Il existe des versions serveurs plus exotiques, sous forme de bibliothèques pour différents langages. Ainsi, vous pouvez intégrer un serveur dans votre propre application pour chiffrer l’accès de vos clients.
  • Configuration graphique des clients. Vous pouvez générer un QR code que vos clients mobiles et Windows configurent automatiquement en le scannant. Un seul client Windows configuré, code généré, vous le partagez à 20 mobiles en une minute. Vous pouvez le publier sur un site ou afficher sur un mur.

Les inconvénients de Shadowsocks

  • Contrairement à OpenVPN, il n’a pas passé d’audit officiel. De nombreuses personnes l’ont examiné vu que le code est ouvert et compact, mais aucun audit officiel.
  • Il ne sépare pas les utilisateurs. Vous pouvez gérer plusieurs ports avec des mots de passe différents, mais un port ne supporte qu’un seul mot de passe. Connaître un mot de passe ne permet pas (en théorie) d’écouter un autre utilisateur sur le même port.
  • Il ne permet pas de redirection de port inverse. En clair, tout le monde est derrière un NAT. Vous devrez utiliser un tunnel SSH si possible.
  • Le client Android affiche deux notifications permanentes. Sauf si vous les cachez, ça peut vite devenir gênant.
  • Certaines applications Windows refusent de passer par Shadowsocks, quoi qu’on fasse. Parfois, l’éditeur programme la connexion pour ignorer le proxy, souvent pour vérifier des licences. Plus bas, je vous partagerai une astuce pour les repérer.
  • La latence est un peu plus élevée qu’avec OpenVPN. Pas dramatique, on peut jouer, mais c’est notable.
  • Il ne compresse pas le trafic avec un archivage. À l’ère du HTTPS, ce n’est pas crucial, mais pour des fichiers texte non compressés ou des images Ubuntu réelles, ça fait la différence.
  • La documentation a été rédigée par des Chinois dans un anglais approximatif, avec beaucoup d’oublis et de contradictions.

Différences entre Shadowsocks et VPN

La principale différence réside dans le fait que le VPN est un réseau entièrement chiffré, tandis que Shadowsocks ne chiffre les données que entre vous et le serveur proxy, sans garantir une anonymité totale en ligne.

Shadowsocks utilise TCP et HTTPS, qui ne sont pas aussi sécurisés que le VPN, mais permettent à Shadowsocks de contourner les restrictions avec une meilleure vitesse de connexion.


Partager cet article :