Vamos a suponer uno de los escenarios mas restrictivos, tenemos un proxy ISA que exige autenticación de usuario y además sólo permite Kerberos y NTLM.
Necesitaremos un Ordenador que esté en internet (nuestro), y abramos algun puerto. Este esquema nos permitirá cierto nivel de anonimato (hasta este ordenador claro) ya que haremos SSL entre los extremos de la comunicación. El esquema en detalle sería:
PC Corporativo <=> Proxy ISA Corporativo <=> Internet <=> Pc en casa
Elementos que estarán en el PC Corporativo:
Firefox con ProxyProxy => Proxy Socks conectado a Proxy SSL => Proxy SSL conectado a Proxy NTLM => Proxy NTLM conectado a Proxy corporativo (con DOMINIO\usuario y password)
Elementos de nuestro PC conectado a Internet (en casa mipc.dyndns.org):
ProxySSL => SSH => Proxy Socks
(En este caso en lugar de un PC se empleará un WRT54G de Linksys (ahora Cisco), cuya ip interna por ejemplo será 10.0.0.1 que permite la instalación de todo lo necesario y no consume apenas energía).
Configuración de cada elemento en el PC corporativo:
Proxy Socks: Emplearemos el cliente SSH para crear un tunel SSH y dejar un puerto en escucha conectado al proxy Socks del pc en casa, el comando será:
proxytunnel -q -a 22000 -p localhost:3129 -e -d mipc.dyndns.org.com:8443 -H
"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0;
Win32)"
cntlm.exe -a NTLMv2 -u USUARIO@DOMINIO -I -l localhost:3129 PROXY:80
Configuración de cada elemento en el PC de casa:
En el WRT54G configuramos el SSL (/etc/stunnel/stunnel.conf):
accept = 8443
connect = 22
TIMEOUTclose = 0
El SSH no requiere de ninguna configuración especial
Configuramos el proxy Socks (/etc/srelay.conf):
Rango_IP/24 any -
Si todo ha ido bien, desde el firefox con foxy proxy del pc corporativo si vamos a www.cualesmiip.com veremos la ip publica de nuestra casa (y no la pública de la empresa) si es así, es que todo ha funcioando bien.
Es posible que la conexión se corte en pocos segundos de inactividad (60 o tal vez menos), es debido a que el proxy corporativo corta las conexiones que no tienen tráfico en un tiempo, podemos lanzar un script como este para evitar el corte (ya que el script pone la hora cada N segundos en la shell que dejamos conectada):
then
tiempo=10
else
tiempo=$1
fi
while true
do
echo -------------------
date
sleep $tiempo
done
No hay comentarios:
Publicar un comentario