Kaip sukonfigūruoti ir integruoti „iRedMail“ paslaugas į „Samba4 AD DC“ – 11 dalis


Šioje pamokoje sužinosite, kaip modifikuoti pagrindinius iRedMail demonus, kurie teikia pašto paslaugas, atitinkamai, Postfix, naudojamą pašto perdavimui, ir Dovecot, kuris pristato laiškus į paskyrų pašto dėžutes, kad juos abu būtų galima integruoti į Samba4 Active Directory domeno valdiklį.

Integravę iRedMail į Samba4 AD DC, gausite naudos iš šių funkcijų: vartotojo autentifikavimo, valdymo ir būsenos per Samba AD DC, kurkite laiškų sąrašus naudodami AD grupes ir pasaulinę LDAP adresų knygą Roundcube.

Reikalavimai

  1. Įdiekite „iRedMail“ „CentOS 7“, kad būtų galima integruoti „Samba4 AD“.

1 veiksmas: paruoškite „iRedMail“ sistemą, skirtą „Sama4 AD“ integravimui

1. Atlikdami pirmąjį veiksmą, savo įrenginiui turite priskirti statinį IP adresą, jei naudojate dinaminį IP adresą, kurį teikia DHCP serveris.

Vykdykite komandą ifconfig, kad pateiktumėte įrenginio tinklo sąsajų pavadinimus ir redaguokite tinkamą tinklo sąsają naudodami tinkintus IP nustatymus, išleisdami komandą nmtui-edit prieš tinkamą NIC.

Paleiskite komandą nmtui-edit su root teisėmis.

ifconfig
nmtui-edit eno16777736

2. Atidarę tinklo sąsają redaguoti, pridėkite tinkamus statinio IP nustatymus, įsitikinkite, kad įtraukėte „Samba4 AD DC“ DNS serverių IP adresus ir domeno pavadinimą, kad galėtumėte pateikti užklausą sritį iš savo mašinos. Naudokite toliau pateiktą ekrano kopiją kaip vadovą.

3. Baigę konfigūruoti tinklo sąsają, iš naujo paleiskite tinklo demoną, kad pritaikytumėte pakeitimus ir paleistumėte keletą ping komandų prieš domeno pavadinimą ir samba4 domeno valdiklių FQDN.

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. Tada sinchronizuokite laiką su samba domeno valdikliu, įdiegdami ntpdate paketą ir pateikite Samba4 įrenginio NTP serverio užklausą išduodami toliau nurodytas komandas:

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

5. Galbūt norėsite, kad vietinis laikas būtų automatiškai sinchronizuojamas su samba AD laiko serveriu. Norėdami pasiekti šį nustatymą, pridėkite suplanuotą užduotį, kuri bus vykdoma kas valandą, išleisdami komandą crontab -e ir pridėkite šią eilutę:

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

2 veiksmas: Paruoškite „Samba4 AD DC“, kad būtų galima integruoti „iRedMail“.

6. Dabar pereikite prie „Windows“ įrenginio su įdiegtais RSAT įrankiais, kad galėtumėte valdyti „Samba4 Active Directory“, kaip aprašyta šioje mokymo programoje.

Atidarykite DNS tvarkyklę, eikite į savo domeno Persiųsti paieškos zonas ir pridėkite naują A įrašą, MX įrašą ir PTR įrašas, nurodantis jūsų „iRedMail“ sistemos IP adresą. Naudokite toliau pateiktas ekrano kopijas kaip vadovą.

Pridėkite A įrašą (atitinkamai pakeiskite „iRedMail“ įrenginio pavadinimą ir IP adresą).

Pridėti MX įrašą (palikite antrinį domeną tuščią ir pridėkite šio pašto serverio 10 prioritetą).

Pridėkite PTR įrašą išplėsdami į Atvirkštinės paieškos zonos (atitinkamai pakeiskite „iRedMail“ serverio IP adresą). Jei iki šiol nesukonfigūravote atvirkštinės zonos savo domeno valdikliui, perskaitykite šią pamoką:

  1. Tvarkykite Samba4 DNS grupės strategiją iš Windows

7. Pridėję pagrindinius DNS įrašus, dėl kurių pašto serveris veikia tinkamai, pereikite prie „iRedMail“ įrenginio, įdiekite paketą bind-utils ir pateikite užklausą dėl naujai pridėto pašto įrašus, kaip siūloma toliau pateiktoje ištraukoje.

„Samba4 AD DC“ DNS serveris turėtų atsakyti su DNS įrašais, pridėtais ankstesniame veiksme.

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

„Windows“ įrenginyje atidarykite Komandų eilutės langą ir išduokite komandą nslookup prieš aukščiau nurodytus pašto serverio įrašus.

8. Kaip paskutinis išankstinis reikalavimas, „Samba4 AD DC“ sukurkite naują vartotojo paskyrą su minimaliomis privilegijomis pavadinimu vmail, pasirinkite stiprų šio naudotojo slaptažodį ir įsitikinkite, kad šio vartotojo slaptažodis niekada nesibaigia.

Vmail vartotojo abonementą naudos iRedMail paslaugos, kad pateiktų užklausą Samba4 AD DC LDAP duomenų bazėje ir ištrauktų el. pašto paskyras.

Norėdami sukurti „vmail“ paskyrą, naudokite ADUC grafinį įrankį iš „Windows“ įrenginio, prijungto prie srities su įdiegtais RSAT įrankiais, kaip parodyta toliau pateiktose ekrano kopijose, arba naudokite „samba-tool“ komandų eilutę tiesiai iš domeno valdiklio, kaip paaiškinta šioje temoje.

  1. Tvarkykite „Samba4 Active Directory“ iš „Linux“ komandų eilutės

Šiame vadove naudosime pirmąjį aukščiau paminėtą metodą.

9. Iš „iRedMail“ sistemos išbandykite „vmail“ naudotojo galimybę pateikti užklausą Samba4 AD DC LDAP duomenų bazėje, išduodami toliau pateiktą komandą. Gautas rezultatas turėtų būti bendras jūsų domeno objektų įrašų skaičius, kaip parodyta toliau pateiktose ekrano kopijose.

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

Pastaba: pakeiskite domeno pavadinimą ir LDAP bazinį dn Samba4 AD („cn=users,dc=tecmint,dc=lan“ ) atitinkamai.

3 veiksmas: integruokite iRedMail paslaugas į Samba4 AD DC

10. Dabar atėjo laikas sugadinti „iRedMail“ paslaugas („Postfix“, „Dovecot“ ir „Roundcube“), kad būtų pateikta užklausa „Samba4 Domain Controller“ pašto paskyroms.

Pirmoji paslauga, kuri bus pakeista, bus MTA agentas „Postfix“. Išduokite šias komandas, kad išjungtumėte keletą MTA nustatymų, pridėkite savo domeno pavadinimą prie Postfix vietinio domeno ir pašto dėžutės domenų ir naudokite Dovecot agentą, kad gautus laiškus pristatytumėte vietoje į vartotojų pašto dėžutes.

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. Tada sukurkite Postfix /etc/postfix/ad_sender_login_maps.cf konfigūracijos failą naudodami mėgstamą teksto rengyklę ir pridėkite toliau pateiktą konfigūraciją.

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. Sukurkite /etc/postfix/ad_virtual_mailbox_maps.cf naudodami šią konfigūraciją.

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. Sukurkite /etc/postfix/ad_virtual_group_maps.cf naudodami toliau pateiktą konfigūraciją.

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

Visuose trijuose konfigūracijos failuose pakeiskite reikšmes iš server_host, bind_dn, bind_pw ir search_base, kad atspindėtų jūsų tinkintą domeną nustatymus.

14. Tada atidarykite pagrindinį „Postfix“ konfigūracijos failą ir ieškokite bei išjunkite iRedAPD check_policy_service ir smtpd_end_of_data_restrictions, pridėdami komentarą # prieš šias eilutes.

nano /etc/postfix/main.cf

Komentuokite šias eilutes:

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

15. Dabar patikrinkite „Postfix“ susiejimą su „Samba AD“, naudodami esamą domeno vartotoją ir domenų grupę, pateikdami užklausų seriją, kaip parodyta toliau pateiktuose pavyzdžiuose.

Rezultatas turėtų būti panašus, kaip parodyta toliau pateiktoje ekrano kopijoje.

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

Atitinkamai pakeiskite AD naudotojų ir grupių paskyras. Be to, įsitikinkite, kad jūsų naudojamai AD grupei yra priskirti keli AD naudotojai.

16. Atlikdami kitą veiksmą pakeiskite Dovecot konfigūracijos failą, kad pateiktumėte užklausą Samba4 AD DC. Norėdami redaguoti, atidarykite failą /etc/dovecot/dovecot-ldap.conf ir pridėkite šias eilutes.

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/

„Samba4 AD“ paskyros pašto dėžutė „Linux“ sistemoje bus saugoma /var/vmail/vmail1/your_domain.tld/your_domain_user/Maildir/.

17. Įsitikinkite, kad pagrindiniame dovecot konfigūracijos faile įjungti pop3 ir imap protokolai. Patikrinkite, ar kvota ir Acl pašto papildiniai taip pat įgalinti, atidarę failą /etc/dovecot/dovecot.conf ir patikrinkite, ar šios reikšmės yra.

18. Pasirinktinai, jei norite nustatyti visuotinę standžiąją kvotą, kad ji neviršytų maksimalios 500 MB saugyklos kiekvienam domeno naudotojui, įtraukite šią eilutę į /etc/dovecot/dovecot. conf failą.

quota_rule = *:storage=500M 

19. Galiausiai, norėdami pritaikyti visus iki šiol atliktus pakeitimus, iš naujo paleiskite „Postfix“ ir „Dovecot“ demonų būseną, išleisdami toliau pateiktas komandas su root teisėmis.

systemctl restart postfix dovecot
systemctl status postfix dovecot

20. Norėdami išbandyti pašto serverio konfigūraciją komandinėje eilutėje naudodami IMAP protokolą, naudokite komandą telnet arba netcat, kaip parodyta toliau pateiktame pavyzdyje.

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

Jei galite atlikti IMAP prisijungimą iš komandinės eilutės naudodami Samba4 vartotojo abonementą, atrodo, kad iRedMail serveris yra pasirengęs siųsti ir gauti laiškus, skirtus Active Directory paskyroms.

Kitoje pamokoje bus aptarta, kaip integruoti Roundcube žiniatinklio paštą su Samba4 AD DC ir įjungti pasaulinę LDAP adresų knygą, tinkinti Roudcube, pasiekti Roundcube žiniatinklio sąsają iš naršyklės ir išjungti kai kurias nereikalingas iRedMail paslaugas.