Wéi konfiguréieren an integréieren iRedMail Services op Samba4 AD DC - Deel 11


An dësem Tutorial léiert wéi Dir iRedMail Haaptdemonen ännert, déi Mailservicer ubidden, respektiv Samba4 Active Directory Domain Controller.

Andeems Dir iRedMail an e Samba4 AD DC integréiert, profitéiert Dir vun de folgende Funktiounen: Benotzerauthentifikatioun, Gestioun a Status iwwer Samba AD DC, erstellt Maillëschte mat der Hëllef vun AD Gruppen a Global LDAP Adressbuch am Roundcube.

  1. Installéiert iRedMail op CentOS 7 fir Samba4 AD Integratioun

Schrëtt 1: Preparéieren iRedMail System fir Sama4 AD Integratioun

1. Am éischte Schrëtt musst Dir eng statesch IP Adress fir Är Maschinn zouginn am Fall wou Dir eng dynamesch IP Adress benotzt, déi vun engem DHCP Server geliwwert gëtt.

Run nmtui-edit Kommando géint déi richteg NIC.

Run nmtui-edit Kommando mat root Privilegien.

# ifconfig
# nmtui-edit eno16777736

2. Soubal d'Netzwierk-Interface fir d'Editioun opgemaach ass, füügt déi entspriechend statesch IP-Astellunge derbäi, gitt sécher datt Dir d'DNS-Server IP Adressen vun Ärem Samba4 AD DC an den Numm vun Ärem Domain addéiere fir de Räich vun Ärer Maschinn ze froen. Benotzt de Screenshot hei ënnen als Guide.

3. Nodeems Dir d'Netzwierk-Interface fäerdeg konfiguréiert hutt, starten den Netzwierk-Daemon nei fir Ännerungen z'applizéieren an eng Serie vu Ping-Kommandoen géint den Domain Numm an de samba4 Domain Controller FQDNs auszeginn.

# 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. Als nächst synchroniséiert d'Zäit mam Samba Domain Controller andeems Dir den ntpdate Package installéiert an de Samba4 Maschinn NTP Server ufroen andeems Dir déi folgend Kommandoen ausstellt:

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

5. Dir wëllt vläicht datt d'lokal Zäit automatesch mam Samba AD Zäitserver synchroniséiert gëtt. Fir dës Astellung z'erreechen, füügt e geplangten Job fir all Stonn ze lafen andeems Dir crontab -e Kommando ausginn an déi folgend Zeil bäidréit:

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

Schrëtt 2: Preparéieren Samba4 AD DC fir iRedMail Integratioun

6. Elo, plënneren op eng hei.

Open DNS Manager, gitt op Är Domain Forward Lookup Zones a füügt en neien A-Rekord, e MX-Rekord an e PTR-Rekord un fir op Är iRedMail System IP Adress ze weisen. Benotzt déi ënnescht Screenshots als Guide.

Füügt e Rekord (ersetzt den Numm an d'IP Adress vun der iRedMail Maschinn entspriechend).

Füügt MX-Rekord derbäi (loosst d'Kand-Domain eidel a füügt eng 10 Prioritéit fir dëse Mailserver).

Füügt PTR-Rekord andeems Dir op Reverse Lookup Zonen erweidert (IP Adress vum iRedMail Server deementspriechend ersetzen). Am Fall wou Dir bis elo keng ëmgedréint Zone fir Ären Domain Controller konfiguréiert hutt, liest de folgenden Tutorial:

  1. Manage Samba4 DNS Group Policy from Windows

7. Nodeems Dir d'Basis DNS-Records bäigefüügt hutt, déi e Mail-Server richteg funktionnéieren, réckelen op d'iRedMail-Maschinn, installéiere bind-utils-Package a froen déi nei addéiert Mail-Records wéi virgeschloen op der ënnen Auszuch.

Samba4 AD DC DNS Server soll mat den DNS records äntweren, déi am virege Schrëtt bäigefüügt ginn.

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

Vun enger Windows-Maschinn, öffnen eng Command Prompt-Fënster a gitt den nslookup Kommando géint déi uewe genannte Mail Server records.

8. Als lescht Viraussetzung, erstellt en neie Benotzerkont mat minimale Privilegien am Samba4 AD DC mam Numm vmail, wielt e staarkt Passwuert fir dëse Benotzer a gitt sécher datt d'Passwuert fir dëse Benotzer ni ofleeft.

De vmail Benotzerkont gëtt vun iRedMail Servicer benotzt fir d'Samba4 AD DC LDAP Datebank ze froen an d'E-Mailkonten ze zéien.

Fir de vmail Kont ze kreéieren, benotzt ADUC grafescht Tool vun enger Windows Maschinn, déi an d'Räich verbonnen ass mat RSAT Tools installéiert wéi op de Screenshots illustréiert oder benotzt d'Samba-Tool Kommandozeil direkt vun engem Domain Controller wéi am folgenden Thema erkläert.

  1. Manage Samba4 Active Directory vun der Linux Command Line

An dësem Guide benotze mir déi éischt Method hei uewen.

9. Vum iRedMail System testen d'vmail Benotzer Fäegkeet fir d'Samba4 AD DC LDAP Datebank ze froen andeems Dir de Kommando hei ënnen ausgitt. Dat zréckginn Resultat sollt eng Gesamtzuel vun Objektentréeën fir Är Domain sinn, wéi op de Screenshots hei ënnen illustréiert.

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

Bemierkung: Ersetzen den Domain Numm an d'LDAP Basis dn am Samba4 AD ('cn=Benotzer,dc=tecmint,dc=lan‘) entspriechend.

Schrëtt 3: Integréiert iRedMail Services op Samba4 AD DC

10. Elo ass et Zäit fir iRedMail Servicer (Postfix, Dovecot a Roundcube) ze manipuléieren fir de Samba4 Domain Controller fir Mailkonten ze froen.

Den éischte Service dee geännert gëtt ass den MTA Agent, Postfix. Gitt déi folgend Befehle fir eng Serie vu MTA-Astellungen auszeschalten, füügt Ären Domain Numm op Postfix lokal Domain a Mailbox Domainen a benotzt den Dovecot Agent fir empfaangen Mailen lokal op Benotzer Mailboxen ze liwweren.

# 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. Als nächst erstellt Postfix /etc/postfix/ad_sender_login_maps.cf Konfiguratiounsdatei mat Ärem Liiblingstexteditor a füügt déi folgend Konfiguratioun un.

server_host     = tecmint.lan
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = [email 
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. Erstellt /etc/postfix/ad_virtual_mailbox_maps.cf mat der folgender Konfiguratioun.

server_host     = tecmint.lan
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = [email 
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. Erstellt /etc/postfix/ad_virtual_group_maps.cf mat der folgender Konfiguratioun.

server_host     = tecmint.lan
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = [email 
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

Op all dräi Konfiguratiounsdateien ersetzen d'Wäerter vu server_host, bind_dn, bind_pw a search_base fir Är eegen Domain personaliséiert Astellungen ze reflektéieren.

14. Als nächst öffnen d'Postfix Haaptkonfiguratiounsdatei a sichen an deaktivéieren iRedAPD check_policy_service an smtpd_end_of_data_restrictions andeems Dir e Kommentar # virun de folgende Linnen bäidréit.

# nano /etc/postfix/main.cf

Kommentéiert déi folgend Zeilen:

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

15. Elo, z'iwwerpréiwen Postfix Bindung zu Samba AD mat engem existente Domain Benotzer an enger Domain Grupp andeems Dir eng Serie vu Ufroen ausstellt wéi an de folgende Beispiller presentéiert.

D'Resultat sollt ähnlech sinn wéi illustréiert op der ënnen Screenshot.

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

Ersetzen AD Benotzer- a Gruppekonten entspriechend. Vergewëssert Iech och datt d'AD Grupp déi Dir benotzt e puer AD Benotzer Memberen zougewisen huet.

16. Am nächste Schrëtt änneren Dovecot Konfiguratiounsdatei fir Samba4 AD DC ze froen. Öffne de Fichier /etc/dovecot/dovecot-ldap.conf fir z'änneren a füügt déi folgend Zeilen derbäi.

hosts           = tecmint.lan:389
ldap_version    = 3
auth_bind       = yes
dn              = [email 
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/

D'Mailbox vun engem Samba4 AD Kont gëtt am /var/vmail/vmail1/your_domain.tld/your_domain_user/Maildir/ Standuert am Linux System gespäichert.

17. Suergen, datt pop3- an imap Protokoller an dovecot Haaptrei Configuratiounsdatei aktivéiert sinn. Vergewëssert Iech ob Quoten an Acl Mail Plugins och aktivéiert sinn andeems Dir de Fichier /etc/dovecot/dovecot.conf opmaacht a kontrolléiert ob dës Wäerter präsent sinn.

18. Optional, wann Dir e globale Hard Quote setzen wëllt fir net de Maximum vu 500 MB Späichere fir all Domain Benotzer ze iwwerschreiden, füügt déi folgend Zeil an /etc/dovecot/dovecot.conf Datei.

quota_rule = *:storage=500M 

19. Endlech, fir all Ännerungen, déi bis elo gemaach goufen, z'applizéieren, nei starten an de Status vun Postfix- a Dovecot-Dämonen z'iwwerpréiwen andeems Dir déi ënnen Kommandoen mat Root-Privilegien ausginn.

# systemctl restart postfix dovecot
# systemctl status postfix dovecot

20. Fir d'Konfiguratioun vun der Mailserver vun der Kommandozeil mat IMAP Protokoll ze testen, benotzt Telnet oder Netcat Kommando wéi am Beispill hei ënnendrënner.

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

Wann Dir en IMAP Login vun der Kommandozeil mat engem Samba4 Benotzerkont ausféiere kënnt, da schéngt den iRedMail Server prett fir E-Mail fir Active Directory Konten ze schécken an ze kréien.

Am nächsten Tutorial wäert diskutéieren wéi Dir Roundcube Webmail mat Samba4 AD DC integréiert an Global LDAP Adressbuch aktivéiert, Roudcube personaliséiere, Zougang zu Roundcube Web Interface vun engem Browser an deaktivéieren e puer onnéideg iRedMail Servicer.