Capita spesso che in una rete aziendale sia presente un proxy con autenticazione NTLM.
Tali proxy limitano il traffico nella rete e, in corrispondenza di parole riconosciute pericolose o collegate a contenuti non permissibili, bloccano l’accesso a determinati siti.
Si consideri ad esempio il caso in cui si vogliano cercare componenti analogiche: spezzando la parola si ottiene anal-ogiche. La prima parte può trarre in inganno il filtro sul proxy e bloccare l’accesso ai siti che trattano questo argomento.
In questo post vediamo come fare per superare i limiti imposti da una configurazione di questo tipo.
Occorrente:
- PC conesso sempre ad internet
- DynDNS (per avere sempre un associazione precisa tra nome e ip)
- Server ssh
- Server web (opzionale)
- proxytunnel installato sul client
- Software compatibili con proxy socks o plugin (FoxyProxy per Firefox)
Configurazione lato server
Lato server si può procedere in due modi:
- porre il demone di ssh-server in ascolto sulla porta 443
- usare apache come proxy
La prima soluzione è facile: basta aprire il file /etc/ssh/sshd_config e sostituire da:
Port 22
a:
Port 443
La seconda soluzione necessita di apache installato e dei seguenti moduli attivi:
- proxy
- proxy_http
- proxy_html
- proxy_connect
Fatto ciò bisogna aggiungere al virtual server selezionato per questo scopo le seguenti righe:
ProxyRequests on
AllowCONNECT 22 2022
ProxyVia on
<proxy *>
order deny,allow
allow from localhost
allow from IP_OR_NET
deny from all
allow from all
</proxy>
Tramite le chiavi allow e deny si può consentire l’accesso solo a determinati host.
E’ assolutamente indispensabile che apache sia attivo e in ascolto sulla porta 443 aggiungendo nel file /etc/apache2/ports.conf:
NameVirtualHost *:443
Listen 443
Configurazione lato client
Lato client la configurazione è molto semplice.
E’ necessario modificate il file ~/.ssh/config aggiungendo si seguenti campi:
Host <MIOSERVER>
DynamicForward 1080
ProxyCommand proxytunnel -v -p <PROXY_IP>:<PROXY_PORT> -P <USERNAME>:<PASSWORD> -t <DOMAIN> -r <MIOSERVER>:443 -d %h:%p -H "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)\n"
ServerAliveInterval 30
Create uno scritp in /usr/local/bin e chiamatelo, ad esempio, tunnel:
#!/bin/bash
ssh -D 8080 <MIOSERVER_IP>
A questo punto per connettersi è necessario digitare:
$ tunnel
e configurare tutti i software per usare un proxy socks con i seguenti parametri:
- Indirizzo IP: 127.0.0.1
- Porta: 8080
Buona Navigazione

davvero articolo molto interessanti stavo infatti cercando una soluzione in caso di proxy server aziendale con autenticazione..: ) nel campo va messo il dominio interno? ps: dovrò smanettare parecchio perché devo lavorare su windows senza diritti di amministratore quindi mi toccherà riuscerà a mettere un cygwin portable con ssh configurato