{"id":458,"date":"2013-06-18T21:58:08","date_gmt":"2013-06-18T20:58:08","guid":{"rendered":"https:\/\/arliguy.net\/?p=458"},"modified":"2013-11-14T22:53:19","modified_gmt":"2013-11-14T21:53:19","slug":"proxy-socks-via-ssh-pour-firefox","status":"publish","type":"post","link":"https:\/\/arliguy.net\/2013\/06\/18\/proxy-socks-via-ssh-pour-firefox\/","title":{"rendered":"Proxy socks via SSH pour Firefox"},"content":{"rendered":"

En milieu hostile \u2014 victime de censure ou plus b\u00eatement connect\u00e9 depuis un wifi public, un h\u00f4tel, etc. \u2014 ou par volont\u00e9 de ne pas trop laisser les sites consult\u00e9s vous suivre g\u00e9ographiquement, il est pr\u00e9f\u00e9rable de pouvoir utiliser un proxy<\/a>. Dans le cas qui nous int\u00e9resse, nous allons utiliser un tunnel SSH<\/a> en tant que proxy SOCKS local pour le navigateur Mozilla Firefox<\/a>. C’est super simple, il suffit d’avoir un compte SSH qui tra\u00eene. Pour la suite de l’exercice, ce compte SSH sera nomm\u00e9 “tunnel<\/em>“.<\/p>\n

Ouvrir le tunnel<\/h2>\n

Pour cela, rien de plus simple, tu prends ta ligne de commande et tu tapes :<\/p>\n

~$ ssh -2NfCT -D 8080 tunnel@example.org<\/code><\/p>\n

Avec cette commande tu tu connectes en tant qu’utilisateur ‘tunnel<\/em>‘ sur la machine ‘example.org<\/em>‘ et le tunnel est accessible en local sur le port 8080. Pour v\u00e9rifier que le tunnel soit bien l\u00e0 :<\/p>\n

~$ netstat -apnt\r\n\r\n(Not all processes could be identified, non-owned process info\r\n will not be shown, you would have to be root to see it all.)\r\nActive Internet connections (servers and established)\r\nProto Recv-Q Send-Q Local Address           Foreign Address         State       PID\/Program name\r\n[\u2026]\r\ntcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      -               \r\ntcp        0      0 127.0.0.1:8080          0.0.0.0:*               LISTEN      4464\/ssh\r\n[\u2026]<\/pre>\n

Nous sommes content, il y a bien SSH sur le port 8080.<\/p>\n

V\u00e9rifier notre IP<\/h2>\n

Avant d’utiliser le proxy, nous allons v\u00e9rifier notre adresse IP publique. Car une fois que le navigateur sera configur\u00e9 pour utiliser le proxy, elle devra \u00eatre diff\u00e9rente et correspondre \u00e0 l’adresse IP du serveur SSH utilis\u00e9.<\/p>\n

Il existe une foule de service pour d\u00e9couvrir son adresse IP<\/a>, mais je vais utiliser le mien : ipso.me<\/a>. J’obtiens donc :<\/p>\n

\"IPso.me<\/a><\/p>\n

Configurer Firefox pour utiliser le proxy SOCKS<\/h2>\n

Dans Firefox, ouvrir le menu “Edit > Preferences” et dans la fen\u00eatre de dialogue choisir l’onglet “Advanced” puis “Network” et finalement le bouton “Settings” :<\/p>\n

\"Firefox<\/a><\/p>\n

Choisir l’option “Manual proxy configuration”, cela active toute une s\u00e9rie de champs de saisies. Dans le champ “SOCKS Host” y mettre “127.0.0.1”, notre adresse de loopback<\/a> (\u00e0 adapter selon configuration) et dans le champ “Port” y mettre “8080” qui est le port d’\u00e9coute du tunnel. Ensuite bien s’assurer que “SOCKS v5” est s\u00e9lectionn\u00e9, ainsi :<\/p>\n

\"Connection<\/a><\/p>\n

Tu penses en avoir fini, mais non<\/strong>, il manque le dernier d\u00e9tail qui tue : proxifier les requ\u00eates DNS. En effet, sur Firefox elles ne passent pas<\/strong> par d\u00e9faut via le proxy SOCKS. Il parait que d’autres navigateurs le font. Mais pour Firefox, il faut lui forcer la main. Pour cela, ouvrir (1) “about:config” (saisir “about:config” dans la barre d’adresse) puis rechercher (2) l’entr\u00e9e “network.proxy.socks_remote_dns” qui est \u00e0 “false” par d\u00e9faut. Double cliquer (3) sur la ligne correspondante pour passer la valeur \u00e0 “true” :<\/p>\n

\"about:config<\/a><\/p>\n

 <\/p>\n

V\u00e9rifier<\/h2>\n

Tu retournes sur ton site pr\u00e9f\u00e9r\u00e9 pour d\u00e9couvrir ton adresse IP<\/a> et voil\u00e0 :<\/p>\n

\"IPso.me<\/a><\/p>\n

Tout est pour le mieux dans le meilleur des mondes.<\/p>\n

Note : Il n’y a pas que Firefox dans la vie. Pour lancer Chromium en mode incognito<\/em> et pour qu’il utilise le proxy SOCKS sans fuite DNS, d’apr\u00e8s cette page du site chromium.org<\/a> il faut faire ainsi :<\/p>\n

~$ chromium-browser --incognito --proxy-server=\"socks5:\/\/127.0.0.1:8080\" --host-resolver-rules=\"MAP * 0.0.0.0\"<\/code><\/p>\n

 <\/p>\n","protected":false},"excerpt":{"rendered":"

En milieu hostile \u2014 victime de censure ou plus b\u00eatement connect\u00e9 depuis un wifi public, un h\u00f4tel, etc. \u2014 ou par volont\u00e9 de ne pas trop laisser les sites consult\u00e9s vous suivre g\u00e9ographiquement, il est pr\u00e9f\u00e9rable de pouvoir utiliser un proxy. Dans le cas qui nous int\u00e9resse, nous allons utiliser un tunnel SSH en tant … Continuer la lecture de Proxy socks via SSH pour Firefox<\/span> →<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[27,42,52],"tags":[],"_links":{"self":[{"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/posts\/458"}],"collection":[{"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/comments?post=458"}],"version-history":[{"count":0,"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/posts\/458\/revisions"}],"wp:attachment":[{"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/media?parent=458"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/categories?post=458"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/arliguy.net\/wp-json\/wp\/v2\/tags?post=458"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}