Categoría > Tutoriales

Utilizando postfix para enviar correos a través de GMail

 

Normalmente es posible instalar un Mail Transport Agent (MTA) como postfix o exim para que sirva como servidor de correo en cualquier computadora conectada a internet con una dirección IP pública asignada. Sin embargo, debido al problema del SPAM, muchos de los servidores de correo de Internet bloquean el correo no autenticado proveniente de direcciones IP dinámicas, que son las habituales en las conexiones domésticas.

Una de las soluciones existentes es instalar un servidor de correo que no envíe directamente el correo al servidor destino, sino que utilice Google Mail (GMail) para que retrasmita los mensajes.

Para poder enviar correo utilizando el servidor SMTP de GMail (smtp.gmail.com) la conexión tiene que estar cifrada con TLS. Para ello necesitaremos tres elementos:

  1. Un certificado autenticado por autoridad certificadora válida para GMail.
  2. Una cuenta de correo GMail.
  3. Un MTA local.

Instalación

Primeramente instalamos Postfix, un MTA bastante completo y configurable. Abrimos una terminal de root (Aplicaciones > Accesorios > Terminal de Root) y escribimos el siguiente comando:

aptitude install postfix

Nota: Postfix tiene conflictos con Exim, pero es seguro remover exim en favor de postfix.

La instalación nos hará algunas preguntas:

  1. Tipo de configuración: acá responderemos “Sitio de Internet”.
  2. Nombre del sistema de correo: acá pondremos el nombre de dominio de nuestro servidor de correo local. Para nuestro caso, podemos poner el mismo nombre de dominio de nuestra PC. e.g. “micasa”.

Listo, la instalación debe haber finalizado existosamente.

Configuración

Luego tenemos que editar el fichero /etc/postfix/main.cf y añadir las siguientes líneas al final del archivo:

relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/passwd
smtp_sasl_security_options = noanonymous
smtp_use_tls = yes
smtp_tls_CAfile = /etc/postfix/cacert.pem

En resumen, acá le estamos diciendo a postfix que utilice relayhost para conectarse al servidor de Gmail, que utilice smtp_sasl_password_maps para extraer los datos de conexión SASL y que utilice smtp_tls_CAfile como certificado para la conexión segura.

Autenticación

Debemos crear el archivo /etc/postfix/sasl/passwd con el siguiente contenido:

[smtp.gmail.com]:587    [CUENTA]@gmail.com:[CONTRASEÑA]

Por ejemplo:

echo "[smtp.gmail.com]:587    luis@gmail.com:123456" > /etc/postfix/sasl/passwd

Y lo protegemos adecuadamente con:

chmod 600 /etc/postfix/sasl/passwd

Seguidamente, hay que transformar el archivo a un fichero indexado de tipo hash mediante la instrucción:

postmap /etc/postfix/sasl/passwd

Lo que creará el fichero /etc/postfix/sasl/passwd.db

Certificación

Debemos tener instalados los certificados SSL de las autoridades certificadoras para poder realizar éste paso. Los podemos instalar así:

aptitude install ca-certificates

Para añadir la autoridad certificadora Equifax (la que certifica correos de Gmail) al fichero de certificados que utilizará postfix, ejecutamos el siguiente comando en una consola de root:

cat /etc/ssl/certs/Equifax_Secure_CA.pem > /etc/postfix/cacert.pem

Puesta en funcionamiento

Finalmente, reiniciamos postfix para aplicar los cambios, así:

/etc/init.d/postfix restart

Podemos comprobar el funcionamiento abriendo dos consolas. En una ejecutaremos el siguiente comando para monitorear el comportamiento del correo (como root):

tail -f /var/log/mail.log

Y en la otra enviaremos un correo:

echo "Éste es un correo de prueba" | mail prueba@gmail.com

Si hicimos las cosas bien, en la otra consola deberíamos ver algo como ésto:

Dec 18 18:33:40 OKComputer postfix/pickup[10945]: 75D4A243BD: uid=0 from=
Dec 18 18:33:40 OKComputer postfix/cleanup[10951]: 75D4A243BD: message-id=
Dec 18 18:33:40 OKComputer postfix/qmgr[10946]: 75D4A243BD: from=, size=403, nrcpt=1 (queue active)
Dec 18 18:33:44 OKComputer postfix/smtp[10953]: 75D4A243BD: to=
, relay=smtp.gmail.com[74.125.93.109]:587, delay=3.7, delays=0.15/0.14/1.8/1.6, dsn=2.0.0, status=sent (250 2.0.0 OK 1324249500 eb5sm36008464qab.10)
Dec 18 18:33:44 OKComputer postfix/qmgr[10946]: 75D4A243BD: removed

Espero que les sea de utilidad :)

Haciendo mirrors de Debian con ftpsync y de Canaima con debmirror

 
Hunting Bears

Muchas veces se hace útil tener una copia idéntica (mirror) del repositorio de paquetes Debian y Canaima en tu computadora: Acelera la instalación de paquetes, la creación de imágenes con canaima-semilla y permite tener un ambiente pruebas en caso de que manejes un repositorio en ambientes de producción.

Hacerlo no es tan difícil y requiere muy poca atención luego de realizado el procedimiento. Eso sí, el tiempo que utilizaremos inicialmente dependerá de tu velocidad de conexión. Podrás elegir cuales arquitecturas replicar y decidir si incluir las fuentes de los paquetes o no.

Continuar Leyendo »

Organizando tu música con MusicBrainz Picard

 
Hunting Bears

No hay nada peor para un adicto pseudoparanóico al orden que ver errores ortográficos, nombres incorrectos u omisiones importantes en la lista de reproducción de tu reproductor de música favorito. En consecuencia, organizar manualmente una colección de música de más de 1000 canciones puede convertirse en algo extremadamente tedioso, por no decir imposible. Es en estos casos cuando un organizador de música como MusicBrainz Picard es de gran ayuda.

Esta aplicación nos permite clasificar de forma fácil e inteligente los archivos de música a través de los metadatos o etiquetas que usualmente contienen información referida al autor, nombre de la pista, álbum, año, entre otros campos.

Instalarla es fácil en cualquiera de las distribuciones  GNU/Linux más populares (Debian, Ubuntu, Canaima). En una consola de root (Aplicaciones > Accesorios > Terminal de Root), ejecuta el siguiente comando:

aptitude install picard

Continuar Leyendo »

Emulando el Nintendo Wii en Canaima 3.0/Debian 6.0

 
Hunting Bears

ADVERTENCIA: Éste contenido tiene un propósito estrictamente académico. No se recomienda el uso de los juegos mencionados acá, a menos que estés consciente de que jugarlos no cambiará la forma en que te relacionas con la sociedad.

¿Que en Linux no se puede jugar? ¿Que Linux es Retrotecnológico? Hacer caso omiso de esas aseveraciones. En ésta oportunidad voy a enseñarte como convertir tu Canaima 3.0 (o Debian 6.0) en una consola de juegos Wii, con muy pocos materiales. Necesitarás:

[OPCIONAL] Uno o varios controlles wii (o wiimotes) con sus nunchucks. El precio varía entre 300 y 500BsF en una tienda de consolas de videojuego.
[OPCIONAL] Un adaptador (o dongle) bluetooth para establecer comunicaciones entre el wiimote y tu computadora. Se consiguen por 50BsF en cualquier tienda de artefactos electrónicos.
[OPCIONAL] Una barra de sensores infrarrojos para wii, permite al wiimote ubicarse en el espacio tridimensional a través de un sistema de referencia de 2 focos. Se consiguen por 50BsF en cualquier tienda de artefactos electrónicos.

La experiencia de juego es mucho mejor si logras jugarlo con el wiimote, sin embargo no es un requisito obligatorio: si no posees un wiimote real, puedes emularlo a través del teclado y el mouse (pero es un poco incómodo).

También es recomendable que tengas una tarjeta gráfica NVIDIA o ATI con la aceleración 3D activada, 1GB de memoria RAM y un procesador doble núcleo; sin embargo, tampoco es obligatorio.

Continuar Leyendo »

Instalando el driver privativo de ATI Radeon en Canaima 3.0/Debian 6.0

 
Hunting Bears

¿Te ha pasado que cuando inicias Debian Squeeze o Canaima 3.0, observas el siguiente error, muy al estilo matrix? (si es que lo logras ver sin hacer un tail -l /var/log/dmesg)

radeon 0000:01:00.0: object_init failed for (5242880, 0x00000002)
[drm:radeon_gem_object_create] *ERROR* Failed to allocate GEM object (5242880, 2, 4096, -22)
[drm:radeon_gart_bind] *ERROR* trying to bind memory to unitialized GART !
[drm:radeon_ttm_backend_bind] *ERROR* failed to bind 1280 pages at 0x00000000
[TTM] Couldn't bind backend.

Bueno, este error ocurre cuando posees una tarjeta ATI Radeon, y no has instalado el driver privativo fglrx. Lamentablemente, todavía no hemos podido desarrollar un driver libre para sistemas GNU/Linux (recuerden que como los fabricantes no liberan el código fuente, los desarrolladores GNU/Linux deben utilizar ingeniería inversa para hacer los drivers, lo cual es muy engorroso).

Si no te importa perder un poco del control de tu computadora instalando drivers que no sabes lo que tienen por dentro pero que hacen funcionar el hardware, entonces ésta guía es para ti.

Continuar Leyendo »