Kako konfigurirati i integrirati iRedMail usluge u Samba4 AD DC - 11. dio


U ovom tutorijalu naučit ćete kako modificirati glavne demone iRedMaila koji pružaju usluge pošte, odnosno, Postfix koji se koristi za prijenos pošte i Dovecot koji isporučuje poštu u poštanske sandučiće naloga, kako bi se oba integrirala u Samba4 Active Directory Domain Controller.

Integracijom iRedMaila u Samba4 AD DC imat ćete koristi od sljedećih karakteristika: autentikacija korisnika, upravljanje i status preko Samba AD DC-a, kreiranje mail lista uz pomoć AD grupa i Globalnog LDAP adresara u Roundcubeu.

Zahtjevi

  1. Instalirajte iRedMail na CentOS 7 za Samba4 AD integraciju

Korak 1: Pripremite iRedMail sistem za Sama4 AD integraciju

1. U prvom koraku morate dodijeliti statičku IP adresu za vaš uređaj u slučaju da koristite dinamičku IP adresu koju vam daje DHCP server.

Pokrenite naredbu ifconfig da izlistate imena mrežnih sučelja vašeg stroja i uredite odgovarajući mrežni interfejs sa vašim prilagođenim IP postavkama izdavanjem naredbe nmtui-edit protiv ispravnog NIC-a.

Pokrenite naredbu nmtui-edit sa root privilegijama.

ifconfig
nmtui-edit eno16777736

2. Kada se mrežno sučelje otvori za uređivanje, dodajte ispravne statičke IP postavke, obavezno dodajte IP adrese DNS servera vašeg Samba4 AD DC-a i ime vaše domene kako biste postavili upit realm sa vaše mašine. Koristite snimak ekrana ispod kao vodič.

3. Nakon što završite sa konfiguracijom mrežnog interfejsa, ponovo pokrenite mrežni demon da biste primijenili promjene i izdali niz ping naredbi protiv imena domene i FQDN-ova samba4 domenskih kontrolera.

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. Zatim, sinhronizirajte vrijeme sa samba kontrolerom domene instaliranjem ntpdate paketa i upitajte NTP server Samba4 stroja izdavanjem sljedećih naredbi:

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

5. Možda želite da se lokalno vrijeme automatski sinhronizuje sa samba AD vremenskim serverom. Da biste postigli ovu postavku, dodajte planirani posao koji će se izvoditi svakih sat vremena izdavanjem naredbe crontab -e i dodajte sljedeći red:

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

Korak 2: Pripremite Samba4 AD DC za iRedMail integraciju

6. Sada pređite na Windows mašinu sa instaliranim RSAT alatima za upravljanje Samba4 Active Directory-om kao što je opisano u ovom vodiču ovde.

Otvorite DNS Manager, idite na svoju domenu Forward Lookup Zones i dodajte novi A zapis, MX zapis i PTR zapis koji ukazuje na IP adresu vašeg sistema iRedMail. Koristite donje snimke ekrana kao vodič.

Dodajte A zapis (u skladu s tim zamijenite ime i IP adresu iRedMail mašine).

Dodajte MX zapis (ostavite podređenu domenu praznom i dodajte prioritet 10 za ovaj server pošte).

Dodajte PTR zapis proširivanjem na Reverse Lookup Zones (zamijenite IP adresu iRedMail servera u skladu s tim). U slučaju da do sada niste konfigurirali obrnutu zonu za svoj kontroler domene, pročitajte sljedeći vodič:

  1. Upravljajte Samba4 DNS grupnim politikama iz Windowsa

7. Nakon što ste dodali osnovne DNS zapise koji omogućavaju da server e-pošte ispravno funkcionira, prijeđite na iRedMail mašinu, instalirajte bind-utils paket i upitajte novododate poštanske evidencije kao što je predloženo u donjem izvodu.

Samba4 AD DC DNS server bi trebao odgovoriti sa DNS zapisima dodatim u prethodnom koraku.

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

Sa Windows računara, otvorite prozor Command Prompt i izdajte naredbu nslookup prema gore navedenim zapisima mail servera.

8. Kao konačni preduvjet, kreirajte novi korisnički račun sa minimalnim privilegijama u Samba4 AD DC sa imenom vmail, odaberite jaku lozinku za ovog korisnika i provjerite lozinka za ovog korisnika nikada ne ističe.

Vmail korisnički nalog će koristiti iRedMail servisi za upite Samba4 AD DC LDAP baze podataka i povlačenje naloga e-pošte.

Da kreirate vmail nalog, koristite ADUC grafički alat sa Windows mašine spojene na domen sa RSAT alatima instaliranim kao što je ilustrovano na snimcima ekrana ispod ili koristite samba-tool komandnu liniju direktno sa kontrolera domena kao što je objašnjeno u sledećoj temi.

  1. Upravljajte Samba4 Active Directory iz Linux komandne linije

U ovom vodiču koristit ćemo prvu gore spomenutu metodu.

9. Sa iRedMail sistema, testirajte sposobnost vmail korisnika da postavlja upite za Samba4 AD DC LDAP bazu podataka izdavanjem donje naredbe. Vraćeni rezultat bi trebao biti ukupan broj unosa objekata za vašu domenu kao što je ilustrovano na snimcima ekrana ispod.

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

Napomena: Zamijenite naziv domene i LDAP bazu dn u Samba4 AD ('cn=users,dc=tecmint,dc=lan' ) shodno tome.

Korak 3: Integrirajte iRedMail usluge u Samba4 AD DC

10. Sada je vrijeme da se mijenjaju usluge iRedMail (Postfix, Dovecot i Roundcube) kako biste postavili upit Samba4 Domain Controlleru za račune e-pošte.

Prva usluga koja će biti modificirana bit će MTA agent, Postfix. Izdajte sljedeće naredbe da onemogućite niz MTA postavki, dodajte ime svoje domene u Postfix lokalnu domenu i domene poštanskog sandučića i koristite Dovecot agenta za isporuku primljene pošte lokalno u poštanske sandučiće korisnika.

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. Zatim kreirajte konfiguracionu datoteku Postfix /etc/postfix/ad_sender_login_maps.cf sa svojim omiljenim uređivačem teksta i dodajte konfiguraciju ispod.

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. Kreirajte /etc/postfix/ad_virtual_mailbox_maps.cf sa sljedećom konfiguracijom.

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. Kreirajte /etc/postfix/ad_virtual_group_maps.cf sa donjom konfiguracijom.

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

Na sva tri konfiguracijska fajla zamijenite vrijednosti iz server_host, bind_dn, bind_pw i search_base da odražavaju vašu vlastitu domenu prilagođenu postavke.

14. Zatim otvorite Postfix glavnu konfiguracijsku datoteku i pretražite i onemogućite iRedAPD check_policy_service i smtpd_end_of_data_restrictions dodavanjem komentara # ispred sledećih redova.

nano /etc/postfix/main.cf

Komentirajte sljedeće redove:

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

15. Sada, provjerite Postfix vezanje za Samba AD koristeći postojećeg korisnika domene i grupu domena izdavanjem niza upita kao što je prikazano u sljedećim primjerima.

Rezultat bi trebao biti sličan kao što je prikazano na slici ispod.

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

Zamijenite AD korisničke i grupne račune u skladu s tim. Također, uvjerite se da AD grupa koju koristite ima neke članove AD korisnika koji su joj dodijeljeni.

16. U sljedećem koraku modificirajte Dovecot konfiguracijsku datoteku kako biste postavili upit za Samba4 AD DC. Otvorite datoteku /etc/dovecot/dovecot-ldap.conf za uređivanje i dodajte sljedeće redove.

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/

Poštansko sanduče Samba4 AD naloga će biti pohranjeno na /var/vmail/vmail1/your_domain.tld/your_domain_user/Maildir/ lokaciji na Linux sistemu.

17. Uvjerite se da su pop3 i imap protokoli omogućeni u glavnoj konfiguracijskoj datoteci dovecot. Provjerite jesu li dodaci za kvotu i acl mail također omogućeni otvaranjem datoteke /etc/dovecot/dovecot.conf i provjerite da li su ove vrijednosti prisutne.

18. Opciono, ako želite postaviti globalnu čvrstu kvotu da ne prelazi maksimalnih 500 MB prostora za pohranu za svakog korisnika domene, dodajte sljedeći red u /etc/dovecot/dovecot. conf fajl.

quota_rule = *:storage=500M 

19. Konačno, da biste primijenili sve do sada napravljene promjene, ponovo pokrenite i provjerite status Postfix i Dovecot demona izdavanjem naredbi ispod sa root privilegijama.

systemctl restart postfix dovecot
systemctl status postfix dovecot

20. Da biste testirali konfiguraciju mail servera iz komandne linije koristeći IMAP protokol koristite telnet ili netcat naredbu kao što je prikazano u primjeru ispod.

nc localhost 143
a1 LOGIN ad_user@your_domain.tld ad_user_password
a2 LIST “” “*”
a3 LOGOUT

Ako možete izvršiti IMAP prijavu iz komandne linije sa Samba4 korisničkim nalogom, onda iRedMail server izgleda spreman za slanje i primanje pošte za Active Directory naloge.

U sljedećem tutorijalu ćemo razgovarati o tome kako integrirati Roundcube web poštu sa Samba4 AD DC i omogućiti Globalni LDAP adresar, prilagoditi Roudcube, pristupiti Roundcube web sučelju iz pretraživača i onemogućiti neke nepotrebne iRedMail usluge.