Eliminando ataques de diccionario con Exim

Recientemente empecé a experimentar ataques al puerto SMTP con miles de correos con nombres generados al azar, los así llamados ataques de diccionario. Encontré una solución que fue milagrosa. Los ataques cesaron prácticamente de inmediato. Reproduzco la configuración hecha en exim4.

Edita /etc/exim4/conf.d/acl/30_exim4-config_check_rcpt y agrega,

# Drop the recipient if the previous attempt failed
drop
   condition = ${if = {${eval:$rcpt_fail_count}}{1}{yes}{no}}
   message = too many bad recipients
   delay = 2m

justo después de aceptar una conexión autenticada. Actualiza y reinicia exim4,

# update-exim4.conf
# /etc/init.d/exim4 restart

La condición es igual a "yes" después del primer fallo. Aparentemente la demora impuesta por la condición (2 minutos) es muy costosa para el emisor del mensaje fallido. Tanto así, que los ataques cesan rápidamente.

Instalando Debian en un SUN UltraSparc 10

Heredé un SUN UltraSparc 10 de 64 bits. Naturalmente mi primer instinto fue instalarle Debian.

El cargador de arranque se llama OpenBoot, al cual se accede oprimiendo Stop+A. El prompt es ok. Para arrancar el CD-ROM con el CD de instalación de Debian simplemente corre,

ok boot cdrom

El primer obstáculo que encontré es que la máquina tiene dos tarjetas gráficas, una integrada a la placa madre y otra PCI. El instalador de Debian parte en VGA, pero luego cambia a frame buffers. Al hacer el cambio, también cambia de tarjeta gráfica, por lo que la instalación se detiene y la pantalla muestra,

console handover: boot [earlyprom0] -> real [tty0]

Existen varias maneras de sobrepasar este obstáculo, incluyendo el remover la tarjeta PCI, pero la mejor opción es deshabilitar la tarjeta gráfica integrada. En OpenBoot simplemente se da el comando,

ok setenv pcib-probe-list 1,3

(para volver a habilitarla: setenv pcib-probe-list 1,2,3)

Un nuevo obstáculo apareció. Al ser el CD-ROM SCSI, el instalador no lo monta como tal, sino que intenta montarlo como IDE, lo que naturalmente falla. La instalación no puede continuar sin medio de instalación.

Decidí explorar el arranque del instalador por red. Esto requiere tener un segundo computador, al que llamaremos remoto.

Instala en el computador remoto los paquetes rarpd y tftpd. Edita /etc/ethers (no existe) y agrega en una línea la dirección MAC y número IP del computador SUN,

xx:xx:xx:xx:xx:xx 192.168.2.2

Descarga la imagen,

$ wget http://ftp.cl.debian.org/debian/dists/stable/main/installer-sparc/current/images/netboot/boot.img

En el computador SUN, arranca por red,

ok boot net

En el computador remoto observa los registros de tftpd en /var/log/syslog. El arranque por red intenta recoger una imagen con un nombre único que identifica a la máquina,

tftpd: trying to get file: 80C1529D

Mueve la imagen con el nombre indicado a /srv/tftp/,

# mv boot.img /srv/tftp/80C1529D

Voilá!

Chile cuenta nuevamente con réplica oficial ftp.cl.debian.org

Chile cuenta nuevamente con réplica oficial ftp.cl.debian.org. Esta vez es el patrocinador de debian.netlinux.cl (Netlinux) quien se ha adjudicado el honor.

Si bien la otrora réplica oficial (debian.ciencias.uchile.cl) cumplió un rol importante en la distribución de Debian en Chile desde su fundación en 1999, el continuo estrangulamiento del acceso por parte del patrocinador decidió, al final, la perdida del gran honor que significa ser réplica oficial. Esta experiencia ojalá sirva de lección.

Esperamos que Netlinux patrocine ftp.cl.debian.org por muchos años venideros. Le deseamos la mejor de las suertes.

chkrootkit informa de una falsa infección en el puerto 1008

# chkrootkit
...
Checking `bindshell'... INFECTED (PORTS: 1008)
...

sucede porque rpc.statd utiliza el puerto 1008, lo que confunde a chkrootkit. Edita /etc/default/nfs-common y modifica el puerto a 1023,

STATDOPTS="--port 1023"

luego reinicia el servidor NFS,

# /etc/init.d/nfs-kernel-server restart

Corre chkrootkit y verás que el falso-positivo desaparece.

Debian decide adoptar un nuevo ciclo de desarrollo, basado en un intervalo temporal de dos años

Fuente: esDebian (http://www.esdebian.org/)

El Proyecto Debian ha decidido adoptar una nueva política de congelación para futuros lanzamientos, basada en un ciclo temporal de dos años. A partir de ahora las congelaciones se producirán en diciembre de cada año impar, lo que conlleva a que cada lanzamiento se producirá en la primera mitad de cada año par. A consecuancia de esto, la siguiente congelación de Debian se llevará a cabo en diciembre de 2009, y la nueva versión se espera para la primavera de 2010. El Proyecto eligió diciembre como fecha para la congelación porque se muestran satisfechos con los antecedentes de las versiones publicadas en primavera (Debian 4.0 y Debian 5.0).

El ciclo temporal de congelación de dos años, permitirá al Proyecto Debian combinar la previsibilidad de los lanzamientos basados en ciclos temporales con su ya bien establecida política de lanzamientos basados en funcionalidades y características. El nuevo ciclo de desarrollo proporcionará a los usuarios de Debian una mejor previsibilidad de lanzamientos, y también permitirá a los desarrolladores llevar a cabo mejores planificaciones a largo plazo. Un ciclo de lanzamento de dos años, dará más tiempo para los grandes cambios que se pudieran realizar, reduciendo así los posibles inconvenientes que se causaría a los usuarios. Tener un ciclo de congelación conocido, contribuirá además a reducir el periodo total de congelación.

Debido a que el último lanzamiento de Debian fue el 14 de febrero de 2009, habrá aproximadamente un periodo de un año hasta su nueva publicación: Debian GNU/Linux 6.0 (nombre en clave "squeeze"). Habrá pues una única excepción en la política de dos años para ajustarse al nuevo periodo de lanzamiento. Para falicitarle las cosas a las grandes organizaciones y otros usuarios que prefieren un periodo de actualización largo, el Proyecto Debian planea la posibilidad de poder saltarse la próxima versión (la 6.0 "squeeze") y preparar un método para poder actualizar directamente desde la versión 5.0 "lenny" a la versión 7.0 (aun sin nombre).

Aunque la próxima congelación no está ya muy lejana, el Proyecto Debian espera poder conseguir ciertos objetivos destacados hasta entonces. Los que se han considerado como más importantes son, soporte para multiarquitectura, que mejorará la instalación de paquetes de 32 bits en sistemas de 64 bits, y un proceso de arranque optimizado con mejor rendimiento y fiabilidad.

La nueva política de congelación ha sido propuesta y aceptada durante la Conferencia Anual del Proyecto Debian, DebConf, la cual está teniendo lugar en Cáceres (España). La idea ha sido bien recibida entre los miembros del proyecto asistentes.

Notas para DebianEeePc en 2Gb

Les comento una experiencia con la instalación de DebianEeePc para un ASUS EeePc.

La máquina tiene 800 MHz, Intel Celeron, 512 Mb DDR2 RAM y 2 Gb de disco duro.

Anteriormente había instalado XUbuntu con el escritorio XFce 4. Decidí cambiarlo dado que los pocos 2 GB de disco duro sencillamente se agotaron. Entre los programas más grandes estaba Firefox, Abiword y Synaptic. Y necesitaba un programa de presentaciones pero ya no había espacio.

Pues bien estuve buscando y existe variada información. Algunas páginas que me sirvieron fueron:

http://compartirlinux.blogspot.com/2009_01_01_archive.html

http://www.kriptopolis.org/mini-comparativa-sistemas-operativos-eeepc?pa...

No fue fácil la elección, basicamente fui descartando por estabilidad y eficiencia. Escogí Debian EeePc!

La instalacción comenzó no partió muy bien. La instalacción demoró más o menos una hora en la descarga de los paquetes (conexión de 3 Mgps) en el repositorio de Debian UChile y luego uno de Estados Unidos. Lo peor es que comenzó a arrojar errores (pantalla roja), irreversible.

Opté por la instalación básica disponible en las opciones de la misma distro. Instaló lo básico sin escritorio... pero bueno ya había Debian!

Instalé como escritorio XFce 4, ligero y eficiente. Luego algunos programas de escritorio fundamentales para mis actividades: Abiword (ligero) y KPresenter. Para reproducción de audio y video VLC. Nevegador Iceweasel (basicamente lo mismo que firefox, pero sin este nombre con derechos reservados). ALSA para los paquetes de audio.

Para hacer funcionar la conexión a internet por WiFi instalé "madwifi" uno de los recomendados... pero todavía estoy tratando de configurarlo...

http://wiki.debian.org/DebianEeePCSpanish

Sin embargo instalé "wifi-radar" -ya el encendido y apagado de la antena había quedado bien configurados con el hardware, lo mismo que el uso del resto de las combinacions Fn+- y funcionando!

Finalmente quedé con 200 Mb libres... uff. Tal vez instale algún programa de mensajería como pigdin, pero por ahora está impecable para mis necesidades.

Archivos *.3gp en Debian

Después de un fin de semana bastante peculiar, me dedique a revisar los videos grabados desde mi celular con un amigo..., luego los pase al computador y al querer verlos grande fue mi sorpresa que no se escuchaban, pese a que en el celular sí, y para no aburrir más la respuesta es fácil: necesitamos de ffmpeg;

Caturra:/home/CdK1# apt-get install ffmpeg

;)

Experiencia con Dropbox en Debian Lenny

Por consejo de un amigo instalé Dropbox en mi pc:

https://www.getdropbox.com/

Dropbox es un disco duro online con una capacidad de 2GB gratuitos (luego se puede contratar más espacio) que se integra muy amigablemente al software de escritorio del computador como una ventana más.

Para pcs con GNU/Linux existen varias versiones. En mi caso tengo instalado Debian Lenny y Gnome 2.22.3.

Pues bien, con esas condiciones me fue imposible instalar el programa, incluso partiendo por la versión más reciente a la más antigua disponible.

En estricto rigor, la versión para Ununtu 8.04 debería funcionar porque este trae la versión 2.22 de Genome.

En fin, gracias a un consejo de Alejandro un buen amigo, solo funcionó aplicando como dice él, fuerza bruta:

dpkg --force-depends-version --install

Espero que esta información pueda servir a otros posibles interesados en Dropbobox.

Raid1 bajo Debian Etch

En este caso la particion raiz ees sda1 y la swap es sda2
solo hago raid1 en la particion raiz.

instalar mdadm
# apt-get install mdadm

clonar discos:
# sfdisk -d /dev/sda | sfdisk /dev/sdb
chequear las particiones q sean iguales
# fdisk -l /dev/sda /dev/sdb
Disk /dev/sda: 146.8 GB, 146815737856 bytes
255 heads, 63 sectors/track, 17849 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 17750 142576843+ 83 Linux
/dev/sda2 17751 17849 795217+ 82 Linux swap / Solaris

Disk /dev/sdb: 146.8 GB, 146815733760 bytes

255 heads, 63 sectors/track, 17849 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 * 1 17750 142576843+ 83 Linux
/dev/sdb2 17751 17849 795217+ 82 Linux swap / Solaris

Crear el raid1 con sda1 como missing y sdb1
# mdadm –create /dev/md1 –level=1 –raid-disks=2 missing /dev/sdb1
mdadm: array /dev/md1 started.

chekear raid
# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sdb1[1]
142576768 blocks [2/1] [_U]

unused devices:

Formater el md con el filesystem correspondiente:
# mkfs.ext3 /dev/md1
mke2fs 1.40-WIP (14-Nov-2006)
Filesystem label=
—-bla bla bla—-

Montar el raid para copiar los files:
# mount /dev/md1 /mnt

Chekear y copiar:
# ls /mnt
lost+found
# cd /

Copio los archivos del sistema en el raid
# find . -xdev -print | cpio -dvpm /mnt/
y me fijo que este ok.
# ls /mnt/
bin cdrom etc initrd lib media opt root selinux sys usr vmlinuz
boot dev home initrd.img lost+found mnt proc sbin srv tmp var

Configurar lilo para bootear del raid:
# cp /boot/initrd.img-2.6.18-6-686 /boot/initrd.img-2.6.18-6-686-noraid
# nano /etc/lilo.conf

agregar algo parecido a esto

image=/vmlinuz
label=Linux
root=/dev/md1 <——–agregar esta linea
read-only
# restricted
# alias=1
initrd=/initrd.img

y a la entrada que estaba la editamos:

image=/vmlinuz
label=Linux-noraid <——–notar el cambio de label
read-only
# restricted
# alias=1
initrd=/boot/initrd.img-2.6.18-6-686-noraid <— notar esto tambien

que quede uno con root=/dev/md1 y otra entrada normal.

Configurar los mounts en fstab:
# nano /mnt/etc/fstab

Notar que estamos cambiando el fstab del raid y no del disco sda.
y cambiar los dispositivos, ejemplo sda1 por md1 en este caso.

Configurar el/los raid:
# mdadm –examine –scan >> /etc/mdadm/mdadm.conf

Actualizar el initrd para soportar el raid:
Al actualizar el initrd se ejecuta automaticamente lilo
para actualizar los cambios
# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-2.6.18-6-686
Added Linux *
Added Linux-noraid
Skipping /vmlinuz.old

Ahi se ve que tenemos la version “Linux” que tendria el raid
y la que no tiene raid por si algo falla…

Reiniciar la maquina para que levante el raid como “/”
# reboot
( esperar varios minutos y loguearse )

chekear que este todo ok
#mount
/dev/md1 on / type ext3 (rw,errors=remount-ro)
—-bla bla bla—-

Sincronizar los raid:
# mdadm –add /dev/md1 /dev/sda1
mdadm: added /dev/sda1

en este caso agregamos sda1 en el md1
verificamos:
# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sda1[2] sdb1[1]
142576768 blocks [2/1] [_U]
[>......................] recovery = 1.3% (1975616/142576768) finish=30.8min speed=75985K/sec

unused devices:

ahi se ve como va sincronisando…
esperar….hasta que terminen todos

Mientras acomodamos algunas cosas:
devuelta configurar el lilo:
# cp /boot/initrd.img-2.6.18-6-686 /boot/initrd.img-2.6.18-6-686-noraid
# nano /etc/lilo.conf

image=/vmlinuz
label=Linux
root=/dev/md1
read-only
# restricted
# alias=1
initrd=/initrd.img

image=/vmlinuz
label=Linux-noraid
read-only
optional
# restricted
# alias=2
initrd=/boot/initrd.img-2.6.18-6-686-noraid

Igual que la ves anterior…

Ahora si esperar a que terminen los recoveries
mirar /proc/mdstat cada tanto …

Configurar el raid devuelta:
# mdadm –examine –scan >> /etc/mdadm/mdadm.conf

Crear de vuelta el initrd:
# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-2.6.18-6-686
Added Linux *
Added Linux-noraid

Reiniciar el server por ultima ves:
# reboot
( y a esperar otra ves )

Verificamos que volvio correctamente:
# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sda1[0] sdb1[1]
142576768 blocks [2/2] [UU]

unused devices:

# mount
/dev/md1 on / type ext3 (rw,errors=remount-ro)
—- bla bla bla ——

# free
total used free shared buffers cached
Mem: 516824 28444 488380 0 2696 12908
-/+ buffers/cache: 12840 503984
Swap: 795208 0 795208

aca se ve que solo una particion esta como swap que es la sda2
para agregar la sdb2 hacemos lo siguiente:
# mkswap /dev/sdb2
Setting up swapspace version 1, size = 814297 kB
no label, UUID=bb50562f-cccc-40ea-8dcb-c16303c8ab6a

Editamos el archivo /etc/fstab
# nano /etc/fstab

y agregamos una linea como esta:
/dev/sdb2 none swap sw 0 0

# swapon -a
# free
total used free shared buffers cached
Mem: 516824 29048 487776 0 2752 13392
-/+ buffers/cache: 12904 503920
Swap: 1590416 0 1590416

Ahora si vemos que tenemos el doble de swap…
y con eso se termina la guia.

By Section[one]

Solucionando un pequeño error con el sonido...

Sin darme cuenta, había perdido el sonido en mi Debian SID, pero revisando los log, leo esto;

Caturra:/home/CdK1/Desktop/Peliculas/DVD/IT 2# tail -f /home/CdK1/.xsession-errors
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1008:(snd_pcm_dmix_open)
...Too much output, ignoring rest...

Para no aburrir más, esta es la solución;

Caturra:/# /usr/sbin/alsa force-reload
Terminating processes: 8375 8381 14126 8375 14126 14126.
Unloading ALSA sound driver modules: snd-seq-dummy snd-seq-oss snd-seq-midi snd-rawmidi snd-seq-midi-event snd-seq snd-seq-device snd-pcm-oss snd-mixer-oss snd-hda-intel snd-hda-codec-analog snd-hda-codec snd-hwdep snd-pcm snd-timer snd-page-alloc.
Loading ALSA sound driver modules: snd-seq-dummy snd-seq-oss snd-seq-midi snd-rawmidi snd-seq-midi-event snd-seq snd-seq-device snd-pcm-oss snd-mixer-oss snd-hda-intel snd-hda-codec-analog snd-hda-codec snd-hwdep snd-pcm snd-timer snd-page-alloc.
Caturra:/#

;)