Crea tu propio servidor de correo electónico seguro, parte 1

Cuando servicios como Yahoo!, GMail de Google o AOL Mail nos han defraudado y vendido nuestros datos, nos queda ahora confiar en servicios nuevos como OpenMailBox, ProtonMail o el conocido Tutanota. Pero si ni eso nos da confianza, podemos entonces crear nuestro propio servidor de correo electrónico, tomar las precauciones de seguridad necesarias y hechar a andar el servicios para uso personal o rentarlo a conocidos.

Este pequeño tutorial es útil para crear tu servidor de correo pero entre detalles, comandos, herramientas y demás, es un mundo completo de investigación que puede ayudarte a conocer mejor tu sistema. Entonces cuando termines de investigar y de construir tu servidor, puedes burlarte de tu agencia de espionaje favorita, o no…

De igual manera, esta es una recopilación personal de herramientas que pienso puedan ayudar a mejorar la seguridad del servidor, tal vez faltan o sobran, estaré equivocada o no.

Vamos entonces a empezar a configurar nuestro servidor de correo, encriptado, con SSH y un buen detector de spam. Necesitamos: Debian, experiencia o conocimientos básicos de Apache o Nginx, acceso a root,  conexión a Internet.

También: Postfix, Dovecot, opendkim que implementa la autenticación DKIM, spamd para los malos, z-push para las notificaciones push. MySQL para almacenar información del usuario y dominios, nada invasivo para tu privacidad.

Si no sabes configurar un servidor básico lee esto: http://plusbryan.com/my-first-5-minutes-on-a-server-or-essential-security-for-linux-servers

Configurando DNS

Si tienes un dominio puedes empezar con esto. Crea un subdominio o usa el que tienes para el servidor. Ejemplo: denisse@cyberantigone.net

EncFS

Creamos una carpeta normal para el correo desencriptado y una carpeta cifrada.

Postfix

Mostrará información sobre tu nombre de correo, como en mi caso: cyberantigone.net. Instalamos lo necesario:

apt-get install postfix postfix-mysql dovecot-core dovecot-imapd dovecot-mysql mysql-server dovecot-lmtpd

Y en unos minutos ya tenemos servidor, ahora configuramos la contraseña:
doveadm pw -s SHA512-CRYPT
Este comando crea una cadena rara que es tu contraseña.

Creamos tablas y datos con MySQL

Y si queremos, agregamos otros dominios:

Vamonos, salimos del servicio con mysql > exit y ahora configuramos Posix:

cp /etc/postfix/main.cf /etc/postfix/main.cf.orig
nano /etc/postfix/main.cf

Comenta “TLS parameters”, y en su lugar escribe esto:

Debajo de los parametros de TLS pega esta plasta de texto:

smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions =
        permit_sasl_authenticated,
        permit_mynetworks,
        reject_unauth_destination

Hay una linea asi: mydestination = localhost asegurate que dice localhost. Ya ahora, hasta abajo de todo el texto pega este código:

Básicamente hace que posix y mySQL se conozcan y salgan en una cita.

Ahora configuramos los tres archivos de arriba:

1 – nano /etc/postfix/mysql-virtual-mailbox-domains.cf
con esta información:

2- nano /etc/postfix/mysql-virtual-mailbox-maps.cf:

3 – nano /etc/postfix/mysql-virtual-alias-maps.cf:

Reinicia el servicio con: service restart postfix

Dovecot

Primero vamos a respaldar los ficheros de configuración:

Editamos el primero: nano /etc/dovecot/dovecot.conf y escribimos al final protocols = imap para habilitar imap.

Siguiente: nano /etc/dovecot/conf.d/10-mail.conf con esta información:

Ahora el archivo de autenticación: nano /etc/dovecot/conf.d/10-auth.conf

Configuramos SQL: nano /etc/dovecot/conf.d/auth-sql.conf.ext

Otro más: nano /etc/dovecot/dovecot-sql.conf.ext configuramos. Protegemos nuestro password con SHA512, suficientemente bueno para que la NSA se enoje un poco.

Ahora : nano /etc/dovecot/conf.d/10-master.conf con esto forzamos a usar un socket seguro:

Reemplazamos todo el contenido de los archivos “service auth” y “service auth-worker” con:

Y ahora creamos los certificados SSL:

openssl req -new -x509 -days 1000 -nodes -out “/etc/ssl/certs/dovecot.pem” -keyout “/etc/ssl/private/dovecot.pem
Y los configuramos:

Reinciamos el servicio con: service dovecot restart

Hasta ahora hemos configurado lo más básico y basta para recibir y enviar correo electrónico (usando IMAP en el puerto 993). En la segunda parte vamos a implementar un filtro anti spam y varias cosas más.

Acerca de Denisse

Denisse
Edward Snowden es mi novio <3

Visita también

Tutorial para instalar la versión de mantenimiento del kernel Linux 4.13

Ayer mismo se publico la versión final del kernel 4.13, la cual explicaremos como instalar …

Deja una respuesta

13 Comentarios En "Crea tu propio servidor de correo electónico seguro, parte 1"

Notificarme las
avatar
trackback

[…] Cuando servicios como Yahoo!, GMail de Google o AOL Mail nos han defraudado y vendido nuestros datos, nos queda ahora confiar en servicios nuevo  […]

Samuel
Invitado

Excelente, me ayudo a salir de muchas dudas, cuando cuelgas las que vienen…?

Noel
Admin

Mañana sale la segunda parte, faltan menos de 9h para eso 😉

armando
Invitado

execlente aporte, la segunda parte no la hubico

Noel
Admin

Ese toca mañana 😉

trackback

Información Bitacoras.com

Valora en Bitacoras.com: Cuando servicios como Yahoo!, GMail de Google o AOL Mail nos han defraudado y vendido nuestros datos, nos queda ahora confiar en servicios nuevos como OpenMailBox, ProtonMail o el conocido Tutanota. Pero si ni eso nos da conf..…

wpDiscuz