Configurar Thunderbird con DNI-Electronico

El proceso es casi idéntico tanto para Linux como Windows, solo hay un paso que difiere a la hora de buscar el modulo PKCS#11 (el driver del DNI).

Al igual que con el post sobre Gmail, asumo que ya tienes el DNI digital configurado en tu PC y te funciona en Firefox y/o Explorer.

Sin mas preámbulos, empezamos:

Nos situamos en el menú Editar –> Preferencias, una vez ahí, nos vamos a ‘Avanzadas’, pinchamos en ‘Dispositivos de seguridad’


Una vez ahí, pulsamos en ‘Cargar’


Le ponemos como nombre al nuevo modulo ‘Dni Digital’ y, atención, aquí viene la diferencia entre Linux y Windows. En linux debemos localizar la ruta del fichero opensc-pkcs11.so lo podemos localizar con el comando
$ locate opensc-pkcs11.so
/usr/local/lib/opensc-pkcs11.so

En el caso de Windows el fichero que debemos poner es:
C:\WINDOWS\system32\UsrPkcs11.dll

Si todo ha ido bien se nos pedirá que confirmemos el nuevo modulo que hemos añadido

Thunderbird nos informa que ya tenemos disponible el DNI


Podemos ver que Thunderbird ya reconoce el DNI, en mi caso aparece asociado a mi lector de tarjetas que viene integrado en el teclado Dell (si, el teclado de la película Firewall 😉


Ahora tenemos que asociar un certificado digital a nuestra cuenta de correo para poder realizar el firmado de correos. Nos situamos en el menú Editar –> Configuración de las cuentas. Una vez ahí, pinchamos en ‘Seguridad’. Como se puede ver en la parte derecha, podemos asociar un certificado para realizar la firma de correos, pinchamos en ‘Seleccionar’


Dado que el DNI-E pide el PIN para poder acceder a los certificados digitales, nos solicita que introduzcamos el susodicho PIN.


Si el PIN es correcto, veremos los dos certificados digitales que hay en el DNI-E, uno para Firma y otro para autenticación. Seleccionamos el de firma


Ahora Thunderbird nos informa que podemos también asociar un certificado para recibir correos electrónicos cifrados. Como decía en mi anterior post sobre Gmail, el DNI no tiene certificados digitales validos para cifrado, así que pulsamos en ‘Cancelar’ (de lo contrario aparecerá un mensaje de error)


Con todos los pasos anteriores ya dados, podemos enviar nuestro primer correo electrónico que lleve una firma digital en Thunderbird. Para ello nos vamos a ‘Redactar’ (como si fuéramos a escribir un email normal y corriente)


Para activar el firmado digital del correo, hemos de ir al candado de ‘Seguridad’ y entre las opciones que aparecen: ‘Firmar digitalmente este mensaje’

Una vez le demos a enviar, se nos pedirá el PIN del Dni para realizar la firma del correo


Ahi lo tienes¡¡¡¡ ya hemos enviado un mail firmado digitalmente con Thunderbird

Centraliza los logs de tus servidores con Logrep

Logrep es una solución de código libre para centralizar los logs de tus servidores, tanto para Linux como para Windows.

Los logs se presentar en formato HTML a través del componente cliente de esta utilidad que como ya hemos comentado es totalmente multiplataforma. El cliente es capaz de recoletar logs de 30 sistemas diferentes entre los que están: Snort, Squid, Postfix, Apache, syslog, ipchains, Qmail, Sendmail, iptables, Servidores Windows, Firewall-1, wtmp, xferlog, Oracle y Pix.

Entre las características de Logrep podemos citar:

  • Protocolo de comunicación segura entre cliente servidor a través de SSH.
  • Completa ayuda para la interpretación de logs.
  • Guardar copias de todos los logs en un sistema central.
  • El cliente extrator de datos consume realmente pocos recursos.
  • Tus logs con representación gráfica.

Logrep es sin duda la herramienta ideal para administradores de sistemas que necesiten centralizar la gestión de logs y tener una sistema de acceso rápido a todos ellos. La mejor forma de analizar por ejemplo una posible intrusión en la red.

Enlaces de referencia:

Logrep en SourceForge.

Descargar de Logrep.

Sistemas de los logs que puede interpretar Logrep.

Manual Instalación de Logrep

Protección para el usuario apache

Este pequeño tip en el user apache me lo encontre en varios servidores a los que “analice” :D, esta bien pensando por el admin que se lo ingenio pero se olvido de securizar otros servicios/usuarios.

Consultamos el directorio de apache en /etc/passwd y aparece algo como
apache:x:48:48:Apache:/var/www:/bin/false
Ai se puede apreciar que su directorio del usuario es /var/www
Me dirijo a ese directorio y creo un archivo llamado .bashrc y en el solo escribo exit
lo guardo y listo; lo mismo con los otros usuarios que se deseen bloquear

Encontrar scripts spammers en el servidor

Cuando el script del spammer es un script realizado en php, el problema que tenemos para localizarlo es que el usuario será apache (a no ser que el servidor use su_exec o similares) y será más dificultoso encontrarlo ya que no puede ser identificado con el nombre de usuario del dominio.

Si se usa Plesk hay dos procedimientos estándares creando wrappers de Sendmail y que suelen funcionar. El propio Plesk lo describe en estos dos artículos:

http://kb.parallels.com/article_22_1711_en.html

http://kb.parallels.com/en/766

Podemos dejar el wrapper funcionando durante algún día para intentar localizar al spammer. Adicionalmente podemos dejar un cron que dispare un fichero con greps del tipo:

grep X-Additional /var/tmp/mail.send | grep `cat /etc/psa/psa.conf | grep HTTPD_VHOSTS_D | sed -e ’s/HTTPD_VHOSTS_D//’ ` | awk ‘{print $2}’ | awk ‘BEGIN {FS=”|”} {print $1}’ | sort|uniq -c | sort -rn

y que nos envié por email los resultados del wrapper.

Una vez conocido el directorio o fichero desde donde se envía el spam, tendremos que comprobar en los logs como se ha logrado el acceso para subir el citado fichero. Normalmente suele haber aplicaciones php muy antiguas que no han sido actualizadas a versiones nuevas. Tendremos que advertir al propietario del sitio que actualice sus aplicaciones, cambie sus claves, revise todos los ficheros e incluso suba un backup anterior. Habrá que eliminar los ficheros maliciosos y colocar restricciones más fuertes al dominio creando un fichero .htaccess o en el propio /conf/vhosts.conf del dominio.

Tales restricciones podrían ser:

php_flag register_globals off

php_flag allow_url_fopen off

php_flag file_uploads off

php_flag magic_quotes_gpc on

php_flag safe_mode on

php_flag disable_functions show_source

php_flag disable_functions system

php_flag disable_functions shell_exec

php_flag disable_functions passthru

php_flag disable_functions exec

php_flag disable_functions phpinfo

php_flag disable_functions popen

php_flag disable_functions proc_open

Adicionalmente habría que revisar los directorios temporales /tmp para comprobar que no hay scripts con usuario apache que estén enviando spam.

Igualmente siempre es utilizar las reglas actualizadas de mod_security para prevenir ataques comunes vía web (el 95% de los ataques son vía web) y herramientas de deteción de intrusos como OSSEC, y Atomic Secure Linux

Sería recomendable añadir a iptables las ips de las maquinas que realizaron el ataque, aunque el atacante atacará desde otras ips sin complicaciones. Incluso puede ser interesante bloquear rangos de ips de forma momentanea si hay un ataque en progreso.

Como borrarse de una lista negra

Es una tarea habitual en los proveedores de alojamiento web  encontrarnos con ips de clientes que se insertan en listas negras. Las razones pueden ser variadas:

a) Un cliente en un servidor compartido o dedicado realiza un envío masivo de emails y alguien legítimamente o nó lo denuncia en una de las páginas que manejan estas listas negras.

b) Un spammer utiliza scripts de envío ilegítimos y realiza envíos masivos desde su dominio habiéndose aprovechado de alguna vulnerabilidad en el mismo dominio (aplicaciones php inseguras, mal programadas..etc.)

C) Su ordenador local tiene algún virus o troyano y está siendo utilizado para enviar emails y realizar diversas actividades maliciosas.

El resultado es que la IP del servidor de correo saliente es prohibida en alguna lista y los proveedores de internet y otros proveedores de internet que usan servicio de listas negras para su propio filtrado, no podrán recibir su correo, este será eliminado y filtrado directamente antes de llegar a su destinatario. El cliente que envía el correo recibirá normalmente un mensaje devuelto indicando que su email no ha podido ser entregado debido a que su IP (la del servidor de correo saliente o o la de su conexión adsl) se encuentra en alguna lista negra.

¿Qué podemos hacer?

1) Primero necesitamos comprobar que efectivamente la ip está listada.

Para comprobarlo podemos ir a esta URL http://www.mxtoolbox.com/blacklists.aspx?AG=GBL ó http://www.us.sorbs.net/lookup.shtml o directamente a la listas más importante como

http://www.spamcop.net/bl.shtml o http://www.spamhaus.org/lookup.lasso e introducir la IP de nuestro dominio y también, para salir de dudas, de nuestra IP local de conexión ADSL.

Si está listado podemos solicitar la baja de esa lista en esas webs citadas. El deslistado puede tardar 24-48 horas.  El caso más grave es estar listado en Hotmail. En este caso hay que escribir a Hotmail directamente para solicitar el deslitado en el formulario http://www.hotmail.msn.com/cgi-bin/dasp/ua_info.asp?pg=contact_hotmail&_lang=ES.

En el caso de estar listados por telefónica es necesario contactarles vía email en nemesys@telefonica.es

En cualquier caso antes de contactarles es necesario asegurarse que el envío de spam ha cesado y que hemos encontrado al responsable del envío del correo. En la mayoría de casos, un script en php o perl que ha sido subido desde la web aprovechándose de una vulnerabilidad de sus aplicaciones y scripts.

2) Si la Ip listada es de nuestra conexión y nuestra IP es fija, entonces deberíamos realizar  comprobar que en nuestros PCs no existen virus y no hay troyanos u otros bots que estén usando nuestra conexión para enviar spam.

3) Si la ip es del servidor,  es el proveedor web el que debe  de deslistar esa IP y averiguar quien ha sido el responsable del envío tomando las medidas necesarias para que no se vuelva a repetir ese tipo de abuso.

Fuente: http://blog.digitalvalley.com

Buscando al spammer “Nobody”

Probado en Plesk+Qmail en Ensim+Sendmail no logro arrancarlo y dicen que en Cpanel+Exim funciona perfecto.

Cuantas veces quisieramos saber quien esta enviando spam atraves de scripts php o cgi en nuestro server o que sitios estan comprometidos y los usan los spammers para sus cometidos. Si ud mira en su php.ini la funcion mail realiza un llamado directo a /usr/bin/sendmail esto es lo que pretendemos monitorear.

Este sencillo script crea un archivo log donde se almacena la actividad registrada por sendmail. Sirve tambien en caso de que nuestro servidor este comprometido en sus archivos temporales /tmp o /var/tmp o cualquier otro. La idea es intercambiar el binario de sendmail por este sript de perl y monitorear en /var/log/formmail.log toda al actividad de envio de correo.

Instalacion y configuracion.
1) Paramos qmail
service qmail stop
2) Hacemos Backup (Por nada te lo saltes; Respeta el nombre del backup ya que el perl lo usara)
mv /usr/sbin/sendmail /usr/sbin/sendmail.act
3) Crea el script de perl que reemplazara a /usr/sbin/sendmail
pico -w sendmail
4) Le asignanos permisos de ejecucion
chmod +x /usr/sbin/sendmail
5) Creamos el archivo de salida (El Log)
echo > /var/log/formmail.log
6) Le damos permisos al log
chmod 777 /var/log/formmail.log
7) Ya esta A hacer pruebas y a mirar el log


#!/usr/bin/perl

# use strict;

use Env;

my $date = `date`;

chomp $date;

open (INFO, “>>/var/log/formmail.log”) || die “Failed to open file ::$!”;

my $uid = $>;

my @info = getpwuid($uid);

if($REMOTE_ADDR) {

print INFO “$date – $REMOTE_ADDR ran $SCRIPT_NAME at $SERVER_NAME \n”;

}

else {

print INFO “$date – $PWD – @info\n”;

}

my $mailprog = ‘/usr/sbin/sendmail.act’;

foreach (@ARGV) {

$arg=”$arg” . ” $_”;

}

open (MAIL,”|$mailprog $arg”) || die “cannot open $mailprog: $!\n”;

while ( ) {

print MAIL;

}

close (INFO);

close (MAIL);