Como configurar un relay de correo para nuestra empresa con Postfix
Últimamente en la empresa donde trabajo hemos tenido que configurar un nuevo servidor de «relay» de correo para sustituir al que teníamos, que era un viejo IBM Lotus Notes. Por suerte yo ya había oído hablar del servicio de correo de código abierto Postfix, creado por el programador Wietse Venema. Lo cierto es que he tenido que investigar un poco, mirando manuales en Internet, y visitando asiduamente la página web del proyecto, para así de paso practicar mi inglés.
Bueno. Una vez explicado esto, os explico como lo instalé y configuré.
Primero de todo, decidí usar una distribución GNU/Linux, me decidí por Debian, sin interfaz gráfica, para así ahorrar recursos al sistema. Una vez descargada la última versión estable de su web: http://www.debian.org/CD/http-ftp/#stable, procedemos a instalarla en una máquina virtual, yo siempre uso el software de VirtualBox, que nos podemos descargar desde su web: https://www.virtualbox.org/.
Cuando ya tenemos la distribución instalada, actualizaremos la versión, ya sabéis, primero le decimos al sistema que queremos actuar como «root», tecleando el comando «su», que nos pedirá la contraseña. Cuando estemos ya como super usuario, modificaremos el fichero «sources.list» que es donde están las direcciones desde donde actualizaremos nuestro sistema, este fichero está ubicado en «/etc/apt/», el fichero yo lo tengo configurado de la siguiente manera:
El siguiente paso, es utilizar el comando para actualizar nuestro sistema operativo:
apt-get update
Como la inmensa mayoría de programas en GNU/Linux están escritos en Lenguaje C, siempre instalo en compilador «gcc» que ya hablé de él en su día, además del de «python», que siempre se suelen utilizar en estos casos.
apt-get install gcc python
A continuación instalamos los servicios a utilizar:
apt-get install mailutils postfix
Creamos un enlace para el comando mail
ln -s /usr/bin/mail /bin/mail
Empezamos a configurar postfix con nuestra configuración de correo en internet (yo en este caso utilizaré gmail).
En el archivo ubicado en /etc/postfix/main.cf, debemos indicar la siguiente configuración:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl/passwd
smtp_sasl_security_options = noanonymous
Como diría Jack, vamos por partes:
En «relayhost» indicamos en que dirección está ubicado nuestro servidor de relay en la nube, en este caso usamos el de gmail, además también le indicamos el puerto, el 587, que es el que se usa para conexiones seguras por TLS. En las siguientes líneas le decimos que usaremos el cifrado TLS, después decimos donde tendremos ubicado dicho certificado, y por último que no aceptamos conexiones anónimas.
Muy importante, al final del fichero indicamos:
myhostname = debian
Esto lo hacemos para indicar nuestro nombre de host.
mynetworks = 192.168.x.0/24 192.168.x.0/24 127.0.0.0/8
Esta parte es muy importante, si queremos utilizar nuestro servidor como relay de otras máquinas, tenemos que declarar las redes donde están dichos equipos.
Por último:
mydestination = $mydomain,$myhostname,localhost,locahost.domain
Y con esto terminamos de editar el archivo.
A continuación generamos el fichero «passwd»
nano -w /etc/postfix/sasl/passwd
Con nuestra configuración de seguridad:
[smtp.gmail.com]:587 usuario@gmail.com:contraseña
Asignamos los permisos adecuados:
chmod 600 /etc/postfix/sasl/passwd
Transformamos el fichero passwd a un fichero indexado hash
postmap /etc/postfix/sasl/passwd
Vemos que haciendo esto tendremos un nuevo fichero llamado «passwd.db«
Instalamos los certificados:
apt-get install ca-certificates
Añadimos la autoridad certificadora:
cat /etc/ssl/certs/Equifax_Secure_CA.pem >> /etc/postfix/cacert.pem
Reiniciamos el servicio de correo:
/etc/init.d/postfix restart
Probamos el envío de un correo:
mail -s "el asunto" usuario@gmail.com
CTRL+D(Enviarlo)
Por último, si queremos ver el log del correo en directo, con el comando «tail» lo podemos hacer, visualizando las diez últimas líneas de texto:
cd /var/log
tail -f mail.log
Y con todo esto ya tenemos configurado nuestro servidor de correo.
Si queréis saber más: