Cómo configurar e integrar los servicios de iRedMail en Samba4 AD DC - Parte 11


En este tutorial aprenderá cómo modificar los demonios principales de iRedMail que proporcionan servicios de correo, respectivamente, Postfix utilizado para la transferencia de correo y Dovecot que entrega correo a los buzones de cuentas, para integrarlos en el controlador de dominio Samba4 Active Directory.

Al integrar iRedMail en Samba4 AD DC, se beneficiará de las siguientes funciones: autenticación, administración y estado de los usuarios a través de Samba AD DC, cree listas de correo con la ayuda de grupos de AD y la Libreta de direcciones LDAP global en Roundcube.

  1. Install iRedMail on CentOS 7 for Samba4 AD Integration

Paso 1: Prepare el sistema iRedMail para la integración de Sama4 AD

1. En el primer paso, debe asignar una dirección IP estática para su máquina en caso de que esté utilizando una dirección IP dinámica proporcionada por un servidor DHCP.

Ejecute el comando ifconfig para listar los nombres de las interfaces de red de su máquina y edite la interfaz de red adecuada con sus configuraciones IP personalizadas emitiendo el comando nmtui-edit contra la NIC correcta.

Ejecute el comando nmtui-edit con privilegios de root.

# ifconfig
# nmtui-edit eno16777736

2. Una vez que se abra la interfaz de red para editar, agregue la configuración de IP estática adecuada, asegúrese de agregar las direcciones IP de los servidores DNS de su Samba4 AD DC y el nombre de su dominio para consultar reino de su máquina. Utilice la captura de pantalla de abajo como una guía.

3. Una vez que termine de configurar la interfaz de red, reinicie el daemon de red para aplicar los cambios y emitir una serie de comandos de ping contra los FQDN del nombre de dominio y los controladores de dominio samba4.

# systemctl restart network.service
# cat /etc/resolv.conf     # verify DNS resolver configuration if the correct DNS servers IPs are queried for domain resolution
# ping -c2 tecmint.lan     # Ping domain name
# ping -c2 adc1            # Ping first AD DC
# ping -c2 adc2            # Ping second AD DC

4. A continuación, sincronice el tiempo con el controlador de dominio samba instalando el paquete ntpdate y consulte el servidor NTP de la máquina Samba4 mediante los siguientes comandos:

# yum install ntpdate
# ntpdate -qu tecmint.lan      # querry domain NTP servers
# ntpdate tecmint.lan          # Sync time with the domain

5. Es posible que desee que la hora local se sincronice automáticamente con el servidor de hora samba AD. Para lograr esta configuración, agregue un trabajo programado para ejecutar cada hora emitiendo el comando crontab -e y agregue la siguiente línea:

0   */1	  *   *   *   /usr/sbin/ntpdate tecmint.lan > /var/log/ntpdate.lan 2>&1

Paso 2: Prepare Samba4 AD DC para la integración de iRedMail

6. Ahora, muévase a una máquina Windows con las herramientas RSAT instaladas para administrar Samba4 Active Directory como se describe en este tutorial aquí.

Abra Administrador de DNS , vaya a su dominio Zonas de búsqueda directa y agregue un nuevo registro A , un registro MX y un registro PTR para apuntar a la dirección IP de su sistema iRedMail. Utilice las capturas de pantalla de abajo como una guía.

Agregue el registro A (reemplace el nombre y la dirección IP de la máquina iRedMail en consecuencia)

Agregue el registro MX (deje el dominio secundario en blanco y agregue una prioridad de 10 para este servidor de correo).

Agregue el registro PTR expandiendo a Zonas de búsqueda inversa (reemplace la dirección IP del servidor iRedMail en consecuencia). En caso de que no haya configurado una zona inversa para su controlador de dominio hasta el momento, lea el siguiente tutorial:

  1. Manage Samba4 DNS Group Policy from Windows

7. Después de haber agregado los registros DNS básicos que hacen que un servidor de correo funcione correctamente, vaya a la máquina iRedMail, instale el paquete bind-utils y consulte el nuevo agregado registros de correo como se sugiere en el extracto de abajo.

El servidor DNS Samba4 AD DC debe responder con los registros DNS agregados en el paso anterior.

# yum install bind-utils
# host tecmint.lan
# host mail.tecmint.lan
# host 192.168.1.245

Desde una máquina Windows, abra una ventana Indicador de comando y emita el comando nslookup en los registros del servidor de correo anteriores.

8. Como requisito previo final, cree una nueva cuenta de usuario con privilegios mínimos en Samba4 AD DC con el nombre vmail , elija una contraseña segura para este usuario y asegúrese de La contraseña para este usuario nunca caduca.

Los servicios de iRedMail utilizarán la cuenta de usuario de vmail para consultar la base de datos LDAP de Samba4 AD DC y extraer las cuentas de correo electrónico.

Para crear la cuenta vmail, use la herramienta gráfica ADUC de una máquina Windows unida al reino con las herramientas RSAT instaladas como se ilustra en las capturas de pantalla a continuación o use la línea de comando samba-tool directamente desde un controlador de dominio como se explica en el siguiente tema.

  1. Manage Samba4 Active Directory from Linux Command Line

En esta guía, usaremos el primer método mencionado anteriormente.

9. Desde el sistema iRedMail, pruebe la capacidad del usuario de vmail para consultar la base de datos LDAP de Samba4 AD DC emitiendo el siguiente comando. El resultado devuelto debe ser un número total de entradas de objetos para su dominio, como se ilustra en las siguientes capturas de pantalla.

# ldapsearch -x -h tecmint.lan -D '[email protected]' -W -b 'cn=users,dc=tecmint,dc=lan'

rojo

Paso 3: Integrar los servicios de iRedMail a Samba4 AD DC

10. Ahora es el momento de manipular los servicios de iRedMail (Postfix, Dovecot y Roundcube) para consultar las cuentas de correo del controlador de dominio Samba4.

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.

# postconf -e virtual_alias_maps=' '
# postconf -e sender_bcc_maps=' '
# postconf -e recipient_bcc_maps= ' '
# postconf -e relay_domains=' '
# postconf -e relay_recipient_maps=' '
# postconf -e sender_dependent_relayhost_maps=' '
# postconf -e smtpd_sasl_local_domain='tecmint.lan'	#Replace with your own domain
# postconf -e virtual_mailbox_domains='tecmint.lan'	#Replace with your own domain	
# postconf -e transport_maps='hash:/etc/postfix/transport'
# postconf -e smtpd_sender_login_maps='proxy:ldap:/etc/postfix/ad_sender_login_maps.cf'  # Check SMTP senders
# postconf -e virtual_mailbox_maps='proxy:ldap:/etc/postfix/ad_virtual_mailbox_maps.cf'  # Check local mail accounts
# postconf -e virtual_alias_maps='proxy:ldap:/etc/postfix/ad_virtual_group_maps.cf'  # Check local mail lists
# cp /etc/postfix/transport /etc/postfix/transport.backup	# Backup transport conf file
# echo "tecmint.lan dovecot" > /etc/postfix/transport		# Add your domain with dovecot transport
# cat /etc/postfix/transport					# Verify transport file
# postmap hash:/etc/postfix/transport

11. A continuación, cree el archivo de configuración Postfix /etc/postfix/ad_sender_login_maps.cf con su editor de texto favorito y agregue la siguiente configuración.

server_host     = tecmint.lan
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = [email protected]
bind_pw         = ad_vmail_account_password
search_base     = dc=tecmint,dc=lan
scope           = sub
query_filter    = (&(userPrincipalName=%s)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
result_attribute= userPrincipalName
debuglevel      = 0

12. Cree /etc/postfix/ad_virtual_mailbox_maps.cf con la siguiente configuración.

server_host     = tecmint.lan
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = [email protected]
bind_pw         = ad_vmail_account_password
search_base     = dc=tecmint,dc=lan
scope           = sub
query_filter    = (&(objectclass=person)(userPrincipalName=%s))
result_attribute= userPrincipalName
result_format   = %d/%u/Maildir/
debuglevel      = 0

13. Cree /etc/postfix/ad_virtual_group_maps.cf con la siguiente configuración.

server_host     = tecmint.lan
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = [email protected]
bind_pw         = ad_vmail_account_password
search_base     = dc=tecmint,dc=lan
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 sustituye los valores de server_host , bind_dn , bind_pw y search_base para reflejar tu propio dominio personalizado ajustes

14. Luego, abra el archivo de configuración principal de Postfix y busque y deshabilite iRedAPD check_policy_service y smtpd_end_of_data_restrictions agregando un comentario # En frente de las siguientes líneas.

# nano /etc/postfix/main.cf

Comenta las siguientes líneas:

#check_policy_service inet:127.0.0.1:7777
#smtpd_end_of_data_restrictions = check_policy_service inet:127.0.0.1:7777

15. Ahora, verifique el enlace de Postfix a Samba AD utilizando un usuario de dominio existente y un grupo de dominio emitiendo una serie de consultas como se presenta en los siguientes ejemplos.

El resultado debe ser similar al ilustrado en la siguiente captura de pantalla.

# postmap -q [email protected] ldap:/etc/postfix/ad_virtual_mailbox_maps.cf
# postmap -q [email protected] ldap:/etc/postfix/ad_sender_login_maps.cf
# postmap -q [email protected] ldap:/etc/postfix/ad_virtual_group_maps.cf

Reemplace las cuentas de usuario y grupo de AD en consecuencia. Además, asegúrate de que el grupo de AD que estás utilizando tenga algunos miembros de usuarios de AD asignados.

16. En el siguiente paso, modifique el archivo de configuración de Dovecot para consultar Samba4 AD DC. Abra el archivo /etc/dovecot/dovecot-ldap.conf para editar y agregue las siguientes líneas.

hosts           = tecmint.lan:389
ldap_version    = 3
auth_bind       = yes
dn              = [email protected]
dnpass          = ad_vmail_password
base            = dc=tecmint,dc=lan
scope           = subtree
deref           = never
user_filter     = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
pass_filter     = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.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/

El buzón de una cuenta AD de Samba4 se almacenará en la ubicación /var/vmail/vmail1/your_domain.tld/your_domain_user/Maildir/ en el sistema Linux.

17. 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.

18. Opcionalmente, si desea establecer una cuota global dura para que no exceda el máximo de 500 MB de almacenamiento para cada usuario del dominio, agregue la siguiente línea en /etc/dovecot/dovecot. conf archivo.

quota_rule = *:storage=500M 

19. Finalmente, para aplicar todos los cambios realizados hasta ahora, reinicie y verifique el estado de los demonios Postfix y Dovecot emitiendo los siguientes comandos con privilegios de raíz.

# systemctl restart postfix dovecot
# systemctl status postfix dovecot

20. Para probar la configuración del servidor de correo desde la línea de comandos usando el protocolo IMAP, use telnet o el comando netcat como se muestra en el siguiente ejemplo.

# nc localhost 143
a1 LOGIN [email protected]_domain.tld ad_user_password
a2 LIST “” “*”
a3 LOGOUT

Si puede realizar un inicio de sesión IMAP desde la línea de comandos con una cuenta de usuario Samba4, el servidor iRedMail parece estar listo para enviar y recibir correo para las cuentas de Active Directory.

En el próximo tutorial se tratará cómo integrar Roundmail webmail con Samba4 AD DC y habilitar la Libreta de direcciones LDAP global, personalizar Roudcube, acceder a la interfaz web de Roundcube desde un navegador y deshabilitar algunos servicios de iRedMail innecesarios.