Archivo de la etiqueta: Sysadmin

Configurar Linux como cliente web de Microsoft ISA Server o Forefront en 5 pasos

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!!

Como evitar las contraseñas al iniciar sesión en Gnome, también la de la wifi ;)

Aún que no sea lo más seguro, la verdad es que cansa tener que escribir la contraseña cada vez que enciendo el ordenador, sobre todo cuando no tengo nada que esconder en él y si alguien lo necesita se encuentre con este tipo de problemas, así que voy a explicar como hacer que Gnome no pida ningún tipo de contraseña, ni para iniciar sesión ni para conectarse a Internet o usar alguna de las contraseñas que están almacenadas en el anillo de claves. Sigue leyendo

Routerconfigs de cacti no se ejecuta automáticamente

Me he encontrado con este problema y ha resultado ser un fallo en la gestión de la base de datos, routerconfigs establece una opción global que indica si ya se está ejecutando un proceso en de backups. Por algún motivo (posiblemente alguna de mis pruebas mientras desarrollaba las modificaciones para soportar ssh) esta variable se quedó establecida a 1 y esto impide la ejecución automática de este plugin. La variable es «plugin_routerconfigs_running» y se encuentra en la tabla «settings» de la base de datos de cacti, para comprobar su valor ejecutar desde un terminal:

mysql -u cacti -p cacti -e «select * from settings where name=’plugin_routerconfigs_running’;»
Enter password:
+—————————————+——-+
| name                                                      | value |
+—————————————+——-+
| plugin_routerconfigs_running   | 1         |
+—————————————+——-+

Si la columna value está establecida a 1 routerconfigs no se ejecutará así que para solucionarlo tan solo hay que ejecutar:

mysql -u cacti -p cacti -e «REPLACE INTO settings (name, value) VALUES (‘plugin_routerconfigs_running’, 0);»
Enter password:

Y para asegurar que todo ha ido bien

mysql -u cacti -p cacti -e «select * from settings where name=’plugin_routerconfigs_running’;»
Enter password:
+—————————————+——-+
| name                                                      | value |
+—————————————+——-+
| plugin_routerconfigs_running   | 0         |
+—————————————+——-+

Con esto routerconfigs se debería ejecutar a la perfección ;)…

O al menos eso pensaba… jejeje tras un día de ejecución volvió a fallar con el mismo resultado así que algo en el código no funciona como debe… entro en modo debugging debugging debugging uuuups que me me sa metio un bug 😛 bueno pues eso tras unas horas de estudio del código y debuggings varios hay un caso en el que un include hace un return antes de hacer el replace pertinente en esta tabla. El archivo en cuestión es el router-download.php, en la línea 66 encontramos un return solito dentro de un else tal que así

if (!empty($devices)) {

.

.

.

} else {
return;
}

para solucionar el problema el else debe quedar de esta otra forma

} else {
db_execute(«REPLACE INTO settings (name, value) VALUES (‘plugin_routerconfigs_running’, 0)»);
return;
}

Y ahora sí con esto va como la seda os lo juro que ya lleva meses rulandooooo

byte byte my nerds 😛

Como activar/desactivar Ctrl+alt+backspace en Xorg

En Ubuntu (9,04) Jaunty jackalope han decidido desactivar el reinicio del servidor Xorg mediante la combinación de teclas Ctrl+alt+backspace. Esto es algo que suelo utilizar bastante así que buscando un poco por internet encontré la manera de volver a activarlo, hay dos opciones una es intalando la aplicación dontzap. Pero para quien, como yo, no quiera instalar una aplicación para gestionar una opción del servido Xorg, tan solo hay que establecer la opción del servidor X DontZap editando el fichero /etc/X11/xorg.conf y añadiendole estas lineas:

Section «ServerFlags»
Option «DontZap» «false»
EndSection

La opción DontZap indica al servidor Xorg que no capture la pulsación de esta combinación de teclas, si la establecemos a false (siguiendo la lógica de doble negación) estaremos activando la combinación, para desativarla de nuevo tan solo hay que establecer la opción a «true» o borrar estas lineas 😉

Compilar madwifi para injectar paquetes con el chipset AR5008 de atheros en Ubuntu 9.04 (Jaunty)

1-Pasos rápidos (Todo está explicado en detalle en el siguiente punto)

  • SO:  Ubuntu 9.04 jaunty (ejecuta el comando lsb_release -a para obtenerla)
  • Tarjeta wifi: Atheros Communications Inc. AR5008 Wireless Network Adapter (rev 01) (ejecuta el comando lscpi)
  • Kernel: 2.6.28-11-generic (obtenido mediante el comando uname -a)
  • gcc del kernel: gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4) (ejecuta: cat /proc/version)

Para los que tengan esta versión de ubuntu aquí dejo un paquete con el driver listo para ser usado 😉 madwifi-hal-01056-r4003_20090416-1_i386

1-Obtener los drivers de madwifi-hal de la página de snapshots del projecto madwifi

2-Obtener el parche desde esta web r3745-corregido o mediante la orden:

wget http://patches.aircrack-ng.org/madwifi-ng-r3745.patch

3-Preparar, compilar el código, cargar el módulo y probar la injección

cd src

tar zxf madwifi-hal-0.10.5.6-current.tar.gz

cd madwifi-hal-0.10.5.6-r4003-20090416/

sudo aptitude install patch

patch -p1 < ../r3745.patch-corregido

make && sudo make install

sudo modprobe -r ath9k && sudo modprobe ath_pci

sudo airmon-ng start wifi0

Found 5 processes that could cause trouble.
If airodump-ng, aireplay-ng or airtun-ng stops working after
a short period of time, you may want to kill (some of) them!

PID    Name
2834    wpa_supplicant
2851    avahi-daemon
2852    avahi-daemon
5332    NetworkManager
9426    dhclient
Process with PID 9426 (dhclient) is running on interface ath0

Interface    Chipset        Driver

wifi0        Atheros        madwifi-ng
ath0        Atheros        madwifi-ng VAP (parent: wifi0)
ath1        Atheros        madwifi-ng VAP (parent: wifi0) (monitor mode enabled)

sudo aireplay-ng -9 ath1
18:25:52  Trying broadcast probe requests…
18:25:52  Injection is working!
18:25:54  Found 5 APs

Perfecto listo y funcionando 😉

Sigue leyendo