Академический Документы
Профессиональный Документы
Культура Документы
Manual
Tabla de Contenidos
Autenticación de iRedmail contra Microsoft Active Directory ....................................................... 1
Prepare el sistema iRedMail para la integración con el AD ........................................................ 2
Crear cuenta de usuario en AD, utilizada para consultas LDAP ................................................. 3
Integrar los servicios de iRedMail al AD ......................................................................................... 4
Integración de Roundcube con el AD .............................................................................................. 8
Deshabilitar los servicios no utilizados de iRedMail .................................................................. 14
Usar el alias de correo en Postfix .................................................................................................. 15
Fuentes: ............................................................................................................................................. 15
Nuestro Escenario
Red:
Dominio: versat.azcuba.cu
Subred: 172.20.1.0/24
Controladores de Dominio:
Servidor iRedmail:
SO: Debian 9
IP: 172.20.1.5
Hostname: mail.versat.azcuba.cu
iRedmail 0.9.8
Asumimos:
# nano /etc/hosts
127.0.0.1 localhost
127.0.0.1 mail.versat.azcuba.cu mail localhost
172.20.1.1 dc01.versat.azcuba.cu dc01
172.20.1.2 dc02.versat.azcuba.cu dc02
. . .
# nano /etc/network/interfaces
. . .
# La interfaz de red primaria
auto ens32
iface ens32 inet static
dirección 172.20.1.5
máscara de red 255.255.255.0
puerta de enlace 172.20.1.4
dns-nameservers 172.20.1.1 172.20.1.2
dns-search versat.azcuba.cu
En los servidores de nombres dns debe especificar las direcciones IP de los servidores DNS del dominio.
En dns-search, el nombre de tu dominio.
Reiniciar el sistema
# reboot
Para sincronizar la hora con los controladores de dominio, instale el paquete ntp.
Aclarar que en el caso de utilizar CT (containers) en Proxmox los mismos tomas por defecto la hora del
host por lo que hay que sincronizar el host.
En /etc/ntp.conf, debe comentar todas las líneas que comienzan con el grupo de palabras y agregar
información sobre los controladores de dominio
# nano /etc/ntp.conf
. . .
# Especifique uno o más servidores NTP.
# Usar servidores del Proyecto de NTP Pool. Aprobado por el Consejo Técnico
de Ubuntu
# en 2011-02-08 (LP: # 104525). Consulte http://www.pool.ntp.org/join.html
para
# más información.
# pool 0.ubuntu.pool.ntp.org iburst
# pool 1.ubuntu.pool.ntp.org iburst
# pool 2.ubuntu.pool.ntp.org iburst
# pool 3.ubuntu.pool.ntp.org iburst
# Usa el servidor ntp de Ubuntu como una alternativa.
# pool ntp.ubuntu.com
# Controladores de dominio
server dc01.versat.azcuba.cu
server dc02.versat.azcuba.cu
. . .
Con iRedMail (back-end de OpenLDAP), tenemos una cuenta con pocos privilegios
cn=vmail,dc=xxx,dc=xxx con privilegios de solo lectura, por tanto le sugerimos que cree una misma
cuenta vmail en AD, con una contraseña vmail y compleja.
Dovecot tratará los caracteres como comentarios después de un # línea, así que simplemente
no use # en la contraseña
Asegúrese de que este usuario recién creado pueda conectarse al servidor AD con el
siguiente comando en el servidor iRedMail:
Si imprime todos los usuarios almacenados en el servidor de AD, funciona como se esperaba.
El primer servicio que se modificará será el agente de MTA, Postfix. Ejecute los siguientes
comandos para deshabilitar una serie de configuraciones de MTA, agregue su nombre de
dominio al dominio local y los dominios de buzones de Postfix y use el agente de Dovecot
para entregar los correos recibidos localmente a los buzones de los usuarios.
server_host = versat.azcuba.cu
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = vmail@versat.azcuba.cu
bind_pw = Password de la cuenta vmail
search_base = dc=versat,dc=azcuba,dc=cu
scope = sub
query_filter =
(&(userPrincipalName=%s)(objectClass=person)(!(userAccountControl:1.2.840.1135
56.1.4.803:=2)))
result_attribute= userPrincipalName
debuglevel = 0
server_host = versat.azcuba.cu
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = vmail@versat.azcuba.cu
bind_pw = Password de la cuenta vmail
search_base = dc=versat,dc=azcuba,dc=cu
scope = sub
query_filter = (&(objectclass=person)(userPrincipalName=%s))
result_attribute= userPrincipalName
result_format = %d/%u/Maildir/
debuglevel = 0
server_host = versat.azcuba.cu
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = vmail@versat.azcuba.cu
bind_pw = Password de la cuenta vmail
search_base = dc=versat,dc=azcuba,dc=cu
scope = sub
query_filter = (&(objectClass=group)(mail=%s))
special_result_attribute = member
leaf_result_attribute = mail
result_attribute= userPrincipalName
debuglevel = 0
En los tres archivos de configuración, reemplace los valores de server_host, bind_dn, bind_pw y
search_base para reflejar la configuración personalizada de su propio dominio.
# nano /etc/postfix/main.cf
. . .
#check_policy_service inet: 127.0.0.1: 7777
#smtpd_end_of_data_restrictions = check_policy_service inet: 127.0.0.1: 7777
. . .
# postmap -q john.doe@versat.azcuba.cu
ldap:/etc/postfix/ad_virtual_mailbox_maps.cf
versat.azcuba.cu/john.doe/Maildir/
# postmap -q john.doe@versat.azcuba.cu
ldap:/etc/postfix/ad_sender_login_maps.cf
john.doe@versat.azcuba.cu
# postmap -q everyone@versat.azcuba.cu
ldap:/etc/postfix/ad_virtual_group_maps.cf
john.doe@versat.azcuba.cu
Reemplace las cuentas de usuario y grupo de AD en consecuencia con los suyos. Además, asegúrese de
que el grupo de AD que está utilizando tenga algunos miembros de usuarios de AD asignados.
hosts = versat.azcuba.cu:389
ldap_version = 3
auth_bind = yes
dn = vmail@versat.azcuba.cu
dnpass = Password de la cuenta vmail
base = cn=users,dc=versat,dc=azcuba,dc=cu
scope = subtree
deref = never
user_filter =
(&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.1135
56.1.4.803:=2)))
pass_filter =
(&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.1135
56.1.4.803:=2)))
pass_attrs = userPassword=password
default_pass_scheme = CRYPT
user_attrs =
=home=/var/vmail/vmail1/%Ld/%Ln/Maildir/,=mail=maildir:/var/vmail/vmail1/%Ld/%
Ln/Maildir/
Asegúrese de que los protocolos pop3 e imap estén habilitados en el archivo de configuración
principal de dovecot. Verifique si los complementos de cuota y correo acl también están
habilitados abriendo el archivo /etc/dovecot/dovecot.conf y verifique si estos valores
están presentes.
. . .
# Enabled mail protocols.
protocols = pop3 imap sieve lmtp
. . .
Opcionalmente, si desea establecer una cuota global para que no exceda el máximo de 500
MB de almacenamiento para cada usuario del dominio, agregue la siguiente línea en el
archivo /etc/dovecot/dovecot.conf.
. . .
quota_rule = *:storage=500M
. . .
Finalmente, para aplicar todos los cambios realizados hasta el momento, reinicie y verifique
el estado de los demonios Postfix y Dovecot emitiendo los siguientes comandos con
privilegios de root.
Para probar la configuración del servidor de correo desde la línea de comando usando el protocolo IMAP,
use el comando telnet como se muestra en el siguiente ejemplo y todo deberia estar ok.
Roundcube, uno de los agentes de usuario de correo web más utilizados en Linux, ofrece una interfaz
web moderna para que los usuarios finales interactúen con todos los servicios de correo para leer,
redactar y enviar correos electrónicos. Roundcube admite una variedad de protocolos de correo,
incluidos los protegidos, como IMAPS, POP3S o envío. En este tema, analizaremos cómo configurar
Roundcube en iRedMail con IMAPS y enviar puertos seguros para recuperar y enviar correos electrónicos
para cuentas AD, cómo acceder a la interfaz web de iRedMail Roundcube desde un navegador y agregar
un alias de direcciones web, cómo habilitar Samba4 Integración de AD para la Libreta de direcciones
LDAP global y cómo deshabilitar algunos servicios de iRedMail innecesarios.
Para enviar y recibir correo para las cuentas de dominio AD, debe editar cada cuenta de
usuario y configurar explícitamente el correo electrónico archivado con la dirección de correo
electrónico
De manera similar, para usar las listas de correo, debe crear grupos en AD, agregar la
dirección de correo electrónico correspondiente a cada grupo y asignar las cuentas de
usuario adecuadas como miembros del grupo.
Asegúrese de que todas las cuentas agregadas a un grupo tengan declarada su dirección de correo
electrónico.
386/nginx: master p
tcp 0 0 127.0.0.1:4190 0.0.0.0:* LISTEN
374/dovecot
tcp6 0 0 :::993 :::* LISTEN
374/dovecot
tcp6 0 0 :::995 :::* LISTEN
374/dovecot
tcp6 0 0 :::143 :::* LISTEN
374/dovecot
Para imponer la recepción y transferencia de correo entre los servicios Roundcube e iRedMail
en los puertos IMAP y SMTP protegidos, abra el archivo de configuración de Roundcube
ubicado en /opt/www/roundcubemail/config/config.inc.php y asegúrese de cambiar las
siguientes líneas, para localhost en este caso, como se muestra en el siguiente extracto:
. . .
// IMAP
$config['default_host'] = 'ssl://127.0.0.1';
$config['default_port'] = 993;
$config['imap_auth_type'] = 'LOGIN';
$config['imap_delimiter'] = '/';
. . .
. . .
// SMTP
$config['smtp_server'] = 'tls://127.0.0.1';
$config['smtp_port'] = 587;
$config['smtp_user'] = '%u';
$config['smtp_pass'] = '%p';
$config['smtp_auth_type'] = 'LOGIN';
. . .
. . .
$config['force_https'] = true;
$config['useragent'] = 'Servicio de Correo - DATAZUCAR Villa Clara'; // Hide
version number
$config['username_domain'] = 'versat.azcuba.cu';
. . .
La primera vez que visite Roundcube debe aparecer una alerta en el navegador debido al Certificado
autofirmado que utiliza el servidor web. Acepte el certificado e inicie sesión con las credenciales de una
cuenta del AD
Para configurar la libreta de direcciones LDAP global de AD para que aparezca en los
contactos de Roundcube, abra el archivo de configuración de Roundcube nuevamente para
editarlo y realice los siguientes cambios:
# nano /opt/www/roundcubemail/config/config.inc.php
Navegue hasta la parte inferior del archivo e identifique la sección que comienza con # Global LDAP
Address Book with AD, elimine todo su contenido hasta el final del archivo y reemplácelo con el
siguiente bloque de código:
#
# Global LDAP Address Book with AD.
#
$config['ldap_public']["global_ldap_abook"] = array(
'name' => 'versat.azcuba.cu',
'hosts' => array("versat.azcuba.cu"),
'port' => 389,
'use_tls' => false,
'ldap_version' => '3',
Recuerde remplazar reemplace los valores de name, hosts, base_dn, bind_dn y bind_pass en
consecuencia.
Luego vaya hasta Libreta de direcciones global y debe ver una lista de contactos de todas las
cuentas de dominio (usuarios y grupos) con su dirección de correo electrónico especificada.
Dado que los daemons iRedMail están configurados para consultar información de la cuenta y
otros recursos del servidor AD , puede detener y deshabilitar de manera segura algunos
servicios locales en la máquina iRedMail, como el servidor de bases de datos LDAP y el
servicio iredpad, ejecutando los siguientes comandos.
Además, deshabilite algunas tareas programadas realizadas por iRedMail, como la copia de
seguridad de la base de datos LDAP y los registros de seguimiento de iRedPad agregando un
comentario (#) al frente de cada línea del archivo crontab como se ilustra en la captura de
pantalla de abajo.
# crontab -e
#0 3 * * * /bin/bash /var/vmail/backup/backup_openldap.sh
Para redirigir todo el correo generado localmente (destinado para el administrador de correo
y luego redirigido a la cuenta raíz) a una cuenta específica del AD, abra el archivo de
configuración de alias de Postfix ubicado en /etc/postfix/aliases y modifique la línea raíz
de la siguiente manera:
. . .
root: jonh.doe@versat.azcuba.cu
. . .
Y ejecutamos:
# postmap hash:/etc/postfix/aliases
Fuentes:
https://docs.iredmail.org/active.directory.html
https://www.tecmint.com/integrate-iredmail-to-samba4-ad-dc-on-centos-7/
From:
https://www.versat.azcuba.cu/howto/ - Wiki - Soporte Técnico
Permanent link:
https://www.versat.azcuba.cu/howto/doku.php/tutoriales_linux:iredmail:iredmail_ad