Idea
En principio no funcionaba el envío de correos desde el sitio “El Casero Diario de Palola”, blog alojado en Nodo-Palola. Para corregir este problema tenía 2 opciones:
-
Instalar el plugin de WordPress WP Mail SMTP
-
Configurar a Nodo-Palola como servidor SMTP Relay para que envíe los correos utilizando al servidor SMTP de Gmail como smarthost.
Opté por configurar a Nodo-Palola como SMTP Relay, dado que esta opción me serviría para otros programas, no solamente para WordPress.
Nota: no puedo configurar a Nodo-Palola como servidor SMTP para que él mismo envíe los correos directamente al destinatario porque el ISP cambia la IP de mi servidor (producto del servicio ADSL contratado). De todas formas debo utilizar un servicio para solucionar el problema de la IP dinámica.
En definitiva incorporamos otro registro a la lista de servicios del super servidor Nodo-Palola: SMTP Relay.
Seguridad
Lamento informar a los vivitos que quieran utilizar mi SMTP server que sólo habilité el servicio al localhost y a mi red interna, tanto en el firewall IPTables (puerto 25), como en el propio demonio de Postfix. Esto es lo que deberían hacer los que quieran configurarlo.
Procedimiento
La instalación y configuración fue hecha en Nodo-Palola, actualmente con distribución GNU/Linux debian Etch.
O sea que para instalar los paquetes:
# sudo apt-get install paquete1 paquete2 ...
Paquetes necesarios
- postfix
- libsasl2-modules
- sasl2-bin
- postfix-tls
- openssl
Configuración de Postfix
Configuraremos a Nodo-Palola como Internet site with smarthost, dándole un valor a la variable relayhost. Esto significa que nuestro servidor no va a enviar los correos directamente, si no que será un servidor intermediario para enviar los correos a otro servidor SMTP (smarthost) de confianza (no confían en Nodo-Palola
), como es el de Gmail, quien sí enviará los correos al destino.
1. El archivo main.cf quedará de la siguiente forma. No explicaré cada línea, está muy bien documentada en el sitio oficial de Postfix.
smtp_use_tls = yes
smtp_tls_CAfile = /etc/postfix/cacert.pemsmtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_generic_maps = hash:/etc/postfix/generic
myhostname = Nodo-Palola
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = nodo-palola.cdmon.org, Nodo-Palola
relayhost = [smtp.gmail.com]:587
mynetworks = 127.0.0.0/8, (redes que se me antojen)
mailbox_command =
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
2. Crear el archivo /etc/mailname con el nombre completo del servidor, incluyendo el dominio:
nodo-palola.cdmon.org
3. Crear el archivo /etc/postfix/sasl/passwd con el siguiente texto (el servidos SMTP de Gmail escucha en el puerto 587):
[smtp.gmail.com]:587 palola@1000ton.com.uy:Contraseña
4. Proteger el archivo creado:
# sudo chmod 600 /etc/postfix/sasl/passwd
5. Crear el archivo passwd.db:
# sudo postmap /etc/postfix/sasl/passwd
6. Crear el archivo /etc/postfix/generic con el siguiente texto:
root@nodo-palola.cdmon.org palola@1000ton.com.uy
7. Generar los *.db:
# sudo postmap /etc/postfix/sasl/passwd
# sudo postmap /etc/postfix/generic
# sudo postmap /etc/aliases
8. Copiar el certificado a utilizar por Postfix. También se puede crear uno.
# sudo cp /etc/ssl/certs/Thawte_Premium_Server_CA.pem /etc/postfix/cacert.pem
Iniciar y parar Postfix o recargar la configuración
- sudo postfix stop
- sudo postfix start
- sudo postfix reload
Pruebas de funcionamiento
Desde Nodo-Palola con el comando mail:
# echo “Peteko” | mail -s “Asunto” Destino@DominioDestino
Desde otra máquina con el comando telnet:
$ telnet nodo-palola.cdmon.org 25
Trying 190.64.156.188...
Connected to nodo-palola.cdmon.org.
Escape character is '^]'.
220 Nodo-Palola ESMTP Postfix
helo nodo-palola.cdmon.org
250 Nodo-Palola
mail from: peteko@peteko
250 2.1.0 Ok
rcpt to: Destino@DominioDestino
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
Subject: Asunto Peteko
Cuerpo Peteko
.
250 2.0.0 Ok: queued as 97799107276
quit
221 2.0.0 Bye
Connection closed by foreign host.
Logs de Postfix
-
/var/log/mail.*
Dejo por acá, quiero salir a correr.-












Obviamente que no entiendo un joraca de todo este articulo, pero no sera “como en el propio dominio de Postfix” o es un “demonio” como el Manu???