web-dev-qa-db-fra.com

Comment utiliser Socat comme serveur proxy?

J'aimerais que mon application .NET utilise un proxy que je sais faire, sauf .NET ne supporte pas Sock4a/Sock5. Je sais comment configurer mon application mais

Comment puis-je configurer la Socat à en tant que TCP proxy à la partie 1234 et utilisez le serveur Sock5 au 127.0.0.1:5678?

Il doit transmettre tout TCP Connect. J'ai eu la chance avec Privoxy plus tôt, mais qui prend uniquement en charge les connexions HTTP

PS: Je suis sur Windows mais les commandes doivent être identiques à Linux

5
user274

Vous n'avez pas spécifié l'hôte de destination que vous souhaitez vous connecter au serveur SOCKS. J'ai utilisé google.com sur le port 80 dans cet exemple.

socat TCP-LISTEN:1234,fork SOCKS4A:127.0.0.1:google.com:80,socksport=5678

Le TCP-LISTEN Adresse est le port pour écouter les connexions à partir de l'application .NET. 1234 est évidemment le numéro de port, et l'option fork permet de faire plusieurs connexions. Le SOCKS4A Adresse est le serveur de chaussettes et l'hôte de destination à se connecter. (Si vous ne voulez pas que le serveur Socks fasse une résolution DNS modifier SOCKS4A à SOCKS4.) 127.0.0.1 est l'adresse du serveur Socks et l'option socksport spécifie le port du serveur Socks. google.com:80 Est l'hôte de destination et le port pour demander au serveur Socks de se connecter.

6
mgorven