Servidor de correo

Esta tarea consiste en instalar y configurar un servidor de correo similar al de cualquier organización, capaz de enviar y recibir directamente correo, almacenar los usuarios en LDAP, filtrar el correo en busca de virus o spam y servirlo a sus usuarios a través de los protocolos POP, IMAP y configurar un Webmail. Objetivos

  1. Instalar y configurar un servidor postfix en un equipo con dirección IP pública dinámica
  2. Aprender a configurar todos los componentes de un servidor de correos completo
  3. Depurar el funcionamiento de un servicio
  4. Documentar adecuadamente todo el proceso

Pasos a realizar en clase

Vamos a realizar un sistema de correo para el dominio tudominio.gonzalonazareno.org, cuyo servidor DNS lo administras en tu propio servidor DNS. Tienes que comunicar el nombre de dominio al profesor para configurar el servidor de correos del departamento. Instala postfix y comprueba que recibe correo directamente desde un equipo de Internet (hotmail, gmail, etc.). Configura tu servidor de correos para que use a babuino como relay y comprueba que puees enviar correos.

Tarea 1 (1 puntos)(Obligatorio): Documenta en redmine una prueba de funcionamiento, donde envíes desde tu servidor local al exterior. Muestra el log donde se vea el envío. Muestra el correo que has recibido

INSTALACIÓN DE POSTFIX

root@bob:/home/debian# apt install postfix mailutils

En el tipo elegimos internet site y en el mail name, ponemos nuestro nombre de dominio.1

2

 

CONFIGUACIÓN DE POSTFIX

El fichero de configuración principal es /etc/postfix/main.cf, que quedará de la siguiente forma:

# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific: Specifying a file name will cause the first
# line of that file to be used as the name. The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

readme_directory = no

# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = bob 
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, maria.gonzalonazareno.org, bob.novalocal, localhost.novalocal, localhost
relayhost = babuino.gonzalonzareno.org
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all

Para aplicar los cambios reiniciamos el servicio:

root@bob:/home/debian# systemctl restart postfix

 

CONFIGURACIÓN DEL DNS

En el fichero /var/cache/bind/db.maria.gonzalonazareno.org añadimos el registro mx

$ORIGIN maria.gonzalonazareno.org.
$ORIGIN maria.gonzalonazareno.org.
$TTL 86400 ; 1 day
@ IN SOA mickey.maria.gonzalonazareno.org. admin.maria.gonzalonazareno.org. (
 1 ; serial
 21600 ; refresh (6 hours)
 3600 ; retry (1 hour)
 604800 ; expire (1 week)
 21600 ; minimum (6 hours)
)
@ IN NS mickey
@ IN MX 10 correo 
mickey IN A 10.0.0.12
 IN A 172.22.200.40
minnie IN A 10.0.0.6
 IN A 172.22.200.36
donald IN A 10.0.0.3
 IN A 172.22.200.54
grafana IN A 172.22.200.200
correo IN A 172.22.200.103
www IN CNAME donald
informatica IN CNAME donald
bbdd IN CNAME minnie

Para aplicar los cambios reiniciamos el servicio

root@mickey:/home/debian# systemctl restart bind9

CORREO DESDE EL SERVIDOR LOCAL

Prueba de funcionamiento:

debian@bob:~$ mail m.romeroangulo@gmail.com
Cc: 
Subject: prueba correo babuino
correo de prueba

Miramos el log:

debian@bob:~$ sudo tailf /var/log/mail.log
Feb 7 07:50:10 bob postfix/pickup[2780]: 8D7DA20726: uid=1000 from=<debian@bob.maria.gonzalonazareno.org>
Feb 7 07:50:10 bob postfix/cleanup[2868]: 8D7DA20726: message-id=<20180207075010.8D7DA20726@bob>
Feb 7 07:50:10 bob postfix/qmgr[2781]: 8D7DA20726: from=<debian@bob.maria.gonzalonazareno.org>, size=375, nrcpt=1 (queue active)
Feb 7 07:50:10 bob postfix/smtp[2870]: 8D7DA20726: to=<m.romeroangulo@gmail.com>, relay=babuino.gonzalonazareno.org[192.168.103.2]:25, delay=0.03, delays=0.01/0/0.01/0.01, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as A390E86264)
Feb 7 07:50:10 bob postfix/qmgr[2781]: 8D7DA20726: removed

3.png

Tarea 2 (1 puntos)(Obligatorio): Documenta en redmine una prueba de funcionamiento, donde envíes un correo desde el exterior(gmail, hotmail,…) a tu servidor local. Muestra el log donde se vea el envío. Muestra cómo has leido el correo.

He enviado un correo desde mi cuenta de gmail.

Comprobamos el log:

debian@bob:~$ sudo tailf /var/log/mail.log

Feb 7 07:42:27 bob postfix/smtpd[2811]: connect from babuino.gonzalonazareno.org[192.168.103.2]
Feb 7 07:42:27 bob postfix/smtpd[2811]: 3DC9F20724: client=babuino.gonzalonazareno.org[192.168.103.2]
Feb 7 07:42:27 bob postfix/cleanup[2822]: 3DC9F20724: message-id=<CALK0+9MJFq=D4Z=OLn6Jyh=gs-TZSTz-D500fOiuPh1sk0ksDg@mail.gmail.com>
Feb 7 07:42:27 bob postfix/qmgr[2781]: 3DC9F20724: from=<m.romeroangulo@gmail.com>, size=2868, nrcpt=1 (queue active)
Feb 7 07:42:27 bob postfix/smtpd[2811]: disconnect from babuino.gonzalonazareno.org[192.168.103.2] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5
Feb 7 07:42:27 bob postfix/local[2823]: 3DC9F20724: to=<debian@maria.gonzalonazareno.org>, relay=local, delay=0.03, delays=0.01/0.01/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
Feb 7 07:42:27 bob postfix/qmgr[2781]: 3DC9F20724: removed

Para ver el correo usamos el mismo paquete que para enviarlo y el comando es mail:

debian@bob:~$ mail
"/var/mail/debian": 1 message 1 new
>N 1 Maria Romero Wed Feb 7 07:42 56/2950 prueba desde gmail
? 1
Return-Path: <m.romeroangulo@gmail.com>
X-Original-To: debian@maria.gonzalonazareno.org
Delivered-To: debian@maria.gonzalonazareno.org
Received: from babuino.gonzalonazareno.org (babuino.gonzalonazareno.org [192.168.103.2])
 by bob (Postfix) with ESMTP id 3DC9F20724
 for <debian@maria.gonzalonazareno.org>; Wed, 7 Feb 2018 07:42:27 +0000 (UTC)
Received: from mail-it0-f47.google.com (mail-it0-f47.google.com [209.85.214.47])
 by babuino.gonzalonazareno.org (Postfix) with ESMTPS id BE2BF86127
 for <debian@maria.gonzalonazareno.org>; Wed, 7 Feb 2018 08:42:03 +0100 (CET)
Received: by mail-it0-f47.google.com with SMTP id k131so1129773ith.4
 for <debian@maria.gonzalonazareno.org>; Tue, 06 Feb 2018 23:42:03 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20161025;
 h=mime-version:from:date:message-id:subject:to;
 bh=ZBEPIn7FBmlk6tiXUHu6pLu51RpoHs2kZBf0wUwRaX8=;
 b=tti0CNzHyH/gN2qWGWqGWnl9jh3GjcKxovCcKacoMGPBYJOZ2IgLpp2NCKN4RyoF3N
 gHhjYiH2Cmcny8JZ8M4A7Nu8nk4tUr6ZpEkywW3Tm0PnsRfI8hDih/M145D6NYG0dfJt
 2Lf4pZPfwY15JWPoYVc6/NQE05ICCorvOsVEKUt6QpHMBSRSMitfoeG9BzH6eTWzSx30
 cCkRFN9Ew5GOXnXPqYJbBr6yK0nvsCI3BihH7mPliJ917cSFGp0cfooLvLQhUP38hL4R
 Eo4WfD8MzpZrp7dNLc9MawnCgkAcscYbf+6NsV25f9xrvClgc8mdVDHNR7hlDynSPZmV
 olwQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=ZBEPIn7FBmlk6tiXUHu6pLu51RpoHs2kZBf0wUwRaX8=;
 b=aj0sVZtaOXpXvucBw0XaPGKEK/tJvG2Ei6mnF8sxd4TdPntaon8UIi3g1xqJLyzlwb
 Ira8qsVVohXSiC3T62QjkZZSuNECWIE51gXcS9joC18wB3zHLAQKcy9qYQfsknQ7JNJC
 Oc8tpY1qVsYo7GEzCPr0z2VN/Zb0iRoMd9MYVFrOatUOYyAYA2bvkAEfN6hUXyoXv1TZ
 +gwLSJpITo5zP4QPARLCLPv7pX4NbmuXglqz6J6qhwBowr5eDqth/+RLkQOgxJrD0YvC
 +5rxC+L6AT3taLrWNetROGzMpluQO7/R09zqeEnv+kCXAeaTHVd7PevDQN6KaRaRQQEs
 gIMg==
X-Gm-Message-State: APf1xPBhGe0WShonSQrAsEKXZntx8EH13EeizLzlk4/+YxgW5fA1cCU1
 eiMmO5WKdbgaHmLpGZEcPJGpyC98SxKP1xQUvq8=
X-Google-Smtp-Source: AH8x226Ay1YjzHMjx9rv/yprVQtD7GpgV9tHjtSZEuFu5IcZT6uA8OdD7e2DVmjitJK+jT5cWo/65Z+bbTWVKoxYh6w=
X-Received: by 10.36.189.15 with SMTP id x15mr7310462ite.6.1517989321022; Tue,
 06 Feb 2018 23:42:01 -0800 (PST)
MIME-Version: 1.0
Received: by 10.79.210.48 with HTTP; Tue, 6 Feb 2018 23:42:00 -0800 (PST)
From: Maria Romero <m.romeroangulo@gmail.com>
Date: Wed, 7 Feb 2018 08:42:00 +0100
Message-ID: <CALK0+9MJFq=D4Z=OLn6Jyh=gs-TZSTz-D500fOiuPh1sk0ksDg@mail.gmail.com>
Subject: prueba desde gmail
To: debian@maria.gonzalonazareno.org
Content-Type: multipart/alternative; boundary="94eb2c19e88040a17b05649a6ef9"

--94eb2c19e88040a17b05649a6ef9
Content-Type: text/plain; charset="UTF-8"

correo de prueba

--94eb2c19e88040a17b05649a6ef9
Content-Type: text/html; charset="UTF-8"
correo de prueba
--94eb2c19e88040a17b05649a6ef9--

Instala y configura un servidor dovecot POP e IMAP en tu equipo. Configura adecuadamente un cliente de correo (evolution, outlook, thunderbird, …) para que reciba el correo a través de POP o IMAP. El cliente debe estar configurado en una máquina cliente. Nombra en tu servidor DNS al servidor smtp, pop e imap.

Tarea 3 (2 puntos)(Obligatorio): Docuementa en redmine una prueba de funcionamiento, donde envíes desde tu cliente de correos al exterior. ¿Cómo se llama el servidor para enviar el correo? (Muestra la configuración).

Lo primero es instalar estos paquetes:

debian@bob:~$ sudo apt install dovecot-imapd dovecot-pop3d dovecot-core

En el fichero /etc/postfix/main.cfg añadimos:

home_mailbox = Maildir/
mailbox_command =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::z1] 172.22.0.0/16

Lo siguiente es modificar la línea de disable_plaintext_auth en /etc/dovecot/conf.d/10-auth.conf para que quede así:

disable_plaintext_auth = no

Lo siguiente es modificar la línea demail_locationen /etc/dovecot/conf.d/10-mail.conf para que quede así:

mail_location = maildir:~/Maildir

En el fichero del DNS añadimos:

imap IN CNAME correo
pop IN CNAME correo

CONFIGURACIÓN DE EVOLUTION:

Los pasos son:

45678

Comprobación desde gmail:

9

Tarea 4 (2 puntos)(Obligatorio): Documenta en redmine una prueba de funcionamiento, donde recibas un correo desde el exterior(gmail, hotmail,…) y lo leas en tu cliente de correo. Utiliza el protocolo POP. ¿Cómo se llama el servidor para enviar el correo? (Muestra la configuración). Muestra una prueba de funcionamiento de cómo funciona el protocolo POP.

He enviado el correo desde mi cuenta de gmail. Y he mantenido la configuración anterior en evolution.

10.png

En el log del correo podemos ver como hace uso de POP:

Feb 7 08:40:55 bob dovecot: master: Dovecot v2.2.27 (c0f36b0) starting up for imap, pop3 (core dumps disabled)
Feb 7 08:40:59 bob dovecot: pop3-login: Login: user=<debian>, method=PLAIN, rip=172.22.8.70, lip=10.0.0.7, mpid=6677, session=<I/omQZtkIousFghG>
Feb 7 08:40:59 bob dovecot: pop3(debian): Disconnected: Logged out top=0/0, retr=1/3052, del=1/1, size=3035

Tarea 5 (2 puntos)(Obligatorio): Documenta en redmine una prueba de funcionamiento, donde recibas un correo desde el exterior(gmail, hotmail,…) y lo leas en tu cliente de correo. Utiliza el protocolo IMAP. ¿Cómo se llama el servidor para enviar el correo? (Muestra la configuración). Muestra una prueba de funcionamiento de cómo funciona el protocolo IMAP.

La configuración de evolution solo varía en este paso:

1112

Vemos cómo ya nos ha llegado el correo:

13

Comprobamos el log:

Feb 7 08:51:56 bob postfix/smtpd[6905]: connect from babuino.gonzalonazareno.org[192.168.103.2]
Feb 7 08:51:56 bob postfix/smtpd[6905]: 6AF0B20726: client=babuino.gonzalonazareno.org[192.168.103.2]
Feb 7 08:51:56 bob postfix/cleanup[6916]: 6AF0B20726: message-id=<CALK0+9Pj2gM8rBndzAhf4uKVn7mbs53zXkpkqXtDT9GkbCLkiA@mail.gmail.com>
Feb 7 08:51:56 bob postfix/qmgr[6883]: 6AF0B20726: from=<m.romeroangulo@gmail.com>, size=2886, nrcpt=1 (queue active)
Feb 7 08:51:56 bob postfix/smtpd[6905]: disconnect from babuino.gonzalonazareno.org[192.168.103.2] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5
Feb 7 08:51:56 bob postfix/local[6917]: 6AF0B20726: to=<debian@maria.gonzalonazareno.org>, relay=local, delay=0.04, delays=0.03/0.01/0/0, dsn=2.0.0, status=sent (delivered to maildir)
Feb 7 08:51:56 bob postfix/qmgr[6883]: 6AF0B20726: removed
Feb 7 08:54:00 bob dovecot: imap-login: Login: user=<debian>, method=PLAIN, rip=172.22.8.70, lip=10.0.0.7, mpid=6920, session=<KVy1b5tk9uOsFghG>

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *