Diferencia entre revisiones de «Instalar servidor de correo»

De Wiki de BandaAncha.eu
Saltar a: navegación, buscar
 
(No se muestran 8 ediciones intermedias de 3 usuarios)
Línea 1: Línea 1:
[[Categoría:Administración de un servidor dedicado]]
 
 
Cercionarse de que:
 
Cercionarse de que:
  
Línea 80: Línea 79:
 
Editamos /etc/imapd.conf
 
Editamos /etc/imapd.conf
  
  sasl_pwcheck_method: auxprop
+
  sasl_pwcheck_method: auxprop #
 +
imapidresponse #
 +
 
 +
es aconsejable usar la opción lmtp_downcase_rcpt: yes en el fichero /etc/imapd.conf
 +
En /etc/cyrus.conf dentro de la sección SERVICES
 +
 
 +
lmtpunix cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1
 +
 
 +
Coprbar permisos de /var/lib/imap/socket/lmtp para que tanto postfix como cyrus puedan leer y escribir y nadie más.
  
 +
==Postfix==
  
 +
Usaremos el protocolo LMTP para la comunicación entre el Postfix y Cyrus. Nos aseguramos de que el fichero /etc/postfix/master.cf contiene esta línea:
 +
 +
# service type  private unpriv  chroot  wakeup  maxproc command + args
 +
lmtp      unix  -      -      n      -      -      lmtp
 +
 +
En /etc/postfix/main.cf
 +
 +
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
 +
# deshabilitamos que postfix compruebe los destinatarios
 +
local_recipient_maps =
  
 
==Gestión de usuarios==
 
==Gestión de usuarios==
Línea 88: Línea 106:
 
Los usuarios se guardan en /etc/sasldb2 con formato Berkeley DB
 
Los usuarios se guardan en /etc/sasldb2 con formato Berkeley DB
  
Añado usuario a sasl
+
saslpasswd2 -c [usuario@dominio] # añado usuario
 +
saslpasswd2 -d [usuario@dominio] # borro usuario
 +
sasldblistusers2 # listar usuarios
  
saslpasswd2 -c josh
+
Hay que ajustar los permisos para que tanto smtpd (Postfix) como imapd (Cyrus) puedan leer la DB de usuarios.
  
Listar usuarios
+
chgrp postfix /etc/sasldb2
  
  sasldblistusers2
+
  cyradm -user cyrus localhost
  
Hay que ajustar los permisos para que smtpd pueda leer la DB de usuarios
+
# Añado usuario test
  
  chgrp postfix /etc/sasldb2
+
  saslpasswd2 -c [email protected]
  
 
==Probando==
 
==Probando==
  
AUTH PLAIN base64encode
+
>telnet levitico.vectrice.com 25
 +
220 levitico.vectrice.com ESMTP Postfix
 +
EHLO vectrice.com
 +
250-levitico.vectrice.com
 +
250-PIPELINING
 +
250-SIZE 10240000
 +
250-VRFY
 +
250-ETRN
 +
250-AUTH PLAIN DIGEST-MD5 CRAM-MD5
 +
250 8BITMIME
 +
AUTH PLAIN ads8fyasd89f
 +
235 Authentication successful
 +
MAIL FROM: <[email protected]>
 +
250 Ok
 +
RCPT TO: <[email protected]>
  
 
==Enlaces==
 
==Enlaces==
Línea 111: Línea 145:
 
* [http://www.sendmail.org/~ca/email/cyrus2/ Documentación de Cyrus SASL]
 
* [http://www.sendmail.org/~ca/email/cyrus2/ Documentación de Cyrus SASL]
 
* [http://cyrusimap.web.cmu.edu/imapd/ Documentación de Cyrus Imapd]
 
* [http://cyrusimap.web.cmu.edu/imapd/ Documentación de Cyrus Imapd]
 +
* [http://www.wikilearning.com/cyrus_imap_sasl_tls-wkc-5098.htm Excelente Cyrus howto]
 +
 +
[[Categoría:Administración de un servidor dedicado]]

Revisión actual del 10:37 9 ene 2008

Cercionarse de que:

Nuestro hostname esta bien configurado

Instalación[editar]

# quitamos sendmail
yum remove sendmail
#Removed: sendmail.i386 0:8.13.1-3.RHEL4.5
#Dependency Removed: mdadm.i386 0:1.6.0-3 redhat-lsb.i386 0:3.0-8.EL
# instalamos
cyrus-sasl # sistema de autentificación de los usuarios de correo
cyrus-sasl-md5 # tipo de autentificación md5
cyrus-sasl-plain # tipo de autentificación plain
yum install postfix # servidor smtp
yum install cyrus-imapd # servidor imap y pop3
yum install cyrus-imapd-utils # comando cyradm con el que se crean mailboxes
# que los servidores de correo arranquen en el inicio del sistema
chkconfig postfix on
chkconfig cyrus-imapd on

Los ficheros de configuración de Postfix están en /etc/postfix y los mas importantes son

/etc/postfix/main.cf
/etc/postfix/master.cf

después de cualquier modificación de estos hay que reiniciar postfix

postfix reload

La cola se almacena en /var/spool/postfix

Configuración[editar]

Edito /etc/postfix/main.cf y modifico las siguientes líneas

myhostname = levitico.vectrice.com

Rechazar emails con adjuntos peligrosos[editar]

Creamos /etc/postfix/body_checks con el siguiente contenido:

/^((Content-(Disposition: attachment;|Type:).*|\ +)| *)(file)?name\ *=\ *"?.*\.(lnk|asd|hlp|ocx|reg|bat|c[ho]m|cmd|exe|dll|vxd|pif|scr|hta|jse?|sh[mbs]|vb[esx]|ws[fh]|wmf)"?\ *$/      REJECT El mensaje contiene archivos adjuntos con extensiones no permitidas

Editamos /etc/postfix/main.cf y añadimos:

mime_header_checks = pcre:/etc/postfix/body_checks

Cyrus SASL[editar]

SASL es Simple Authentication and Security Layer. 

Cyrus Imapd[editar]

Edito

smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = 
       permit_mynetworks permit_sasl_authenticated

Configuración[editar]

Enabling SASL authentication in the Postfix SMTP server[editar]

Editamos /etc/postfix/main.cf y añadimos

smtpd_sasl_auth_enable = yes
smtpd_client_restrictions = ... permit_sasl_authenticated ...

Editamos /usr/lib/sasl2/smtpd.conf

pwcheck_method: auxprop

Cyrus Imapd[editar]

Editamos /etc/cyrus.conf y en SERVICES comentamos los servicios que no vayamos a utilizar.

Editamos /etc/imapd.conf

sasl_pwcheck_method: auxprop #
imapidresponse #

es aconsejable usar la opción lmtp_downcase_rcpt: yes en el fichero /etc/imapd.conf En /etc/cyrus.conf dentro de la sección SERVICES

	lmtpunix	cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1

Coprbar permisos de /var/lib/imap/socket/lmtp para que tanto postfix como cyrus puedan leer y escribir y nadie más.

Postfix[editar]

Usaremos el protocolo LMTP para la comunicación entre el Postfix y Cyrus. Nos aseguramos de que el fichero /etc/postfix/master.cf contiene esta línea:

# service type  private unpriv  chroot  wakeup  maxproc command + args
lmtp      unix  -       -       n       -       -       lmtp

En /etc/postfix/main.cf

mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
# deshabilitamos que postfix compruebe los destinatarios
local_recipient_maps =

Gestión de usuarios[editar]

Los usuarios se guardan en /etc/sasldb2 con formato Berkeley DB

saslpasswd2 -c [usuario@dominio] # añado usuario
saslpasswd2 -d [usuario@dominio] # borro usuario
sasldblistusers2 # listar usuarios

Hay que ajustar los permisos para que tanto smtpd (Postfix) como imapd (Cyrus) puedan leer la DB de usuarios.

chgrp postfix /etc/sasldb2
cyradm -user cyrus localhost
  1. Añado usuario test
saslpasswd2 -c [email protected]

Probando[editar]

>telnet levitico.vectrice.com 25
220 levitico.vectrice.com ESMTP Postfix
EHLO vectrice.com
250-levitico.vectrice.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH PLAIN DIGEST-MD5 CRAM-MD5
250 8BITMIME
AUTH PLAIN ads8fyasd89f
235 Authentication successful
MAIL FROM: <[email protected]>
250 Ok
RCPT TO: <[email protected]>

Enlaces[editar]