Lo primero es configurar el nombre del host, para esto editamos estos archivos
/etc/hosts
127.0.0.1 empresa.net localhost localhost.localdomain
/etc/sysconfig/network
HOSTNAME=empresa.net
Y por ultimo utilizamos el comando hostname
hostname empresa.net
Instalamos los paquetes que nos hagan falta
yum install createrepo dialog
No usaremos la version 5.0 porque esta en estado beta y no es recomendable para entornos de produccion.
wget http://iredmail.googlecode.com/files/iRedMail-0.4.0.tar.bz2 tar xjf iRedMail-0.4.0.tar.bz2 cd iRedMail-0.4.0.tar.bz2/pkgs/ sh get_all.sh
Una vez hecho esto descargara los paquetes necesarios y creara un reposito local yum. Ahora toca instalarlos.
bash iRedMail.sh
Seguimos los pasos y nos pedirán datos para completar la instalación. Seleccionaremos si queremos MySQL para la autenticación de usuario u OpenLDAP, las contraseñas para los distintos servicios.
En la parte de seleccion de protocolos seleccione IMAP e IMAPS, no instale ningún servidor POP3. Y como extras instale RoundCube, SquidreMail, phpldapadmin para la gestión del ldap.
Tenemos que edicar el /etc/posfix/main.cf y añadir el local_recipient_maps. Este parametro de configuracion hace que ningun usuario que no este en el servidor LDAP pueda enviar correos. Evitando asi ser reenviadores de spam.
vim /etc/postfix/main.cf local_recipient_maps = $alias_maps $virtual_alias_maps $virtual_mailbox_maps
Podemos crear lo usuarios desde phpldapadmin o con un script llamado create_mail_user_OpenLDAP.sh. Por defecto las contraseñas seran igual al nombre de usuario.
cd /root/iRedMail-0.4.0/tools sh create_mail_user_OpenLDAP.sh <dominio> <usuario1> <usuario2>
Pero antes de usarlo debemos modificarlo para que sea capaz de crear usuarios en nuestro dominio. Para esto lo editamos y dejamos las opciones como muestro a continuacion. Claro que esto cambia con cada instalacion, tendremos que tener en cuenta las opciones elegidas anteriormente en la configuracion de iRedMail.
# ---------------------------------------------- # ------------ Global Setting ------------------ # ---------------------------------------------- # Mailbox format: mbox, Maildir. HOME_MAILBOX='Maildir' # Maildir format. # YES: domain.ltd/username/Maildir/ # No: domain.ltd/username/ MAILDIR_IN_MAILBOX='NO' MAILDIR_STRING='Maildir/' # All mails will be stored under user vmail's home directory. # Files and directories will be ownned as 'vmail:vmail'. VMAIL_USER_NAME="vmail" VMAIL_GROUP_NAME='vmail' # HOME directory for LDAP user. # mailbox of LDAP user will be: # ${VMAIL_USER_HOME_DIR}/${DOMAIN_NAME}/${USERNAME}/ # Such as: # /home/vmail/domains/domain1.com/bibby/ # -------------------|===========|-----| # VMAIL_USER_HOME_DIR|DOMAIN_NAME|USERNAME # VMAIL_USER_HOME_DIR="/home/vmail" # ------------------------------------------------------------------ # -------------------------- LDAP Setting -------------------------- # ------------------------------------------------------------------ LDAP_SUFFIX="dc=empresa,dc=net" # Setting 'BASE_DN'. BASE_DN="o=domains,${LDAP_SUFFIX}" # Setting 'DOMAIN_NAME' and DOMAIN_DN': # * DOMAIN will be used in mail address: ${USERNAME}@${DOMAIN} # * DOMAIN_DN will be used in LDAP dn. DOMAIN_NAME="$1" DOMAIN_DN="domainName=${DOMAIN_NAME}" OU_USER_DN="ou=Users" OU_GROUP_DN="ou=Groups" # ---------- rootdn of LDAP Server ---------- # Setting rootdn of LDAP. BINDDN="cn=Manager,${LDAP_SUFFIX}" # Setting rootpw of LDAP. BINDPW="contraseña ldap" # ---------- Virtual Domains & Users -------------- # Set default quota for LDAP users: 104857600 = 100M QUOTA='104857600' # Default MTA Transport (Defined in postfix master.cf). TRANSPORT='dovecot' # Create maildir in file system after user created. # NOTE: We do *NOT* need this step, because dovecot will create user # mailbox automatic when user login via IMAP/POP3 successfully. CREATE_MAILDIR='NO' # ------------------------------------------------------------------ # ------------------------- Welcome Msg ---------------------------- # ------------------------------------------------------------------ # Send a welcome mail after user created. SEND_WELCOME_MSG='YES' # Set welcome mail info. WELCOME_MSG_TITLE="Bienvenido!" WELCOME_MSG_BODY="Bienvenido al servidor de correos de EmMpresa. WebMails: http://empresa.net/mail y http://empresa.net/squirrel Configuracion de clientes: - protocolo correo entrante: IMAPS - protocolo correo saliente: SMTP-AUTH - nombre servidor: empresa.net Cambio de password: - Roundcube: configuracion -> contrasenya." # ------------------------------------------- # ----------- End Global Setting ------------ # -------------------------------------------
Component | URL | HTTP | HTTPS |
---|---|---|---|
Roundcube webmail | http://your_server/mail/ (or /webmail, /roundcube) | YES | YES |
Squirrel webmail | http://your_server/squirrel/ (or /squirrel mail) | YES | YES |
PostfixAdmin | https://your_server/postfixadmin/ | NO | YES |
phpMyAdmin | https://your_server/phpmyadmin/ (or /mysql) | NO | YES |
phpLDAPAdmin | https://your_server/ldap/ (or /phpldapadmin) | NO | YES |
Awstats | https://your_server/awstats/awstats.pl | NO | YES |
Para probar que estén bien instalados y ejecutándose podemos enviarnos un email a nosotros mismos y ver la cabecera:
Return-Path: <nuevo@empresa.net> Delivered-To: nuevo@empresa.net Received: from localhost (empresa.net [127.0.0.1]) by empresa.net (iRedMail) with ESMTP id 5C4CB155987 for <nuevo@empresa.net>; Fri, 22 May 2009 10:30:54 +0000 (UTC) X-Quarantine-ID: <xEJMeXkZWa53> X-Virus-Scanned: amavisd-new at empresa.net X-Spam-Flag: YES X-Spam-Score: 995.249 X-Spam-Level: **************************************************************** X-Spam-Status: Yes, score=995.249 tagged_above=2 required=6.2 tests=[ALL_TRUSTED=-10, AWL=0.287, GTUBE=1000, TVD_RCVD_IP=1.617, TVD_RCVD_IP4=3.344] autolearn=no Received: from empresa.net ([127.0.0.1]) by localhost (empresa.net [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xEJMeXkZWa53 for <nuevo@empresa.net>; Fri, 22 May 2009 11:30:53 +0100 (WEST) Received: from 192.168.1.1.168 (empresa.net [127.0.0.1]) by empresa.net (iRedMail) with ESMTPSA id E581B155846 for <nuevo@empresa.net>; Fri, 22 May 2009 10:30:53 +0000 (UTC) MIME-Version: 1.0 Date: Fri, 22 May 2009 12:30:53 +0200 From: Nuevo email <nuevo@empresa.net> To: nuevo <nuevo@empresa.net> Subject: [SPAM] (sin asunto) Organization: Empresa Message-ID: <49345d953aff76205e149fedc984fb19@127.0.0.1> X-Sender: nuevo@empresa.net User-Agent: RoundCube WebMail Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="UTF-8"
Si aparece X-Virus-Scanned y X-Spam significa que esta funcionando. Ademas el asunto pone Subject: [SPAM] (sin asunto). Porque el email enviado tenia contenido ilegal para SpamAssasin. Para realizar esta prueba me envie un email con “XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X” Sin comillas y en mayusculas.
http://es.wikipedia.org/wiki/Lista_negra_%28Internet%29
Añadimos estas lineas para consultar las bases de datos de listas negras.
vim /etc/postfix/main.cf smtpd_recipient_restrictions = reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unlisted_recipient, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_non_fqdn_helo_hostname, reject_invalid_helo_hostname, check_policy_service inet:127.0.0.1:10031, reject_rbl_client list.dsbl.org, reject_rbl_client sbl.spamhaus.org, reject_rbl_client cbl.abuseat.org, reject_rbl_client dul.dnsbl.sorbs.net
Y tambien añadimos tiempo de espera entre errores.
smtpd_error_sleep_time = 1s smtpd_soft_error_limit = 10 smtpd_hard_error_limit = 20