PDF de programación - Postfix+Cyrus Imap+Sasl+tls

Imágen de pdf Postfix+Cyrus Imap+Sasl+tls

Postfix+Cyrus Imap+Sasl+tlsgráfica de visualizaciones

Publicado el 22 de Mayo del 2018
403 visualizaciones desde el 22 de Mayo del 2018
134,8 KB
8 paginas
Creado hace 20a (13/11/2003)
Postfix+Cyrus Imap+Sasl+tls

Mario Teijeiro Otero

13 de noviembre de 2003

Resumen

En el momento en que hay la necesidad de leer el correo desde más de
un ordenador, se hace necesario dejar el modelo POP3, en el cual el correo
es descargado para su consulta, y pasar a un modelo en el cual todo el
correo se organiza en el servidor, pudiendo gozar de todas las posibilidades
del POP3 (organización del correo en carpetas, marcado de mensajes como
leidos,. . . ) y como añadido, se hace especialmente interesante para líneas
lentas, ya que sólo hay que descargarse los mensajes a medida que se leen.

En este artículo se utilizará un sistema debian sarge.

1.

Introducción

Al final del artículo conseguiremos tener un sistema de correo con un servidor

de correo cyrus-imap y postfix con las siguientes características:

Los usuarios del sistema de correo no son usuarios de sistema.

Autentificación a través de SASL (Simple Authentication and Security
Layer) RFC2222 y RFC2554, con métodos de texto plano, login,cram-
md5, digest-md5.

Transporte seguro del tráfico mediante TLS (RFC2487 y RFC3546).

Filtrado de correo en servido a través de sieve RFC3028.

2. Autentificación de usuarios

Para la autentificación de usuarios se va a utilizar cyrus-sasl que es la
implementación del equipo de cyrus del RFC2222. Es necesario instalar los
paquetes adecuados:

libsasl2 Librería de que realiza la abastracción a los módulos de autentificación.

libsasl2-modules Módulos de autentificación, a través de ellos se puede auten-
tificar contra MySQL, por OTP (One Time Password) RFC1938, sasldb. . .

sasl2-bin Demonio de autentificación y utilidades para el manejo de la base de

datos de usuario sasldb.

1

2.1. Parada del demonio saslautd

Se va a utiliar únicamente el módulo sasldb, y, para utilizar éste, no es

necesario ejecutar el demonio de autentificación:

cernicalo:~# update-rc.modules -f saslauthd remove

o bien, en el fichero /etc/default/saslauthd:

# This needs to be uncommented before saslauthd will be run automatically
START=no

# You must specify the authentication mechanisms you wish to use.
# This defaults to "pam" for PAM support, but may also include
# "shadow" or "sasldb", like this:
# MECHANISMS="pam shadow"

#MECHANISMS="pam"
MECHANISMS="sasldb"

Figura 1: /etc/default/saslauthd

2.2. Creación base de datos de usuarios

La base de datos residirá en el fichero /etc/sasldb2 y tendrá los permisos:

cernicalo:~# ls -l /etc/sasldb2
-rw-r-----

2 root

sasl

12288 Nov

7 21:02 /etc/sasldb2

Por lo que todos los usuarios que quieran acceder a ella, y que no sea a través

del demonio saslauthd, deben pertenecer al grupo sasl.

Para añadir/eliminar los usuarios a la base de datos se utilizará el programa

saslpasswd2:

cernicalo:~# saslpasswd2 -f /etc/sasldb2 -c usuario
Password:
Again (for verification):
cernicalo:/tmp# sasldblistusers2 /etc/sasldb2
usuario@cernicalo: userPassword
prueba@cernicalo: userPassword
cernicalo:~# saslpasswd2 -f /etc/sasldb2 -d prueba
cernicalo:/tmp# sasldblistusers2 /etc/sasldb2
usuario@cernicalo: userPassword

Para que la librería libsasl2 utilice el módulo de autentificación sasldb se

ha de configurar cada programa que use esta librería las opciones pwchek method=auxprop
y auxprop plugin=salsdb.

2

3.

Instalación del cyrus-imapd

Éste es el programa que va a dar servicio imap, imaps, sieve . . . Los paquetes

necesarios instalar son:

cyrus21-common Ficheros comunes a todos los paquetes de cyrus.

cyrus21-imapd Servidor de correo IMAP.

cyrus21-admin Herramientas para la administración de los buzones.

libcyrus-imap-perl21 Interfaz a la librería cliente de cyrus-imap, necesaria

por cyrus21-admin.

Al instalar estos programas se crea una jerarquía de directorios en /var/spool/cyrus/mail

para almacenar los buzones de correo. Todos estos ficheros tienen como propie-
tario a cyrus y grupo mail.

Sólo hay dos ficheros de configuración:

/etc/cyrus.conf En dónde se configura qué servicios se va a arrancar al levan-

tar el sistema cyrus.

/etc/imapd.conf Configuración específica para el servicio imap de cyrus.

3.1. El fichero de configuración cyrus.conf

Consta de tres partes bien diferenciadas: programas que ejecuta al arrancar
el sistema cyrus, los servicios que levanta, y programas a ejecutar ante la llegada
de eventos de tiempo.

Dentro de los servicios se ha de tener activados (descomentado):

imap, imaps Para dar servicio de imap (puerto 143) e imap seguro (993). Al

menos uno debería estar activado.

lmtp, lmtpunix Mediante estos protocolos se le alimenta los mensajes para
que cyrus los reparta entre sus usuarios. En caso de usar el programa
cyrdeliver no es necesario tenerlos activados. El primero utiliza socket
TCP/IP y el segundo sockets unix. Si la fuente de mensajes (postfix)
está en la misma máquina se recomienda usar lmtpunix, en caso contrario
es necesario usar lmtp. Debe activarse el que se vaya a utilizar.

sieve Para permitir la actualización de los scripts de filtrado para los usuar-
ios. En debian viene restringido para que sólo se puedan actualizar desde
localhost. Para permitir la actualización se ha de modificar el parámetro
listen="localhost:sieve" a listen="sieve".

3.2. El fichero de configuración imapd.conf
altnamespace: yes A yes si se quiere que las subcarpetas del buzón de usuario

no aparezcan al mismo nivel que INBOX.

unixhierarchysep: no Separador de subcarpetas es el ‘.’, no ‘/’.

3

admins: cyrus Usuario que va a ser el administrador de los mailboxes. Este
usuario se va a autentificar mediante el método sasl, por lo que debe
añadirse a la base de datos mediante el programa saslpasswd2, ver 2.2.

allowanonymouslogin: no En principio no se va a permitir usuarios anóni-

mos. Ésto es útil si se crean mailboxes públicos.

autocreatequota: 0 Si es distinto de creo se permite que los usuarios creen su

INBOX y se le aplica la quota inidicada.

umask: 077 Umask a aplicar a los mailboxes creados.

sendmail: /usr/sbin/sendmail Programa compatible con sendmail que va a

usar sieve para enviar los reject,redirect, y respuestas de vacaciones.

sieveusehomedir: false No leer el fichero ~/.sieve. Ésto sólo tiene sentido

en sistemas en dónde los usuarios del correo son usuarios del sistema.

sievedir: /var/spool/sieve si sieveusehomedir es false, el directorio en dónde

se buscan los scripts sieve.

hashimapspool: true El directorio del spool es hashed

allowplaintext: no No se permite el uso del mecanismo de autentificación

sasl plain.

sasl mech list: login cram-md5 digest-md5 Mecanismos permitidos para

la autentificación sasl.

sasl pwcheck method: auxprop Método usado para chequear la password.

sasl auxprop plugin: sasldb Se utilizará sasldb.

tls imap cert file: /etc/ssl/certs/cyrus-imapd.cert.pem Fichero a utilizar

como certificado. (necesario en caso de utilizar imaps). Si no se especifica
se usa el de la variable tls cert file que es la configuración global para
todos los servicios.

tls imap key file: /etc/ssl/private/cyrus-imapd.key.pem Fichero a uti-

lizar como clave privada (necesario en caso de utilizar imaps).

tls ca path: /etc/ssl/certs Directorio en dónde están los certificados de las

autoridades certificadoras.

tls session timeout: 1440 Timeout de la sesión

tls cipher list: TLSv1:SSLv3:SSLv2:!NULL:!EXPORT:!DES:!LOW:@STRENGTH

Cifrados que se permiten.

lmtpsocket: /var/run/cyrus/socket/lmtp Socket a utilizar para recibir men-

sajes. Debe ser el mismo que aparece en el fichero de configuración /etc/cyrus.conf.

idlesocket: /var/run/cyrus/socket/idle Socket a utilizar por el programa
idled encargado de revisar cambios en los mailboxes. Debe ser el mismo
que aparece en el fichero de configuración /etc/cyrus.conf.

4

3.3. Administración de los buzones de correo

La administración de los buzones de correo se realiza mediante el programa

cyradm. Se ha de conectar con un usuario de los indicados en admins:

cernicalo:~emeteo$ cyradm --user cyrus localhost
Password:
localhost>help
authenticate, login, auth
chdir, cd
createmailbox, create, cm
deleteaclmailbox, deleteacl, dam
deletemailbox, delete, dm
disconnect, disc
exit, quit
help, ?
info
listacl, lam, listaclmailbox
listmailbox, lm
listquota, lq
listquotaroot, lqr, lqm
reconstruct
renamemailbox, rename, renm
server, servername, connect
setaclmailbox, sam, setacl
setinfo
setquota, sq
version, ver

authenticate to server
change current directory
create mailbox
remove ACLs from mailbox
delete mailbox
disconnect from current server
exit cyradm
show commands
display mailbox/server metadata
list ACLs on mailbox
list mailboxes
list quotas on specified root
show quota roots and quotas for mailbox
reconstruct mailbox (if supported)
rename (and optionally relocate) mailbox
show current server or connect to server
set ACLs on mailbox
set server metadata
set quota on mailbox or resource
display version info of current server

Todos los buzones de usuario estarán bajo el directorio user. Por lo que para

crear el buzón del usuario ‘usuario’:

localhost> cm user.usuario
localhost>lm
user.usuario (\HasNoChildren)
localhost>lm user.usuario.personales
localhost>lm
user.usuario (\HasChildren)
user.usuario.personales (\HasNoChildren)

En el caso de tener la opción de configuración altnamespace: yes, el usuario
vería en su programa cliente de correo la carpeta ‘INBOX’y la carpeta ‘perso-
nalesál mismo nivel.

4.

Instalación de postfix

Será el encargado de repartir el correo localmente. Veremos que podemos
utilizar tres métodos para entregar el correo a cyrus: procmail, cyrdeliver,
lmtp.

La instalación de postfix-tls en Debian ya deja funcionando el servidor.
Sólo queda personalizar la configuración de éste para que entregue el correo

5

a cyrus permitiendo SMTP AUTH autentificando mediante sasl y permita la
transmisión de correo mediante forma segura.

4.1. Entrega de correo a cyrus
4.1.1. Mediante cyrdeliver

En la instalación de Debian en el fichero /etc/p
  • Links de descarga
http://lwp-l.com/pdf11198

Comentarios de: Postfix+Cyrus Imap+Sasl+tls (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad