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) Almsx (11) Comentarios joelbarrios (155) Koalasoft (126) aLb3rT (107) gomezbjesus (73) The One (61) bakara (34) manowar (32) Oscar Hernández (30) bartoloco (26) rlameda (26) Jose de Jesus (22) Nuke (21) scs_calleros (21) psytux (20) julioe (20) |
Configuración básica de Sendmail (Parte I).Configuración básica de Sendmail (Parte I).Autor: Joel Barrios DueñasCorreo 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
Antes de continuar.Este documento asume que el lector ya ha aplicado todos los parches de seguridad correspondientes para Cyrus-sasl, Sendmail y Dovecot (o imap). Los procedimientos aplican para las versiones 3 y 4 (y versiones posteriores) de Red Hat™ Enterprise Linux, White Box Enterprise Linux o CentOS. Este documento está dividido en dos partes: Configuración básica de Sendmail (Parte I) y Configuración básica de Sendmail (Parte II). Introducción.Acerca de Sendmail.Es el más popular agente de transporte de correo (MTA o Mail Transport Agent), responsable quizá de poco más del 70% del correo electrónico del mundo. Aunque por largo tiempo se le ha criticado por muchos incidentes de de seguridad, lo cierto es que éstos siempre han sido resueltos en pocas horas. URL: http://www.sendmail.org/. Acerca de Dovecot.Dovecot es un servidor de POP3 e IMAP de fuente abierta que funciona en Linux y sistemas basados sobre Unix™ y diseñado con la seguridad como principal objetivo. Dovecot puede utilizar tanto el formato mbox como maildir y es compatible con las implementaciones de los servidores UW-IMAP y Courier IMAP. URL: http://dovecot.procontrol.fi/. Acerca de SASL y Cyrus SASL.SASL (Simple Authentication and Security Layer) es un estructura para la seguridad de datos en protocolos de Internet. Desempareja mecanismos de la autenticación desde protocolos de aplicaciones, permitiendo, en teoría, cualquier mecanismo de autenticación soportado por SASL para ser utilizado en cualquier protocolo de aplicación que capaz de utilizar SASL. Actualmente SASL es un protocolo de la IETF (Internet Engineering Task Force) que ha sido propuesto como estándar. Está especificado en el RFC 2222 creado por John Meyers en la Universidad Carnegie Mellon. Cyrus SASL es una implementación de SASL que puede ser utilizada del lado del servidor o del lado del cliente y que incluye como principales mecanismos de autenticación soportados a ANONYMOUS, CRAM-MD5, DIGEST-MD5, GSSAPI y PLAIN. El código fuente incluye también soporte para los mecanismos LOGIN, SRP, NTLM, OPT y KERBEROS_V4. URL: http://asg.web.cmu.edu/sasl/sasl-library.html. Protocolos utilizados.SMTP (Simple Mail Transfer Protocol).Es un protocolo estándar de Internet del Nivel de Aplicación utilizado para la transmisión de correo electrónico a través de una conexión TCP/IP. Este es de hecho el único protocolo utilizado para la transmisión de correo electrónico a través de Internet. Es un protocolo basado sobre texto y relativamente simple donde se especifican uno más destinatarios en un mensaje que es transferido. A lo largo de los años han sido muchas las personas que han editado o contribuido a las especificaciones de SMTP, entre las cuales están Jon Postel, Eric Allman, Dave Crocker, Ned Freed, Randall Gellens, John Klensin y Keith Moore. Para determinar el servidor SMTP para un dominio dado, se utilizan los registros MX (Mail Exchanger) en la Zona de Autoridad correspondiente al ese mismo dominio contestado por un Servidor DNS. Después de establecerse una conexión entre el remitente (el cliente) y el destinatario (el servidor), se inicia una sesión SMTP, ejemplificada a continuación.
La descripción completa del protocolo original STMP está definido en el RFC 821, aunque el protocolo utilizado hoy en día, también conocido como ESMTP (Extended Simple Mail Transfer Protocol), está definido en el RFC 2821. SMTP trabaja sobre TCP en el puerto 25. POP3 (Post Office Protocol version 3).Es un protocolo estándar de Internet del Nivel de Aplicación que recupera el correo electrónico desde un servidor remoto a través de una conexión TCP/IP desde un cliente local. El diseño de POP3 y sus predecesores es permitir a los usuarios recuperar el correo electrónico al estar conectados hacia una red y manipular los mensajes recuperados sin necesidad de permanecer conectados. A pesar de que muchos clientes de correo electrónico incluyen soporte para dejar el correo en el servidor, todos los clientes de POP3 recuperan todos los mensajes y los almacenan como mensajes nuevos en la computadora o anfitrión utilizado por el usuario, eliminan los mensajes en el servidor y terminan la conexión. Después de establecerse una conexión entre el cliente y el servidor, se inicia una sesión POP3, ejemplificada a continuación.
POP3 está definido en el RFC 1939. POP3 trabaja sobre TCP en el puerto 110. IMAP (Internet Message Access Protocol).Es un protocolo estándar de Internet del Nivel de Aplicación utilizado para acceder hacia el correo electrónico en un servidor remoto a través de una conexión TCP/IP desde un cliente local. La versión más reciente de IMAP es la 4, revisión 1, y está definida en el RFC 3501. IMAP trabaja sobre TCP en el puerto 143. Fue diseñado por Mark Crispin en 1986 como una alternativa más moderna que cubriera las deficiencias de POP3. Las características más importantes de IMAP incluyen:
Después de establecerse una conexión entre el cliente y el servidor, se inicia una sesión IMAP, ejemplificada a continuación.
Equipamiento lógico necesario.
Instalación a través de yum.Si se utiliza de CentOS 4 o White Box Enterprise Linux 4, el paquete imap es reemplazado por el paquete dovecot. De tal modo que se ejecuta lo siguiente:
Si se utiliza de CentOS 3 o White Box Enterprise Linux 3, el paquete imap es reemplazado por el paquete dovecot. De tal modo que se ejecuta lo siguiente:
Si acaso estuviese instalado, elimine el paquete cyrus-sasl-gssapi, ya que este utiliza el método de autenticación GSSAPI, mismo que requeriría de la base de datos de cuentas de usuario de un servidor Kerberos:
Instalación a través de Up2dateSi se utiliza de Red Hat™ Enterprise Linux 4, el paquete imap es reemplazado por el paquete dovecot. De tal modo que se ejecuta lo siguiente:
Si se utiliza de Red Hat™ Enterprise Linux 3, el paquete imap es reemplazado por el paquete dovecot. De tal modo que se ejecuta lo siguiente:
Si acaso estuviese instalado, elimine el paquete cyrus-sasl-gssapi, ya que este utiliza el método de autenticación GSSAPI, mismo que requeriría de la base de datos de cuentas de usuario de un servidor Kerberos:
Procedimientos.Alta de cuentas de usuario y asignación de claves de acceso.El alta de usuarios a través de este método será diferente a la manera tradicional, debido a que para utilizar el método de autenticación para SMTP, Sendmail utilizará SASL. Por tal motivo, el alta de cuentas de usuario de correo deberá de seguir el siguiente procedimiento:
Puede mostrarse la lista de los usuarios con clave de acceso a través de SASL-2 utilizando el mandato sasldblistusers2. Puede mostrarse la lista de los usuarios con clave de acceso a través de SASL-1 utilizando el mandato sasldblistusers. Si ya se cuenta con un grupo de claves de acceso de usuarios dados de alta en SASL-1, se pueden convertir hacia SASL-2 con el mandato dbconverter-2. Dominios a administrar.Establecer dominios a administrar en el fichero /etc/mail/local-host-names del siguiente modo:
Establecer dominios permitidos para poder enviar correo en:
Por defecto, no existe dicho fichero, hay que generarlo. Para fines generales tiene el mismo contenido de /etc/mail/local-host-names a menos que se desee excluir algún dominio en particular.
Control de accesoDefinir lista de control de acceso en:
Incluir solo las IPs locales del servidor, y la lista negra de direcciones de correo, dominios e IPs denegadas. Considere que cualquier IP que vaya acompañada de
Alias de la cuenta de root.No es conveniente estar autenticando la cuenta de root a través de la red para revisar los mensajes originados por el sistema. Se debe definir alias para la cuenta de root a donde re-direccionar el correo en el fichero /etc/aliases del siguiente modo:
Configuración de funciones de Sendmail.Modificar el fichero /etc/mail/sendmail.mc y desactivar o habilitar funciones:
confSMTP_LOGIN_MSG.Este parámetro permite establecer el mensaje de bienvenida al establecer la conexión al servidor. Es posible ocultar elnombre y al versión de sendmail, esto con el objeto de agregar seguridad por secreto. Funciona simplemente haciendo que quien se conecte hacia el servidor no pueda saber que software y versión del mismo se está utilizando y con ellos dificultar a un delincuente o abusador de servicio el determinar que vulnerabilidad específica explotar. Recomendamos utilizar lo siguiente:
Lo anterior regresará algo como lo siguiente al realizar una conexión hacia el puerto 25 del servidor:
Está configuración se puede poner justo antes de la líena correspondiente al parámetro confAUTH_OPTIONS. confAUTH_OPTIONS.Si se utiliza la siguiente línea, habilitada por defecto, se permitirá realizar autenticación a través del puerto 25 por cualquier método, incluyendo PLAIN, el cual se realiza en texto simple. Esto implica cierto riesgo de seguridad.
Si comenta la anterior línea con
TRUST_AUTH_MECH y confAUTH_MECHANISMS.Si se desea utilizar SMTP autenticado para equipos no incluidos dentro del fichero /etc/mail/access, se requieren des-comentar las siguientes dos líneas, eliminando el dnl que les precede:
DAEMON_OPTIONS.De modo predefinido Sendmail escucha peticiones a través de la interfaz de retorno del sistema a través de IPv4 (127.0.0.1) y no a través de otros dispositivos de red. Solo se necesita eliminar las restricción de la interfaz de retorno para poder recibir correo desde Internet o la LAN. localice la siguiente línea:
Elimine de dicho parámetro el valor Addr=127.0.0.1 y la coma (,) que le antecede, del siguiente modo:
FEATURE(`accept_unresolvable_domains').De modo predefinido, como una forma de permitir el correo del propio sistema en una computadora de escritorio o una computadora portátil, está se utiliza el parámetro FEATURE(`accept_unresolvable_domains'). Sin embargo se recomienda desactivar esta función a fin de impedir aceptar correo de dominios inexistentes (generalmente utilizado para el envío de correo masivo no solicitado o Spam), solo se necesita comentar esta configuración precediendo un dnl, del siguiente modo:
Enmascaramiento.Habilitar las siguientes lineas y adaptar valores para definir la máscara que utilizará el servidor:
Si va a administrar múltiples dominios, declare los dominios que no se quiera enmascarar con el parámetro MASQUERADE_EXCEPTION del siguiente modo:
Parámetro Cw.Añadir al final del fichero /etc/mail/sendmail.mc un parámetro que defina que dominio.com se trata de un dominio local. Note que no debe haber espacios entre Cw y dominio.com, y que Cw se escribe con una C mayúscula y una w minúscula.
Usuarios Virtuales.Si se desea brindar un servicio de hospedaje de dominios virtuales permitiendo que los usuarios envíen y reciban correo utilizando sus propios dominios, se deben añadir los siguientes parámetros debajo de la función de virtusertable del fichero /etc/mail/sendmail.mc:
Se generan tres ficheros nuevos dentro del directorio
El fichero /etc/mail/virtusertable sirve para definir que cuentas de correo virtuales se entregan en los buzones correspondientes. La separación de columnas se hace con tabuladores. En el ejemplo se entrega el correo de webmaster@dominio1.net en la cuenta mengano y el correo de webmaster@dominio2.com en el buzón del usuario perengano:
Para hacer que el correo del usuario mengano salga del servidor como webmaster@dominio1.net y el de perengano salga como webmaster@dominio2.com, es necesario hacer el contenido contrario de /etc/mail/virtusertable del siguiente modo:
Para efector prácticos, se puede mantener sincronizados ambos ficheros trabajando directamente con /etc/mail/virtusertable y ejecutando el siguiente guión que se encargará de pasar el texto desde /etc/mail/virtusertable con orden invertido de columnas hacia /etc/mail/genericstable.
El fichero /etc/mail/generics-domains debe contener prácticamente lo mismo que /etc/mail/local-host-names más los dominios que vayan a estar siendo utilizados por dominios virtuales.
Invariablemente los ficheros /etc/mail/virtusertable.db y /etc/mail/genericstable.db deben actualizarse con el contenido de /etc/mail/virtusertable y /etc/mail/genericstable, respectivamente, cada vez que se se realicen cualquier tipo de cambio, como actualizar, añadir o eliminar cuentas de correo virtuales.
Control del correo chatarra (Spam) a través de DNSBLs.Si se desea cargar listas negras para mitigar el Spam, pueden añadirse las siguientes líneas justo arriba de MAILER(smtp)dnl:
Protocolos para acceder hacia el correo.Si utiliza Red Hat™ Enterprise Linux 4, CentOS 4 o White Box Enterprise Linux 4, el paquete imap es reemplazado por dovecot, el cual funciona como otros servicios. Se debe modificar el fichero /etc/dovecot.conf y habilitar los servicios de imap y/o pop3 del siguiente modo (de modo predefinido están habilitados imap e imaps):
El servicio se agrega al arranque del sistema y se inicia del siguiente modo:
Si utiliza Red Hat™ Enterprise Linux 3, CentOS 3 o White Box Enterprise Linux 3, el procedimiento utilizará el paquete imap, el cual solo requiere un simple mandato para activar el servicio.
Reiniciando servicio.Para reiniciar servicio de Sendmail solo bastará ejecutar:
Probar servidor enviando/recibiendo mensajes con CUALQUIER cliente estándar de correo electrónico con soporte para POP3/IMAP/SMTP con soporte para autenticar a través de SMTP utilizando los métodos DIGEST-MD5 o CRAM-MD5. Para depurar posibles errores, se puede examinar el contenido de la bitácora de correo del sistema en /var/log/maillog del siguiente modo:
Fin primera parte.Continua en Configuración básica de Sendmail (Parte II).
|
Comentarios Recientes