iRedMail-palvelujen määrittäminen ja integrointi Samba4 AD DC:hen - Osa 11


Tässä opetusohjelmassa opitaan muokkaamaan sähköpostipalveluja tarjoavia iRedMailin päädaemoneja, postin siirtoon käytettävää Postfixia ja sähköpostin postilaatikoihin toimittavaa Dovecotia, jotta ne voidaan integroida Samba4 Active Directory Domain Controlleriin.

Integroimalla iRedMailin Samba4 AD DC:hen hyödyt seuraavista ominaisuuksista: käyttäjän todennus, hallinta ja tila Samba AD DC:n kautta, postituslistojen luominen AD-ryhmien ja globaalin LDAP-osoitekirjan avulla Roundcubessa.

Vaatimukset

  1. Asenna iRedMail CentOS 7:ään Samba4 AD -integraatiota varten

Vaihe 1: Valmistele iRedMail System Sama4 AD -integraatiota varten

1. Ensimmäisessä vaiheessa sinun on määritettävä laitteellesi staattinen IP-osoite siltä varalta, että käytät DHCP-palvelimen toimittamaa dynaamista IP-osoitetta.

Suorita ifconfig-komento listataksesi koneesi verkkoliitäntöjen nimet ja muokkaa oikeaa verkkoliitäntää mukautetuilla IP-asetuksillasi antamalla nmtui-edit-komento oikeaan verkkokorttiin.

Suorita nmtui-edit-komento pääkäyttäjän oikeuksilla.

ifconfig
nmtui-edit eno16777736

2. Kun verkkoliitäntä on avattu muokkausta varten, lisää oikeat staattiset IP-asetukset ja varmista, että lisäät Samba4 AD DC:n DNS-palvelinten IP-osoitteet ja verkkotunnuksesi nimen, jotta voit tehdä kyselyn valtakunta koneeltasi. Käytä alla olevaa kuvakaappausta oppaana.

3. Kun olet määrittänyt verkkoliitännän, käynnistä verkkodaemon uudelleen, jotta muutokset otetaan käyttöön ja annetaan sarja ping-komentoja toimialueen nimelle ja samba4-toimialueen ohjauskomentoille.

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. Synkronoi seuraavaksi aika samba-toimialueen ohjaimen kanssa asentamalla ntpdate-paketti ja tee kysely Samba4-koneen NTP-palvelimelle antamalla seuraavat komennot:

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

5. Haluat ehkä, että paikallinen aika synkronoidaan automaattisesti samba AD-aikapalvelimen kanssa. Tämän asetuksen saavuttamiseksi lisää ajoitettu työ, joka suoritetaan joka tunti antamalla crontab -e -komento ja lisää seuraava rivi:

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

Vaihe 2: Valmistele Samba4 AD DC iRedMail-integraatiota varten

6. Siirry nyt Windows-koneeseen, johon on asennettu RSAT-työkalut, jotta voit hallita Samba4 Active Directoria tässä opetusohjelmassa kuvatulla tavalla.

Avaa DNS Manager, siirry verkkotunnukseesi Forward Lookup Zones ja lisää uusi A-tietue, MX-tietue ja PTR-tietueen, joka osoittaa iRedMail-järjestelmän IP-osoitteeseen. Käytä alla olevia kuvakaappauksia oppaana.

Lisää A-tietue (korvaa iRedMail-koneen nimi ja IP-osoite vastaavasti).

Lisää MX-tietue (jätä alatason verkkotunnus tyhjäksi ja lisää tälle sähköpostipalvelimelle prioriteetti 10).

Lisää PTR-tietue laajentamalla kohtaan Käänteisen haun vyöhykkeet (korvaa iRedMail-palvelimen IP-osoite vastaavasti). Jos et ole toistaiseksi määrittänyt käänteistä vyöhykettä toimialueen ohjaimellesi, lue seuraava opetusohjelma:

  1. Hallitse Samba4 DNS -ryhmäkäytäntöä Windowsista

7. Kun olet lisännyt perus DNS-tietueet, jotka saavat sähköpostipalvelimen toimimaan oikein, siirry iRedMail-koneeseen, asenna bind-utils-paketti ja tee kysely juuri lisätylle postitietueet alla olevan otteen mukaisesti.

Samba4 AD DC DNS -palvelimen pitäisi vastata edellisessä vaiheessa lisätyillä DNS-tietueilla.

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

Avaa Windows-koneessa Komentokehote-ikkuna ja anna nslookup-komento yllä oleville sähköpostipalvelimen tietueille.

8. Viimeisenä edellytyksenä on, että luo uusi käyttäjätili, jolla on vähimmäisoikeudet Samba4 AD DC:hen nimellä vmail, valitse tälle käyttäjälle vahva salasana ja varmista, että tämän käyttäjän salasana ei vanhene koskaan.

iRedMail-palvelut käyttävät vmail-käyttäjätiliä Samba4 AD DC LDAP -tietokannan kyselyyn ja sähköpostitilien hakemiseen.

Luo vmail-tili käyttämällä ADUC-graafista työkalua Windows-koneesta, joka on liitetty valtakuntaan RSAT-työkaluilla asennettuna alla olevien kuvakaappausten mukaisesti, tai käytä samba-tool-komentoriviä suoraan toimialueen ohjaimesta seuraavassa aiheessa kuvatulla tavalla.

  1. Hallitse Samba4 Active Directory -hakemistoa Linuxin komentoriviltä

Tässä oppaassa käytämme ensimmäistä edellä mainittua menetelmää.

9. Testaa iRedMail-järjestelmästä vmail-käyttäjän kykyä tehdä kyselyjä Samba4 AD DC LDAP -tietokannasta antamalla alla oleva komento. Palautetun tuloksen tulee olla verkkotunnuksesi objektien kokonaismäärä, kuten alla olevissa kuvakaappauksissa on kuvattu.

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

Huomaa: korvaa verkkotunnuksen nimi ja LDAP-pohjainen dn Samba4 AD:ssa ('cn=users,dc=tecmint,dc=lan' ) asianmukaisesti.

Vaihe 3: Integroi iRedMail-palvelut Samba4 AD DC:hen

10. Nyt on aika peukaloida iRedMail-palveluita (Postfix, Dovecot ja Roundcube) ja kysellä sähköpostitilejä Samba4 Domain Controllerista.

Ensimmäinen muokattava palvelu on MTA-agentti Postfix. Anna seuraavat komennot poistaaksesi sarjan MTA-asetuksia käytöstä, lisää verkkotunnuksesi paikalliseen Postfix-toimialueeseen ja postilaatikkotoimialueisiin ja käytä Dovecot-agenttia vastaanotettujen sähköpostien toimittamiseen paikallisesti käyttäjien postilaatikoihin.

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. Luo seuraavaksi Postfixin /etc/postfix/ad_sender_login_maps.cf-määritystiedosto suosikkitekstieditorillasi ja lisää alla olevat asetukset.

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. Luo /etc/postfix/ad_virtual_mailbox_maps.cf seuraavilla määrityksillä.

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. Luo /etc/postfix/ad_virtual_group_maps.cf alla olevilla määrityksillä.

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

Korvaa kaikissa kolmessa määritystiedostossa arvot server_host, bind_dn, bind_pw ja search_base vastaamaan omaa verkkotunnustasi. asetukset.

14. Avaa seuraavaksi Postfixin päämääritystiedosto ja etsi ja poista käytöstä iRedAPD check_policy_service ja smtpd_end_of_data_restrictions lisäämällä kommentti # seuraavien rivien edessä.

nano /etc/postfix/main.cf

Kommentoi seuraavat rivit:

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

15. Tarkista nyt Postfixin sitoutuminen Samba AD:hen käyttämällä olemassa olevaa verkkotunnuksen käyttäjää ja toimialueryhmää suorittamalla sarja kyselyjä seuraavissa esimerkeissä esitetyllä tavalla.

Tuloksen tulee olla samanlainen kuin alla olevassa kuvakaappauksessa.

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

Vaihda AD-käyttäjä- ja ryhmätilit vastaavasti. Varmista myös, että käyttämällesi AD-ryhmälle on määritetty AD-käyttäjien jäseniä.

16. Muokkaa seuraavassa vaiheessa Dovecot-määritystiedostoa tehdäksesi kyselyn Samba4 AD DC:stä. Avaa tiedosto /etc/dovecot/dovecot-ldap.conf muokkausta varten ja lisää seuraavat rivit.

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 -tilin postilaatikko tallennetaan sijaintiin /var/vmail/vmail1/your_domain.tld/your_domain_user/Maildir/ Linux-järjestelmässä.

17. Varmista, että pop3- ja imap-protokollat ovat käytössä dovecotin päämääritystiedostossa. Tarkista, ovatko myös kiintiö- ja acl-postilaajennukset käytössä avaamalla tiedosto /etc/dovecot/dovecot.conf ja tarkistamalla, ovatko nämä arvot olemassa.

18. Jos haluat asettaa globaalin kiinteän kiintiön enintään 500 Mt:n enimmäistallennustilaksi kullekin verkkotunnuksen käyttäjälle, lisää seuraava rivi kohtaan /etc/dovecot/dovecot. conf-tiedosto.

quota_rule = *:storage=500M 

19. Lopuksi, jotta kaikki tähän mennessä tehdyt muutokset voidaan ottaa käyttöön, käynnistä uudelleen ja tarkista Postfix- ja Dovecot-daemonien tila antamalla alla olevat komennot pääkäyttäjän oikeuksin.

systemctl restart postfix dovecot
systemctl status postfix dovecot

20. Jos haluat testata sähköpostipalvelimen määritystä komentoriviltä IMAP-protokollan avulla, käytä telnet- tai netcat-komentoa alla olevan esimerkin mukaisesti.

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

Jos voit suorittaa IMAP-kirjautumisen komentoriviltä Samba4-käyttäjätilillä, iRedMail-palvelin näyttää olevan valmis lähettämään ja vastaanottamaan sähköpostia Active Directory -tilejä varten.

Seuraavassa opetusohjelmassa keskustellaan Roundcube-webmailin integroimisesta Samba4 AD DC:n kanssa ja Global LDAP Address Bookin käyttöönotosta, Roudcuben mukauttamisesta, Roundcube-verkkoliittymän käyttämisestä selaimesta ja joidenkin tarpeettomien iRedMail-palveluiden poistamisesta käytöstä.