El otro día en el curro me iva fatal la conexión ADSL que utilizaba para funcionar con el único pc con Linux de la empresa (un laptop viejo que me cedieron en su día), por otro lado buscando un proxy en python para una idea que me ronda la cabeza encontré proxies que soportan la autenticación NTLM (NT Lan Manager) que es la usada por Windows y, por lo tanto, por el ISA server o Forefront, entonces se me encendió la bombilla, hice una busqueda rápida y efectivamente!! se puede validar un Linux contra un ISA server mediante un proxy que soporte NTLM, siempre y cuando el servidor de Microsoft tenga activada la opción de ser proxy web. En los repositorios de ubuntu hay varios, yo he elegido el cntlm. No es necesario añadir el pc Linux al dominio ya que conectaremos al proxy web pero ya que estamos ¿porqué no hacerlo?
Pasos a seguir
1-Añadir el pc al dominio mediante likewise-open
Como he dicho esto es OPCIONAL, y se puede obviar si no se dispone de una cuenta con suficientes privilegios para añadir elementos al Active Directory o simplemente no queremos que la máquina forme parte del mismo
- shell#: sudo aptitude install likewise-open5
- shell#: sudo domainjoin-cli dominio usuario_administrador_del_dominio
- shell#: sudo /etc/init.d/likewise-open restart
Si se desea añadir el usuario del dominio a sudo hay que editar /etc/sudoers y añadir una line del tipo DOMINIO\\usuario permisos
2- Instalar y configurar el proxy
Simplemente así
A- Instalar cntlm
shell#: sudo aptitude install cntlm
B -Editar/etc/cntlm.conf
shell#: sudo vi /etc/cntlm.conf
y establecer las variables: Username, Domain, Password, Proxy (Normalmete es ip_isa_server:8080)
C -Ejecutar
shell#: sudo cntlm -M http://abdulet.net (o cualquier url)
Default config file opened successfully
cntlm: Proxy listening on 127.0.0.1:3128
cntlm: Resolving proxy 192.168.50.37…
cntlm: Workstation name used: kubuntu
cntlm: Using proxy proxyserver:8080
Config profile 1/11… OK (HTTP code: 301)
—————————-[ Profile 0 ]——
Auth NTLMv2
PassNTLMv2 XXXXXXXXXXXXXXXXXXXXXXX
————————————————
cntlm: Terminating with 0 active threads
D -Vomver a editar /etc/cntlm.conf, pegar el texto en rojo ¿Qué… en donde? pues donde más rabia te de 😉 y además borrar la linea del Password en texto plano
E -Reiniciar el proxy
shell#: sudo /etc/init.d/cntlm restart
F -Configurar las aplicaciones para usar el proxy 127.0.0.1 puerto 3128 (estas opciones se puede cambiar en el archivo /etc/cntlm.conf). Para configurar el proxy para las aplicaciones en general hay que editar el archivo .profile
shell#: vi .profile
, añadir estas lineas
http_proxy=»http://localhost:3128″
ftp_proxy=»ftp://localhost:3128″
y volver a iniciar sesión
Y a disfrutar la navegación!!