Foro de soporte
EventosNo hay eventos próximosParticipan...Noticiasjoelbarrios (889) bartoloco (103) capotes (87) bakara (59) Koalasoft (50) The One (46) domingov (43) gomezbjesus (35) aLb3rT (30) adrianpazr (21) yucleto (16) ValeriaBueno (15) Zilus (14) burjans (13) farceb (11) Comentarios joelbarrios (155) Koalasoft (126) aLb3rT (107) gomezbjesus (73) The One (61) bakara (34) manowar (32) Oscar Hernández (30) rlameda (26) bartoloco (26) Jose de Jesus (22) scs_calleros (21) Nuke (21) julioe (20) yucleto (20) |
Autor: Joel Barrios Dueñas Correo electrónico: darkshram en gmail punto com Sitio de Red: http://www.alcancelibre.org/ Jabber ID: darkshram@jabber.org Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1
Software requerido:Se recomienda utilizar al menos las siguientes versiones de software. No utilice versiones inferiores.
Antes de continuar verifique siempre la existencia posibles actualizaciones de seguridad. Para Red Hat Linux 8.0 y 9 hay paquetería de actualización en los siguientes enlaces:
Si utiliza apt para RPM, solo bastará ejecutar:
Sustituir Sendmail con Postfix en el sistema.Si utiliza distribuciones como Red Hat Linux 9 o Yellow Dog Linux 3.0, solo necesitará utilizar el mandato redhat-switch-mail, el cual se encargará de realizar todos los cambios pertinentes en el sistema para cambiar de Sendmail hacia Postfix como MTA predeterminado. SASL.¿Que es SASL?SASL es el acrónimo de "Simple Authentication and Security Layer" que significa "Capa de Seguridad y Autenticación Simple". SASL es un método para añadir soporte para autenticación a los protocolos como SMTP. ProcedimientosEdite /usr/lib/sasl/smtpd.conf y verifique que esté el siguiente contenido:
Para activar el soporte SASL, se debe asignar al menos una contraseña a cualquier cuenta de usuario en el sistema.
Debido a que Postfix gtrabaja por defecto con chroot(), y es conveniente que siga haciendolo así, es perferible mover /etc/sasldb hacia la ruta acequible para postfix que corresponde a /var/spool/postfix/etc/sasldb:
A fin de mantener un nivel de seguridad aceptable y permitir al mismo tiempo que ostfix pueda acceder al fichero de contraseñas, debemos asignar nuevos permisos a /var/spool/postfix/etc/sasldb:
Lo anterior designa permisos de lectura y escritura para root y de solo lectura para el usuario postfix. Crear enlace simbólico para poder utilizar el mandato saslpasswd normalmente y no tener que realizar el tedioso procedimiento de tener que copiar de nuevo dicho fichero cada vez que se de da alta o se modifique una cuenta.
De de alta todas las cuentas de usuario restantes:
Levantar el demonio saslauthd y añadirlo a los servicios activos:
IMAP y POP3Configuraremos de una vez el protocolo mediante el cual el usuario recuperará su correo. Puede utilizarse IMAP (Internet Message Access Protocol) o bien POP3 (Post Office Protocol, versión 3) o bien ambos. Si se elige IMAP, el todo el correo permanecerá en el servidor hasta que sea eliminado explícitamente. Si se utiliza POP3, el correo será descargado por completo por medio del cliente del correo hacia la máquina del usuario. Para habilitar uno u otro protocolo, o ambos, utilizaremos el mandato chkconfig:
Postfix.¿Que es Postfix?Postfix es un MTA, que es acrónimo de "Mail Transport Agent" y que a su vez significa "Agente de Transporte de Correo". Postfix fue desarrollado como un reemplazo para Sendmail. Postfix es la versión libre de Secure Mailer de IBM cuyo desarrollo fue iniciado por Wietse Vename en el T.J. Research Lab propiedad de IBM. Postfix es una magnífica alternativa hacia Sendmail, el cual desafortunadamente posee un pésimo historial de seguridad. ¿Por que se sigue usando Sendmail? Porque viene incluido como MTA por defecto en la mayoría de las distribuciones de Linux y otros sabores de UNIX. Postfix es menos complicado de configurar, es más rápido, fácil de administrar y seguro. Postfix trabaja por defecto dentro de una jaula (chroot) localizada en /var/spoo/postfix, y por tal motivo es todavía más seguro reduciendo enormemente los riesgos para el sistema en el caso del surgimiento de una vulnerabilidad. Procedimientos.Editar al final del fichero /etc/postfix/aliases la línea que por defecto especifica como alias de root a postfix, lo cual se debe cambiar y definir en su lugar una cuenta de usuario válida. ¡Eso es algo muy importante!
Al terminar, ejecute el mandato newaliases a fin de convertir /etc/postfix/aliases en /etc/postfix/aliases.db.
Editar /etc/postfix/main.cf y donde se definirán algunas variables. Redundar el nombre del servidor, el cual también debe ser un nombre de dominio completamente resuelto por un DNS:
Definase además el dominio a utilizar.
Redundar el dominio a utilizar para los mensajes salientes. Por defecto se añade $myhostname, pero si así se desea, pude establecerse $mydomain.
En Red Hat Enterprise Linux y sistemas operativos derivados se establece localhost como única interfaz para escuchar peticiones. Puede comentarse la línea, puesto que Postfix escuchará peticiones por todas las interfaces por defecto:
Defina los dominios a administrar:
Defina los equipos a los que se permitirá enviar libremente el correo a través de postfix:
Si desea incrementar el nivel de seguridad o bien simplemente le interesa utilizar el método de autenticación que se explica más adelante, puede definir una lista de IP contenida en un fichero, el cual incluirá además de las IP propias del servidor y las de aquellos equipos a los que verdaderamente se permitirá enviar correo libremente a través de postfix:
Un ejemplo del contenido de mynetworks sería:
Si se utiliza una dirección IP pública, como por ejemplo 148.240.39.174, nunca se defina el segmento de este en mynetworks (148.240.39.0/24), ya que de otro modo cualquier otro equipo de dicha red tendría permitido hacer uso del servidor de correo. Redundemos los dominios que se permite para enviar correo designando la variable $mydestination:
A fin de poder aprovechar las funciones de filtrado y administración del correo que posee procmail, defina en la ruta donde se localiza éste:
Si se va a utilizar autenticación, debe definirse lo siguiente:
Crear el fichero /etc/postfix/saslpass y definir una cuenta específica por cada dominio administrado que además deberá autenticar escribiendo la contraseña correspondiente y que previamente se asignó con el mandato saslpasswd2.
Se deben crear cuentas en el sistema para este fin particular, y no olvidar que a fin de poder ser utilizadas por Postfix, se asignan las contraseñas para dichas cuentas con el mandato saslpasswd2. Se debe convertir /etc/postfix/saslpass a /etc/postfix/saslpass.db
Asignar permisos apropiados a /etc/postfix/saslpass y /etc/postfix/saslpass.db
La configuración ha concluido, y solo resta arrancar o reiniciar Postfix.
Alta de las cuentas de correo.Las cuentas de correo deben de darse de alta sin acceso a intérprete de mandatos, recordando que, a diferencia de los protocolos IMAP o POP3, al acceso hacia el protocolo SMTP le será asignado una contraseña con el mandato saslpasswd2 en lugar del mandato passwd.
Si necesita cambiar la contraseña a cualquier usuario, utilice el mandato saslpasswd sin parámetros adicionales:
Si desea dar de baja la contraseña de cualquier usuario, utilice el siguiente mandato:
Finalmente, para poder recuperar el correo ya sea a través de IMAP o POP3, si será necesario asignar una contraseña con el mandato passwd:
Probando el servicio SMTP.
Lo anterior devuelve la siguiente salida:
Verifique mandato "helo" para el dominio
Lo anterior devuelve lo siguiente:
Verifique funciones del servidor con mandato "ehlo"
Lo anterior debe devolver algo como lo siguiente.
Note las dos líneas que especifican los métodos de autenticación.
Ambas especifican los métodos soportados. La segunda particularmente se utiliza para los clientes de correo electrónico que autentican con errores o bien con el viejo y obsoleto protocolo "AUTH=PLAIN", como sería el caso de Outlook Express 4. Para salir del intérprete de mandatos ejecute el mandato "quit". Solo resta probar la configuraciñon del servidor de correo con cualquier cliente de correo electrónico, el cual deberá de configurarse con soporte para autenticación para el protocolo SMTP. Puede seleccionarse PLAIN, LOGIN, DIGEST-MD5 o CRAM-MD5 como método de autenticación. ![]() Parámetros adicionales para Postfix.Hay algunos parámetros adicionales para /etc/postfix/main.cf que permitirán controlar mejor el comportamiento del servidor de correo de manera sencilla. mailbox_size_limitSi se desea limitar el tamaño máximo de los buzones de correo, puede hacerse a través de mailbox_size_limit asignando cualquier valor deseado en bytes. Por ejemplo, si se quiere limitar el tamaño de los buzones de correo a 20 MB, por supuesto factorizando por 1024, se utilizaría la siguiente línea:
message_size_limitSi se desea limitar el tamaño máximo de un mensaje de correo electrónico, puede hacerse a través de message_size_limit. Por ejemplo, si se quiere limitar el tamaño máximo de un mensaje a 5 MB, se utilizaría la siguiente línea:
recipient_canonical_mapsSi se desea transformar las direcciones de correo externas en direcciones de correo internas, se debe añadir la siguiente línea:
Si por ejemplo, entregar el correo para webmaster@midominio.com en la cuenta local pepe y webmaster@dominio.virtual en la cuenta local pedro, dentro de /etc/postfix/sender_canonical debería ponerse lo siguiente:
Al terminar de editar el fichero, se debe ejecutar el siguiente mandato para convertir /etc/postfix/recipient_canonical en /etc/postfix/recipient_canonical.db:
sender_canonical_mapsSi se desea transformar direcciones de correo internas en direcciones de correo externas, se debe añadir la siguiente línea:
Por ejemplo, si se tiene un dominio inválido o no registrado como sería miredlocal.org, y se desea que el correo emitido desde la cuenta julio salga como soporte@midominio.com, y se desea que el correo emitido por pablo salga como soporte@dominio.virtual, /etc/postfix/recipient_canonical debería ponerse lo siguiente:
Al terminar de editar el fichero, se debe ejecutar el siguiente mandato para convertir /etc/postfix/sender_canonical en /etc/postfix/sender_canonical.db:
Manejo del Spam y correo proveniente de fuentes indeseables.check_client_accessHay varias formas de hacer frente al Spam y correo proveniente de fuentes indeseables. Una es a través del parámetro check_client_access, con el cual se define la localización del fichero que contendrá las tablas de de control de acceso.
/etc/postfix/access contendrá una lista de direcciones IP, nombres de dominios, nombres de equipos y direcciones de correo electrónico. Puede definirse si se accepta o de rechaza explícitamente el correo proveniente de los elementos de dicha lista. A continuación se muestran distintos ejemplos: El valor "OK" específica aceptar explícitamente correo.
El valor "REJECT" rechaza todo el correo proveniente y dirigido hacia las direcciones especificadas:
Cualquier código "5xx" significa error fatal e indica al cliente de correo electrónico no intentar de nuevo. A diferencia de REJECT, que rechaza la entrega del mensaje, un código 550, por ejemplo, rebota el mensaje incluyendo una parte del contenido original.
Cualquier código "4xx" significa que el cliente de correo electrónico debe reintentar más tarde.
smtpd_client_restrictions y listas negra de servicio de nombres de dominio (DNSBL)Anteriormente se había establecido la variable smtpd_client_restrictions con los valores permit_sasl_authenticated, permit_mynetworks y check_relay_domains, los cuales son necesarios para un nivel de seguridad aceptable si se utiliza autenticación para el servicio de SMTP. Pueden añadirse más restricciones, como por ejemplo reject_maps_rbl, que espcifica la consulta de listas negras ofrecidas por distintos servicios como mail-abuse.org, spamhaus.org o spamcop.com. Se requiere entonces añadir reject_maps_rbl a la variable smtpd_client_restrictions:
A continuación se añaden las definiciones para las listas negras que se desee utilizar o las que se hayan contratado:
Agregar muchas listas ciertamente garantiza un mínimo de Spam, pero significa también que el correo tardará mucho más tiempo en validarse y entregarse en los buzones de correo. Pude llegar a demorar hasta varios minutos después de el envío desde el cliente de correo electrónico. Recomendamos elegir dos o tres listas negras a lo sumo. smtpd_helo_required y stmpd_helo_restrictionsPor lo general los programas utilizados para enviar spam nunca envían mandato helo al conectarse al servidor, o bien lo hacen desde servidores sin un registro MX o A en un DNS. Por tal motivo es buena idea habilitar las restricciones que negarán el acceso a cualquier cliente de correo que no envíe mandato helo
Nota: Es importante no caer en el error común de confundir Bibliografía.
Referencias.
|
Libro electrónicoTus donativos ayudarán a mantener esta obra. Título: Implementación de Servidores en GNU/Linux.Autor: Joel Barrios Dueñas Versión: Julio de 2008 Licencia: Creative Commons Reconocimiento - NoComercial - CompartirIgual 2.1. 518 páginas y 9 años de trabajo e investigación. Lista de espejos para descarga: · Enlace en Alcance Libre · Koalasoftmx · JulioE.net · ¿Tu enlace espejo en este espacio? Contactanos para listar tu enlace actualizado. ¡Próximamente disponible en alta resolución! Novedades6 nuevos Notas en los últimos 24 horas |
Comentarios Recientes