Manual de FreeBSD
Anterior | Capítulo 27. Correo Electrónico | Siguiente

# 27.10. Autentificación utilizando SMTP

Escrito por James Gorham.

La autentificación mediante SMTP puede proporcionarnos diversas ventajas. Añade una capa adicional de seguridad a a sendmail y además proporciona a los usuarios móviles (usuarios que cambian de máquina) la posibilidad de mantener el mismo servidor de correo sin necesidad de reconfigurar sus agentes de usuario de correo cada vez que se trasladan.

1. Instalar `security/cyrus-sasl` desde los ports. Se puede encontrar dicho port en `security/cyrus-sasl`. `security/cyrus-sasl` posée varias opciones en tiempo de compilación pero para el método en particular que se va a explicar en esta sección basta con asegurarse de seleccionar la opción `pwcheck`.

2. Después de instalar `security/cyrus-sasl`, edite `/usr/local/lib/sasl/Sendmail.conf` (o créelo si no existe) y añada la siguiente línea:

       pwcheck_method: passwd

   Este método activa la autentificación de sendmail contra nuestra base de datos de FreeBSD, `passwd`. Esto nos evita el problema de tener que crear un nuevo conjunto de usuarios y contraseñas para cada usuario que necesite validarse mediante SMTP y además nos permite mantener el mismo login y contraseña que los usuarios utilizan para acceder a sus cuentas para el acceso al correo electrónico.

3. Editar`/etc/make.conf` y añadir las siguientes líneas:

       SENDMAIL_CFLAGS=-I/usr/local/include/sasl1 -DSASL
       SENDMAIL_LDFLAGS=-L/usr/local/lib
       SENDMAIL_LDADD=-lsasl

   Estas líneas proporcionan a sendmail las opciones de configuración necesarias para enlazar con `cyrus-sasl` en tiempo de compilación. Debemos asegurarnos de que `cyrus-sasl` ha sido instalado correctamente recompilar sendmail.

4. Recompile sendmail utilizando el siguiente comando:

       # cd /usr/src/usr.sbin/sendmail
       # make cleandir
       # make obj
       # make
       # make install

   La compilación de sendmail no debería dar problemas siempre y cuando `/usr/src` no haya cambiado sustancialmente y siempre y cuando las bibliotecas compartidas necesarias se encuentren disponibles.

5. Una vez que sendmail se ha compilado y reinstalado con correctamente debemos editar el fichero `/etc/mail/freebsd.mc` (o el fichero que se utilice como `.mc` de referencia. Hay administradores que escogen utilizar la salida de hostname(1) como el nombre del fichero `.mc` que se utiliza para la configuración de sendmail por motivos de uniformidad ). Añada las siguientes líneas a dicho fichero:

       dnl set SASL options
       TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
       define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
       define(`confDEF_AUTH_INFO', `/etc/mail/auth-info')dnl

   Estas opciones configuran los distintos métodos de que dispone sendmail para validar a los usuarios de correo. Si se desea utilizar otro método distinto a pwcheck por favor consulte la documentación.

6. Para terminar ejecutamos make(1) mientras nos encontramos dentro de `/etc/mail`. Este comando trata el fichero `.mc` y crea el fichero `.cf` correspondiente (con el mismo nombre que el anterior pero terminado en .cf). A continuación se utiliza el comando `make install restart`, el cual copia el fichero .cf recién generado al fichero `sendmail.cf` y a continuación reinicia sendmail. Para más información sobre este proceso puede consultarse el contenido de `/etc/mail/Makefile`.

Si todo lo anteriormente comentado ha funcionado correctamente deberíamos ser capaces de introducir la información de nuestro login en nuestro cliente de correo y enviar un mensaje de prueba. Para investigar más a fondo estos temas se puede habilitar la opción `LogLevel` de sendmail al valor 13 y observar detenidamente el archivo `/var/log/maillog` en busca de posibles mensajes de error.

Puede ser necesario añadir las siguientes líneas al fichero `/etc/rc.conf` de modo que el servicio explicado en esta sección se encuentre disponible automáticamente desde el arranque:

    sasl_pwcheck_enable="YES"
    sasl_pwcheck_program="/usr/local/sbin/pwcheck"

Esto permite que la inicialización de SMTP_AUTH se produzca durante el arranque del sistema.

Para más información por favor visite la página autentificación SMTP de sendmail·

Anterior | Inicio | Siguiente
Utilización del correo con una conexión mediante módem analógico (dial-up) | Subir | Agente de Correo de Usuario

Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Si tiene dudas sobre FreeBSD consulte la documentación antes de escribir a la lista <questions@FreeBSD.org>.
Envíe sus preguntas sobre la documentación a <doc@FreeBSD.org>.