Un server SOCKS è un particolare tipo di proxy che permette di effettuare connessioni TCP dirette (e, dalla versione 5, di veicolare traffico UDP) tra computer su due reti IP differenti nei casi in cui un instradamento diretto (routing) non sia disponibile. È l’abbreviazione di “SOCKetS”.
I punti di forza del protocollo SOCKS sono l’estrema semplicità di implementazione (sia dal lato client che dal lato server) e la completa indipendenza dal protocollo da veicolare attraverso di esso.
Visto che SOCKS (come è stato già detto in precedenza) trasferisce tutti i dati da un client a un server, senza aggiungere informazioni, dal punto di vista di un web-server, un proxy SOCKS è un client. Pertanto l’anonimato di questo tipo di proxy server è davvero sempre assoluto.
In questo articolo vedremo come utilizzare redsocks per ottenere un proxy SOCKS.
Redsocks consente di reindirizzare qualsiasi connessione TCP attraverso un proxy SOCKS o HTTPS utilizzando il vostro firewall, in modo che il reindirizzamento sia a livello di sistema.
Un altro problema correlato è il protocollo DNS su TCP. Redsocks include `dnstc’ che è un server DNS falso e davvero stupido, che restituisce” risposta troncata “ad ogni query tramite UDP. I resolver che sono RFC-compliant ripetono la stessa query tramite TCP, in questo caso – la richiesta può essere reindirizzata come al solito utilizzando la struttura di redsocks.
Perché è così utile? questi sono alcuni esempi di utilizzo:
- si usa tor e non volete che qualche connessione TCP non lo utilizzi
- si utilizza DVB ISP e questo ISP fornisce la connettività Internet con qualche demone speciale che può essere chiamato anche “acceleratore Internet” e questo acceleratore agisce come proxy. Globax è esempio di un acceleratore
Linux/iptables, OpenBSD/pf e FreeBSD/ipfw sono supportati. Linux/iptables è ben collaudato, altre implementazioni possono avere bug.
Installazione e configurazione di base
Per Debian/Ubuntu aprire un terminale e dare i seguenti comandi:
sudo apt-get install iptables git-core libevent libevent-dev git clone http://github.com/darkk/redsocks.git cd redsocks/ make echo 'base{log_debug = on; log_info = on; log = "file:/tmp/reddi.log"; daemon = on; redirector = iptables;} redsocks { local_ip = 127.0.0.1; local_port = 31338; ip = 127.0.0.1; port = 31337; type = socks5; }' > redsocks.conf ./redsocks -c redsocks.conf |
Per Redhat/Centos/Fedora aprite un terminale ed eseguite :
yum install iptables libevent libevent-dev wget -O redsocks --no-check-certificate https://github.com/darkk/redsocks/zipball/master unzip redsocks cd /usr/local/redsocks/darkk-redsocks-8839230 #il numero potrebbe cambiare in futuro. make echo 'base{log_debug = on; log_info = on; log = "file:/tmp/reddi.log"; daemon = on; redirector = iptables;} redsocks { local_ip = 127.0.0.1; local_port = 31338; ip = 127.0.0.1; port = 31337; type = socks5; }' > redsocks.conf ./redsocks -c redsocks.conf |
Questa configurazione di base imposta un proxy socks5 su localhost porta 31337.
Configurazione di Iptables
Ora dobbiamo configurare il nostro firewall locale con le seguenti regole, suggerisco di metterle in un file e poi eseguirlo.
#!/bin/bash # Creare una nuova chain iptables -t nat -N REDSOCKS # Ignora LANs e alcuni altri indirizzi riservati. iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN iptables -t nat -A REDSOCKS -d 224.0.0.0/4 -j RETURN iptables -t nat -A REDSOCKS -d 240.0.0.0/4 -j RETURN # Tutto il resto dovrebbe essere reindirizzato alla porta 31338 iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-ports 31338 # Qualsiasi connessione tcp fatta da `linuxaria ' dovrebbe essere reindirizzato. iptables -t nat -A OUTPUT -p tcp -m owner --uid-owner linuxaria -j REDSOCKS |
Start e Stop di redsocks
Per far partire redsocks e iptables:
/path/tothe/bin/redsocks -c redsocks.conf /path/tothe/bin/iptables-redsocks.sh |
Per fermare redsocks e iptables:
sudo iptables -F sudo iptables -X sudo iptables -Z sudo iptables -t nat -F sudo iptables -t nat -X sudo iptables -t nat -Z killall redsocks |
Conclusioni
Ora – tutto il traffico in uscita passerà in maniera trasparente attraverso redsocks al nostro proxy socks5 .
E grazie ad iptables non è necessario modificare le configurazioni delle applicazioni!
Popular Posts:
- Nightingale un bellissimo riproduttore audio per Linux
- Livarp – Una distribuzione Linux molto leggera
- (English) Linux shell: Dfc – Check your disk space with style
- Come convertire facilmente i Video di Youtube ad MP3 su GNU/Linux
- 5 Visualizzatori di fumetti per Linux
Find me on Google+

In the “Installation e basic configuration” section, your blogging software has converted “>” (greater-than) into “& gt ;” (without spaces – ampersand, “g”, “t”, semi-colon).
You just made my life easier friend. Thanks! Now it won’t take long for me to figure everything. It’s all here. Just good.