viernes, 30 de mayo de 2008

md5

MD5 es un algoritmo de reducción criptográfico de 128 bits, que nos permite entre otras muchas cosas, comprobar la integridad de un fichero. Es muy útil cuando copiamos ficheros entre sistemas, para verificar que no se han producido errores.Veamos un ejemplo:Necesitamos copiar(scp, siempre!!!), descargar... el fichero postfix_2.3.8.orig.tar.gz desde la máquina stewie a la máquina brian. Primero generamos la suma md5 en la máquina origen.
[user@stewie]#md5sum -b postfix_2.3.8.orig.tar.gz | awk '{ print $1 }' > postfix.md5
[user@stewie]#cat postfix.md5
[user@stewie]#a6c560657788fc7a5444fa9ea32f5513

Luego copiamos el fichero a la máquina destino
[user@stewie]# scp postfix_2.3.8.orig.tar.gz user@brian:/tmp
Generamos la suma md5 y comprobamos el resultado.
[user@brian]#
md5sum -b postfix_2.3.8.orig.tar.gz | awk '{ print $1 }' > postfix2.md5
[user@brian]#diff postfix.md5 postfix2.md5
Si el resultado es positivo , diff no devuelve nada.Supongamos que el fichero es alterado en el proceso de copia.Aplicamos diff de nuevo, y obtendríamos:
[user@brian]#diff postfix2.md5 postfix.md5
1c1
< aa6c560657788fc7a5444fa9ea32f5513
---
> a6c560657788fc7a5444fa9ea32f5513

Probablemente esto no sirva de mucho a Administradores poco avispados, pero si lo sois ,o simplemente quereis verificar la integridad de vuestras copias o ficheros...aplícate md5sum!
Saludos! I'm back!

viernes, 23 de mayo de 2008

SSH



Muchos Administradores, piensan que sólo con usar OpenSSH para realizar las conexiones remotas a las máquinas GNU/Linux-Unix que administran, es suficiente.
Como la experiencia es un grado, nunca esta de más, securizar la máquina, sobre todo si está expuesta a una red como Internet, o los servicios de acceso remoto están habilitados.
Durante los dos últimos días, he revisado mis notas y apuntes sobre el uso de claves públicas/privadas en las conexiones SSH; he actualizado las configuraciones en las máquinas que no utilizaban RSA. Estos dos enlaces me ha ayudado a refrescar cosillas: [ 1 ] , [ 2 ] . Sé que no soy nadie para dar consejos, pero os recomiendo utilizar llaves RSA en vuestras conexiones SSH.

Saludos!

martes, 20 de mayo de 2008

Habemus Mac!

Fumata blanca...Habemus Mac! Después de 3 años de lucha y espera, ayer 19 de Mayo de 2008, he comprado el Mac Book.
Impresiones. Espectacular.Sin lanzar las campanas al vuelo, y desde el punto de vista de un usuario GNU/Linux desde hace unos 7 años, tanto el hardware como el software impresionan.Mac OS X es muy muy sencillo de utilizar.Resumiendo, las cosas simplemente funcionan.Echo de menos el apt-get...En breves, en unos 10 días que es lo que me he dado de plazo con este S.O, instalaré Debian GNU/Linux.
Saludos.

viernes, 9 de mayo de 2008

Dynamic MMap ran out of room APT::Default-Release "stable"; APT::Cache-Limit "141943904";

He localizado el siguiente error al incorporar al sources.list fuentes de testing y stable: E: Dynamic MMap ran out of room

Solucion: Crear fichero apt.conf si no existe, y añadimos:
APT::Default-Release "stable";
APT::Cache-Limit "141943904";
Evidentemente si tu disto no es stable.....cambia APT::Default-Release

Compilar paquetes "al vuelo"

Creo recordar una entrada en este blog con apt-build.Una aplicación muy útil,que compila "automáticamente" el paquete para la arquitectura y características de tu máquina.Esta mañana, en www.debian.org, he visto una reseña a algunas características de apt-get,frecuentemente olvidadas.Entre ellas la opción source, que básicamente descarga los fuentes y luego los compila.Veamos un ejemplo.Antes de nada comentar que en /etc/apt/sources.list debemos tener una entrada para el repositorio de fuentes, como podemos ver en el ejemplo, la línea comienza por deb-src
[root@localhost] cat /etc/apt/sources.list
deb http://ftp.rediris.es/debian testing main contrib non-free
deb-src http://ftp.rediris.es/debian testing main contrib non-free
Ahora actualizamos los fuentes:
[root@localhost] apt-get update
Descargamos por ejemplo los fuentes de postfix,y con el parámetro -b, indicaremos a apt-get que también lo compile.
[root@localhost]apt-get -b source postfix
Es posible que para compilar el paquete, existan dependencias no resueltas, para ello:
[root@locahost]apt-get build-dep postfix
Ejecutamos de nuevo :
[root@locahost]apt-get -b source postfix
Esperamos unos minutillos,depende de la máquina.Las pruebas las he hecho en un DELL Optiplex GX520, con un Pentium Dual Core 2,8 Ghz y 2 GB RAM 533, y en 3 minutos, tema resuelto.
Hacemos un ls -l en el directorio actual:
[root@localhost]ls -l
total 5720
drwxr-xr-x 19 root root 4096 may 9 09:12 postfix-2.5.2~rc2
-rw-r--r-- 1 root root 218123 abr 14 18:47 postfix_2.5.2~rc2-1.diff.gz
-rw-r--r-- 1 root root 1022 abr 14 18:47 postfix_2.5.2~rc2-1.dsc
-rw-r--r-- 1 root root 3658 may 9 09:13 postfix_2.5.2~rc2-1_i386.changes
-rw-r--r-- 1 root root 1159202 may 9 09:13 postfix_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 3154538 abr 14 18:47 postfix_2.5.2~rc2.orig.tar.gz
-rw-r--r-- 1 root root 39732 may 9 09:13 postfix-cdb_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 139600 may 9 09:13 postfix-dev_2.5.2~rc2-1_all.deb
-rw-r--r-- 1 root root 909570 may 9 09:13 postfix-doc_2.5.2~rc2-1_all.deb
-rw-r--r-- 1 root root 46910 may 9 09:13 postfix-ldap_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 41734 may 9 09:13 postfix-mysql_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 41516 may 9 09:13 postfix-pcre_2.5.2~rc2-1_i386.deb
-rw-r--r-- 1 root root 41798 may 9 09:13 postfix-pgsql_2.5.2~rc2-1_i386.deb
Instalamos el paquete:
[root@localhost]dpkg -i postfix_2.5.2~rc2-1_i386.deb

Fácil,pues ya sabeis, a compilar.

martes, 6 de mayo de 2008

HeartBeat Debian Etch

Hoy en instalado mi primer HA en GNU/Linux.Es algo sencillo.Un cluster de alta disponibilidad, con dos máquinas, corriendo vsftpd. En unas 2 horas tenía el cluster HA listo.La idea general es esta:
  • 2 Servidores con Debian GNU/Linux Etch 4.0 .
  • vsftpd en las dos máquinas.
  • sist-02.elzulo.org : 192.168.10.50
  • mail.elzulo.org: 192.168.10.200
  • Una única dirección IP transparente al usuario: 192.168.10.125
  • Cuando el servidor Master no se encuentre operativo, el Esclavo pasa a dar servicio FTP.
  • Heartbeat es el software instalado.
Lo primero es instalar el software vsftpd y comprobar que funcione en ambos servidores.Fácil.
Después instalamos heartbeat.El directorio de configuración es /etc/ha.d.

  1. Creamos en este directorio authkeys
auth 1
1 crc
[Contenido /etc/ha.d/authkeys]
2. Creamos el fichero ha.cf para cada una de las máquinas del Cluster HA.
Este fichero es el de mail.elzulo.org(supuesto host,ya que no está operativo).
debugfile /var/log/ha-debug
ping 192.168.10.254
logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 30
warntime 10
initdead 120
udpport 694
mcast eth0 225.0.0.1 694 1 0
ucast eth0 192.168.10.200
auto_failback on
node sist-02.elzulo.org
node mail.elzulo.org
bcast eth0
3. Creamos el fichero /etc/ha.d/haresources en el que indicaremos el servidor Master o Principal en este caso :
sist-02.elzulo.org 192.168.10.125 vsftpd

4. /etc/init.d/heartbeat restart

Faltan un montón de historias, pero como toma de contacto no está nada mal,verdad?

viernes, 2 de mayo de 2008

DELL PowerEdge R300 + Debian Etch 4.0 Estable

El motivo de este post es desmitificar el comentario "No existen drivers para Linux".
Antecedentes: El cliente necesita instalar una DMZ, con Proxy-Firewall en un Servidor GNU/Linux.Obviamente, antes de nada es necesario comprobar que los componentes de la máquina son compatibles con el Kernel de Linux.El Servidor es un DELL R300, muy similar al 1950, con las siguientes características:
  • 1 Procesador Intel Quad Core 2,50 Ghz(4 Nucleos)
  • 2 GB RAM DDR 667 Mhz
  • 2 x 160 SATA RAID 1
  • 2 x BroadCom NetExtremr Gigabit Ethernet
  • 2 x Intel Gigabit Ethernet
La distribución que se instalará en la máquina es una Debian Etch 4.0 r3.Siempre instalo el S.O desde el CD NetInstall, pero en este caso,como comprobareis más adelante, no fue posible.Para ello, en mi cartuchera de CDs suelo llevar un CD1 de x86 y otro de x86_64 por lo que pueda pasar.Al intentar instalar desde NetInstall me llevo una "sorpresilla" al comprobar que no detecta la tarjeta de Red.PANICO!.Mucha gente, en este caso, se haría eco de la afirmación inicial de este post "No existen drivers para Linux" y abandonaría la instalación.ERROR!.Seamos sensatos.Broadcom es uno de los fabricantes con mayor presencia de chipsets en el campo de servidores junto con Intel y demás.De verdad creéis que no han desarrollado drivers para Linux de las NetExtreme?.
Desarrollo: En la mayoría(85%) de los servidores y máquinas que instalo Debian GNU/Linux compilo el Kernel y las aplicaciones con apt-build.Sí, es una labor tediosa; pero los resultados en lo referente al rendimiento son espectaculares.A las 11:05 de la mañana, desde consola y como root:
[root@fw-empresax]: apt-get install binutils e2fsprogs gcc make module-init-tools procps util-linux kernel-package initrd-tools libncurses5-dev
En principio no debería tener ningún problema...En este tipo de afirmaciones siempre suelo colar un "En principio", por si hay que retractarse de lo dicho anteriormente.Pues sí: marrón.El paquete libncurses5-dev no está en el CD1 de Etch 4.0 r3. Solución: muy fácil, nos vamos a http://packages.debian.org y descargamos el paquete a un pendrive, desde consola y como root:
[root@fw-empresax]: dpkg -i libncurses5-dev
Ahora procedemos a instalar la última versión del kernel de linux, en este caso la 2.6.25.1.
[root@fw-empresa]:cp /tmp/linux-2.6.25.1.tar.gz /usr/src && cd /usr/src
[root@fw-empresa]: tar zxvf linux-2.6.25.1
[root@fw-empresa]: ln -s /usr/src/linux-2.6.25.1 /usr/src/linux
[root@fw-empresa]:make menuconfig

Seleccionamos los drivers de Broadcom como módulo del kernel(*).
[root@fw-empresa]: make-kpkg --initrd kernel_image
Esperamos unos 10 minutos ...et voilá!Son las 12:20 y ya tengo el S.O running!!!
[root@fw-empresa]: dpkg -i linux-image-2.6.25.1.deb && reboot
Desenlace: Es cierto que hemos tenido que recompilar el kernel,copiar un paquete .deb desde un USB, pero tenemos Debian GNU/Linux instalado en la máquina funcionando correctamente.Evidentemente estos pasos no son del todo sencillos, pero con un poco de paciencia todo es posible.