miércoles, 30 de abril de 2014

Solución a GPG error "NO_PUBKEY"

Esto sucede por que la cláve publica para un repositorio ha cambiado ó no existe, y por tal motivo no se pueden instalar paquetes o simplemente actualizar los existentes.

W: GPG error: http://debian.uchicago.edu etch Release: The following signatures couldn’t be
 verified because the public key is not available: NO_PUBKEY 7D570D06M42584E2

PROBLEMA:
Cuando queremos actualizar la lista de paquetes nos aparece esto:
$sudo apt-get update
Get:1 http://debian.linux.org.tw lenny Release.gpg [394B]
Get:2 http://debian.linux.org.tw lenny Release [73.6kB]
Get:3 http://debian.linux.org.tw lenny/main Packages [5310kB]
Fetched 5384kB in 1m13s (73.5kB/s)
Reading package lists... Done
W: There is no public key available for the following key IDs:
7D570D06M42584E2
W: You may want to run apt-get update to correct these problems


SOLUCIÓN:
Ahi nos muestra el error, el cual podemos solucionar con los siguientes comandos para agregar la llave publica para los paquetes que están teniendo problemas:
$ gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 7D570D06M42584E2

# You should see the following output while executing the above command.
gpg: Total number processed: 1
gpg:               imported: 1

$ gpg --armor --export 7D570D06M42584E2 | apt-key add -
OK

$sudo apt-get update

Con esto ya no debe salir errores al actualizar o instalar paquetes:

LayoutIt! (crea plantillas web con bootstrap online)

Un excelente sitio, para crear plantillas web  con, html, css y javascript  usando una interfaz muy amigable con la cual puedes arrastrar al diseño y descargar tu código generado.

Enlace: http://www.layoutit.com/




viernes, 25 de abril de 2014

Certificados SSL apropiados para Postfix y Dovecot (Mail Server)

Una de las mejores formas de encriptar los passwords y tu información que circula entre el cliente de correo y el mail server, es estableciendo los certificados ssl apropiados.

Hay varias formas de manejar tus preferencias con los certificados,  una es crear tu certificado, dejarlo como está, usar una autoridad certificadora gratuita ó comprar un certificado

Dejarlo como está:
Los usuarios recibirán advertencias informándoles que el certificado es invalido y no concuerda con el nombre del servidor

* Ventajas:  flojo, no cuesta nada
* Desventajas: Algunos clientes de correo rechazan el certificado por que no concuerda el nombre del servidor
* Conclusión: Sólo has esto si no te importa que suceda con el mail server

Crear un certificado auto firmado :
Los usuarios les dará a tus usuarios un certificado con el nombre apropiado para tu mail server

* Ventajas: "un poco de trabajo", no cuesta
* Desventaja: Estarás entrenando a tus usuarios a que acepten cualquier certificado
* Conclusión: Has esto si tienes un pequeño grupo de usuarios a los cuales les puedas informar acerca el certificado (o configurar personalmente los clientes de correo)

Crear certificados SSL puede ser tan sencillo como aplicar un comando:

Dovecot

Este comando crea el certificado SSL para dovecot (10 años   365X10=3650):

openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/certs/dovecot.pem -keyout /etc/ssl/private/dovecot.pem

No olvides establecer los permisos adecuados para mantener segura de mirones a tu llave privada:

chmod o= /etc/ssl/private/dovecot.pem

Tendrás que reiniciar Dovecot para que el servicio lea el nuevo certificado

/etc/init.d/dovecot restart

Postfix

Para crear un certificado en postfix:

openssl req -new -x509 -days 3650 -nodes -out /etc/ssl/certs/postfix.pem -keyout /etc/ssl/private/postfix.pem

No olvides establecer los permisos adecuados para mantener segura de mirones a tu llave privada:

chmod o= /etc/ssl/private/postfix.pem

Después de esto necesitas indicarle a Postfix en donde encontrar tu certificado y llave privada ya que por default busca un certificado llamado "ssl-certsnakeoil" :

postconf -e smtpd_tls_cert_file=/etc/ssl/certs/postfix.pem
postconf -e smtpd_tls_key_file=/etc/ssl/private/postfix.pem

Usar una autoridad certificadora gratuita :

* Ventajas: Un poco de trabajo, no cuesta
* Desventajas: estos certificados no están incluidos en todos los clientes de correo
* Conclusión: Si no quieres gastar dinero esta es tu mejor elección

Hay gran variedad de servicios gratuitos como este,  uno de ellos es http://www.startssl.com/

Comprar un certificado SSL

* Ventajas:  el certificado será aceptado automáticamente por todos los clientes de correo
* Desventajas: Inviertes bastante dinero en la mafia de los certificados web
* Conclusión: Has esto si te quieres ver profesional en tu servidor de correo  y no quieres tener problemas con usuarios


Depende de tu política de administración del mail server, elegir cual de las anteriores estrategias es la idónea para usar.

sábado, 19 de abril de 2014

Reproductor de música en terminal

Este script que les comparto el dia de hoy, lo hice para acoplarlo en un sistema de domotica (luces, accesos, audio, riego, etc)  ustedes lo pueden usar en terminal o acoplarlo a su sistema web que deseen para tener control sobre el.

Este script hace una lista de musica en modo RANDOM de un directorio donde tengas tus archivos .mp3 y a partir de esa lista empieza la reproducción desde la terminal, las opciones para este script son:
./musica.sh start
./musica.sh stop
./musica.sh volume+
./musica.sh volume-

#!/bin/bash
#  Directorio de musica
musica="/home/villatux/Musica/despertador/"
ls -lah $musica | awk '{print $9" "$10" "$11" "$12" "$13" "$14" "$15}' | sort -R | grep -i mp3 > lista.txt
case "$1" in
start)
 amixer set Master 60
 while read linea
 do
         echo "Reproduciendo: "$linea
         mpg123 -q "$musica$linea"
 done < lista.txt
 ;;
stop)
 killall -9 musica.sh & mpg123
 ;;
volume+)
 amixer set Master 10%+
 ;;
volume-)
 amixer set Master 10%-
 ;;
*)
 echo -e ""
 echo "Uso: $0 start | stop | volume+ | volume-"
 exit 1
esac 

jueves, 3 de abril de 2014

Identificar posible SPAM con postfix y BASH (script)

Este script lo que hace es mostrar cuantas veces se repite un correo como remitente  tanto en los correos enviados, como en las colas de correo (que están por enviarse)

Con esto podemos identificar algún spammer y actuar ante ello.

Les dejo el script:

#!/bin/bash
tail -8000 /var/log/postfix-in.log |grep from= | grep [a-z]@[a-z] | awk '{print $7}' |grep -v reject > correos.txt

fentrada="correos.txt"
cat $fentrada | while read line; do
  veces=`cat $fentrada | grep $line | wc -w`
         echo -e "   $veces\t$line" >> uno.txt
  done

echo -e ""
echo -e "---------------------------------------------"
echo -e "CORREOS ENVIADOS"
echo -e ""
cat uno.txt | sort | uniq
echo -e "---------------------------------------------"
echo -e "CORREOS EN COLA :"
echo -e ""
postqueue -p | grep [a-z]@[a-z] |awk '{print $7}' > cola.txt

entrada="cola.txt"
cat $entrada | while read linea; do
 veces=$(cat $entrada | grep -o "$linea" | wc -w)
 echo -e  "   $veces\t$linea" >> dos.txt
done
cat dos.txt | sort | uniq


rm correos.txt
rm uno.txt
rm cola.txt
rm dos.txt

El resultado de la ejecución de este script se ve de esta manera: