Skip to content
Advanced / 7 min read

Comment utiliser un proxy SOCKS5 dans Chrome avec un nom d'utilisateur et un mot de passe (méthode du pont local)

Chrome ne peut pas envoyer d'identifiants SOCKS5, donc les proxys authentifiés échouent d'emblée. Ce guide construit un pont local avec gost ou Privoxy qui conserve votre nom d'utilisateur et mot de passe IPRoyal et fait passer Chrome par le proxy.

Windows macOS SOCKS5 Confidentialité/Anonymat

Aperçu

Chrome et les autres navigateurs Chromium peuvent utiliser un proxy SOCKS5 via l'option --proxy-server, mais ils ne peuvent pas envoyer de nom d'utilisateur et mot de passe SOCKS5. Il n'existe pas de boîte de dialogue d'identification pour SOCKS5 dans Chrome, et les extensions de proxy courantes n'authentifient que les proxys HTTP et HTTPS. Si votre proxy nécessite une connexion, Chrome échoue avec ERR_PROXY_CONNECTION_FAILED ou se connecte sans identifiants et est rejeté.

La solution est un pont local : un petit redirecteur qui écoute sur 127.0.0.1, accepte le trafic non authentifié provenant de Chrome, et le transfère vers le point de terminaison SOCKS5 amont authentifié. Chrome ne voit jamais les identifiants, et la pile réseau du navigateur ne communique jamais directement avec l'amont.

Comment chaque méthode de proxy se comporte dans Chrome

Méthode Gère les identifiants SOCKS5 Remarques
Option --proxy-server="socks5://..." Non Résout le DNS au niveau du proxy, mais échoue lorsque l'amont nécessite une authentification
Paramètre de proxy du système d'exploitation Non Même limitation, et cela affecte toutes les applications plutôt qu'un seul profil de navigateur
Extension de proxy Non La plupart des extensions ne prennent en charge que l'authentification HTTP et HTTPS
Liste blanche d'IP chez le fournisseur Pas nécessaire Ne fonctionne que si votre forfait et votre configuration le permettent
Pont local (ce tutoriel) Oui Les identifiants restent sur votre machine ; Chrome communique avec localhost

Prérequis

  • Une installation de Chrome ou Chromium que vous pouvez lancer depuis la ligne de commande
  • Identifiants SOCKS5 IPRoyal : hôte de la passerelle, port, nom d'utilisateur, mot de passe depuis votre tableau de bord
  • Un redirecteur local : gost (recommandé) ou Privoxy
  • L'autorisation d'exécuter un écouteur lié à 127.0.0.1

Étapes

  1. Vérifiez si la mise en liste blanche d'IP élimine complètement le problème. Certains fournisseurs vous permettent d'autoriser une adresse IP fixe au lieu d'envoyer des identifiants. Ouvrez votre tableau de bord IPRoyal et confirmez si cette option existe pour le forfait que vous utilisez. Si c'est le cas, et que votre IP publique est stable, vous pouvez ignorer le pont et utiliser directement l'option --proxy-server.

  2. Installez un redirecteur local. gost parle SOCKS5 dans les deux sens et est fourni sous forme de binaire unique, ce qui en fait le choix le plus simple.

  • Windows : téléchargez le binaire gost depuis sa page de versions officielle et ajoutez-le à votre PATH
  • macOS : installez gost avec votre gestionnaire de paquets si un paquet est disponible, sinon téléchargez le binaire
  • Linux : installez le binaire depuis la page de versions, ou utilisez un paquet de distribution si disponible
  1. Démarrez le pont. Il écoute sur un port de bouclage sans authentification et transfère tout vers l'amont authentifié.
gost -L socks5://127.0.0.1:1080 -F 'socks5://USERNAME:PASSWORD@GATEWAY_HOST:GATEWAY_PORT'

Sous Windows PowerShell, mettez l'URL amont entre guillemets :

gost -L socks5://127.0.0.1:1080 -F "socks5://USERNAME:PASSWORD@GATEWAY_HOST:GATEWAY_PORT"

Laissez ce processus en cours d'exécution dans sa propre fenêtre de terminal pendant que vous naviguez.

  1. Vérifiez le pont avant de toucher à Chrome. Cette requête passe par le pont, donc l'adresse renvoyée devrait être l'IP de sortie du proxy, et non votre adresse FAI.
curl --socks5-hostname 127.0.0.1:1080 https://api.ipify.org

Si la commande se bloque, le pont ne transfère pas. Si elle renvoie une erreur d'authentification, les identifiants amont sont incorrects.

  1. Lancez Chrome via le pont. Utilisez un profil dédié afin que votre navigation quotidienne reste intacte et que l'option ne puisse pas fuiter dans votre session normale.

macOS :

"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
  --proxy-server="socks5://127.0.0.1:1080" \
  --user-data-dir="$HOME/.chrome-proxy-profile"

Linux :

google-chrome \
  --proxy-server="socks5://127.0.0.1:1080" \
  --user-data-dir="$HOME/.chrome-proxy-profile"

Windows :

& "C:\Program Files\Google\Chrome\Application\chrome.exe" `
  --proxy-server="socks5://127.0.0.1:1080" `
  --user-data-dir="$env:TEMP\chrome-proxy-profile"
  1. Confirmez l'IP de sortie dans Chrome. Ouvrez une page de recherche d'IP dans la nouvelle fenêtre et comparez l'adresse avec celle renvoyée par curl. Elles doivent correspondre. Si Chrome affiche votre véritable IP, consultez la section de dépannage.

  2. Créez un lanceur réutilisable pour ne pas retaper les options. Sous macOS ou Linux, enregistrez la commande dans un script shell ou un alias. Sous Windows, créez un raccourci dont la cible inclut les options et le chemin --user-data-dir.

  3. Effectuez une rotation en redémarrant le pont avec une nouvelle identité amont. Le pont conserve une identité amont tant qu'il fonctionne, donc changer l'IP de sortie, ou passer à un point de terminaison spécifique à un pays depuis votre tableau de bord, signifie arrêter gost, le redémarrer avec la nouvelle chaîne de ciblage, et recharger Chrome.

Alternative : Privoxy comme interface frontale

Si vous avez besoin d'un proxy HTTP devant l'amont SOCKS5, parce qu'un outil ou une extension que vous utilisez ne parle que les proxys HTTP, Privoxy peut faire la conversion.

Ajoutez ces lignes à son fichier de configuration :

listen-address 127.0.0.1:8118
forward-socks5t / USERNAME:PASSWORD@GATEWAY_HOST:GATEWAY_PORT .

Puis pointez Chrome vers l'écouteur HTTP local :

google-chrome --proxy-server="http://127.0.0.1:8118" --user-data-dir="$HOME/.chrome-privoxy-profile"

forward-socks5t conserve la résolution DNS du côté du proxy, ce qui est important lorsque vous vérifiez du contenu spécifique à une région.

Dépannage

  • ERR_PROXY_CONNECTION_FAILED : le pont n'est pas en cours d'exécution, le port est incorrect, ou Chrome est pointé vers le point de terminaison amont au lieu de 127.0.0.1.
  • Chrome ignore les options : un processus Chrome existant a peut-être avalé la nouvelle fenêtre. Fermez toutes les fenêtres Chrome et processus en arrière-plan, puis relancez. Un --user-data-dir distinct évite cela.
  • Les pages se chargent mais affichent votre véritable IP : confirmez que vous êtes dans le profil que vous avez lancé avec l'option. Les extensions qui contrôlent les paramètres de proxy, la politique d'entreprise et les scripts PAC peuvent remplacer le proxy de ligne de commande.
  • Identifiants rejetés en amont : encodez en pourcentage les caractères spéciaux dans le mot de passe (@ devient %40, : devient %3A) ou passez l'amont en options séparées si votre redirecteur les prend en charge.
  • Certains sites bloquent au premier chargement : le transfert SOCKS5 couvre TCP, pas UDP, et Chrome peut essayer QUIC sur UDP. Lancez avec --disable-quic si un site expire avant le rendu.
  • WebRTC expose les adresses locales : le proxy SOCKS5 ne couvre pas WebRTC. Réglez la gestion IP de WebRTC sur disable_non_proxied_udp via la politique d'entreprise, ou gérez-la avec une politique ou une extension de navigateur.
  • Pont accessible depuis votre réseau : liez toujours à 127.0.0.1, jamais 0.0.0.0. Quiconque peut atteindre l'écouteur peut utiliser votre compte proxy.

Résumé

Chrome ne peut pas envoyer d'identifiants SOCKS5, donc la réponse pratique est un pont local : gost ou Privoxy écoute en boucle locale, conserve le nom d'utilisateur et le mot de passe IPRoyal, et transfère le trafic de Chrome vers l'amont SOCKS5 authentifié. Vérifiez l'IP de sortie avec curl avant de lancer le navigateur, utilisez un --user-data-dir distinct, et redémarrez le pont chaque fois que vous avez besoin d'une nouvelle IP ou d'un autre pays.