Jinsi ya Kusanidi na Kuunganisha Huduma za iRedMail kwa Samba4 AD DC - Sehemu ya 11


Katika somo hili tutajifunza jinsi ya kurekebisha daemoni kuu za iRedMail ambazo hutoa huduma za barua, mtawalia, Samba4 Active Directory Domain Controller.

Kwa kuunganisha iRedMail kwa Samba4 AD DC utafaidika kutokana na vipengele vifuatavyo: uthibitishaji wa mtumiaji, usimamizi, na hadhi kupitia Samba AD DC, unda orodha za barua kwa usaidizi wa vikundi vya AD na Kitabu cha Anwani za LDAP katika Roundcube.

  1. Sakinisha iRedMail kwenye CentOS 7 kwa Samba4 AD Integration

Hatua ya 1: Andaa Mfumo wa iRedMail kwa Utangamano wa Sama4 AD

1. Katika hatua ya kwanza, unahitaji kukabidhi anwani ya IP isiyobadilika kwa mashine yako ikiwa unatumia anwani ya IP inayobadilika iliyotolewa na seva ya DHCP.

Tekeleza amri ya nmtui-edit dhidi ya NIC sahihi.

Endesha nmtui-edit amri na haki za mizizi.

# ifconfig
# nmtui-edit eno16777736

2. Mara tu kiolesura cha mtandao kinapofunguliwa kwa ajili ya kuhaririwa, ongeza mipangilio sahihi ya IP tuli, hakikisha kuwa umeongeza anwani za IP za seva za DNS za Samba4 AD DC yako na jina la kikoa chako ili kuuliza eneo kutoka kwa mashine yako. Tumia picha ya skrini iliyo hapa chini kama mwongozo.

3. Baada ya kumaliza kusanidi kiolesura cha mtandao, anzisha upya daemoni ya mtandao ili kutumia mabadiliko na utoe mfululizo wa amri za ping dhidi ya jina la kikoa na vidhibiti vya kikoa vya samba4 FQDNs.

# 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. Kisha, landanisha muda na kidhibiti cha kikoa cha samba kwa kusakinisha kifurushi cha ntpdate na uulize seva ya mashine ya Samba4 NTP kwa kutoa amri zilizo hapa chini:

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

5. Unaweza kutaka saa ya ndani kusawazishwa kiotomatiki na seva ya saa ya AD ya samba. Ili kufikia mpangilio huu, ongeza kazi iliyopangwa ya kufanya kazi kila saa kwa kutoa crontab -e amri na uongeze laini ifuatayo:

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

Hatua ya 2: Tayarisha Samba4 AD DC kwa Muunganisho wa iRedMail

6. Sasa, sogea hadi hapa.

Fungua Kidhibiti cha DNS, nenda kwenye kikoa chako cha Kanda za Kutafuta Mbele na uongeze rekodi mpya A, rekodi ya MX na rekodi ya PTR ili kuelekeza kwenye anwani yako ya IP ya mfumo wa iRedMail. Tumia picha za skrini zilizo hapa chini kama mwongozo.

Ongeza Rekodi (badilisha jina na Anwani ya IP ya mashine ya iRedMail ipasavyo).

Ongeza rekodi ya MX (acha kikoa cha watoto wazi na uongeze kipaumbele cha 10 kwa seva hii ya barua).

Ongeza rekodi ya PTR kwa kupanua hadi Maeneo ya Kugeuza Nyuma (badilisha anwani ya IP ya seva ya iRedMail ipasavyo). Iwapo hujasanidi eneo la kinyume kwa kidhibiti chako cha kikoa kufikia sasa, soma mafunzo yafuatayo:

  1. Dhibiti Sera ya Kikundi cha Samba4 DNS kutoka Windows

7. Baada ya kuongeza rekodi za msingi za DNS zinazofanya seva ya barua kufanya kazi vizuri, nenda kwenye mashine ya iRedMail, sakinisha kifurushi cha bind-utils na uulize rekodi mpya za barua pepe zilizoongezwa kama inavyopendekezwa kwenye dondoo lililo hapa chini.

Seva ya Samba4 AD DC DNS inapaswa kujibu rekodi za DNS zilizoongezwa katika hatua ya awali.

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

Kutoka kwa mashine ya Windows, fungua dirisha la Amri Prompt na utoe amri ya nslookup dhidi ya rekodi za seva za barua zilizo hapo juu.

8. Kama hitaji la mwisho la awali, fungua akaunti mpya ya mtumiaji iliyo na marupurupu machache katika Samba4 AD DC yenye jina vmail, chagua nenosiri thabiti la mtumiaji huyu na uhakikishe kuwa nenosiri la mtumiaji huyu haliisha muda wake.

Akaunti ya mtumiaji wa vmail itatumiwa na huduma za iRedMail kuuliza Samba4 AD DC LDAP hifadhidata na kuvuta akaunti za barua pepe.

Ili kuunda akaunti ya vmail, tumia zana ya picha ya ADUC kutoka kwa mashine ya Windows iliyounganishwa kwenye ulimwengu na zana za RSAT zilizosakinishwa kama inavyoonyeshwa kwenye picha za skrini zilizo hapa chini au tumia mstari wa amri ya zana moja kwa moja kutoka kwa kidhibiti cha kikoa kama ilivyoelezwa kwenye mada ifuatayo.

  1. Dhibiti Saraka Inayotumika ya Samba4 kutoka kwa Mstari wa Amri wa Linux

Katika mwongozo huu, tutatumia njia ya kwanza iliyotajwa hapo juu.

9. Kutoka kwa mfumo wa iRedMail, jaribu uwezo wa mtumiaji wa vmail kuuliza hifadhidata ya Samba4 AD DC LDAP kwa kutoa amri iliyo hapa chini. Matokeo yaliyorejeshwa yanapaswa kuwa jumla ya idadi ya maingizo ya vitu kwa kikoa chako kama inavyoonyeshwa kwenye picha za skrini zilizo hapa chini.

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

Kumbuka: Badilisha jina la kikoa na msingi wa LDAP dn katika Samba4 AD (‘cn=users,dc=tecmint,dc=lan‘) ipasavyo.

Hatua ya 3: Unganisha Huduma za iRedMail kwa Samba4 AD DC

10. Sasa ni wakati wa kuchezea huduma za iRedMail (Postfix, Dovecot na Roundcube) ili kuuliza Samba4 Domain Controller kwa akaunti za barua.

Huduma ya kwanza kurekebishwa itakuwa wakala wa MTA, Postfix. Toa amri zifuatazo ili kuzima mfululizo wa mipangilio ya MTA, ongeza jina la kikoa chako kwenye kikoa cha karibu cha Postfix na vikoa vya kisanduku cha barua na utumie wakala wa Dovecot kuwasilisha barua pepe zilizopokewa ndani ya nchi kwa visanduku vya barua vya watumiaji.

# 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. Kisha, unda faili ya usanidi ya Postfix /etc/postfix/ad_sender_login_maps.cf na kihariri chako cha maandishi unachokipenda na uongeze usanidi ulio hapa chini.

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. Unda /etc/postfix/ad_virtual_mailbox_maps.cf kwa usanidi ufuatao.

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. Unda /etc/postfix/ad_virtual_group_maps.cf kwa usanidi ulio hapa chini.

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

Kwenye faili zote tatu za usanidi badilisha thamani kutoka server_host, bind_dn, bind_pw na search_base ili kuonyesha mipangilio maalum ya kikoa chako.

14. Kisha, fungua faili kuu ya usanidi ya Postfix na utafute na uzime huduma ya check_policy_service ya iRedAPD na smtpd_end_of_data_restritions kwa kuongeza maoni # mbele ya mistari ifuatayo.

# nano /etc/postfix/main.cf

Toa maoni kwa mistari ifuatayo:

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

15. Sasa, thibitisha kwamba Postfix inafunga kwa Samba AD ukitumia mtumiaji wa kikoa aliyepo na kikundi cha kikoa kwa kutoa mfululizo wa hoja kama zilivyowasilishwa katika mifano ifuatayo.

Matokeo yanapaswa kuwa sawa na inavyoonyeshwa kwenye skrini iliyo chini.

# 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

Badilisha akaunti za mtumiaji na kikundi za AD ipasavyo. Pia, hakikisha kwamba kikundi cha AD unachotumia kina baadhi ya watumiaji wa AD waliokabidhiwa.

16. Katika hatua inayofuata rekebisha faili ya usanidi ya Dovecot ili kuuliza Samba4 AD DC. Fungua faili /etc/dovecot/dovecot-ldap.conf kwa kuhariri na uongeze mistari ifuatayo.

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/

Sanduku la barua la akaunti ya Samba4 AD litahifadhiwa katika /var/vmail/vmail1/your_domain.tld/your_domain_user/Maildir/ eneo kwenye mfumo wa Linux.

17. Hakikisha pop3 na itifaki za imap zimewashwa katika faili kuu ya usanidi ya dovecot. Thibitisha ikiwa programu jalizi za upendeleo na acl pia zimewashwa kwa kufungua faili /etc/dovecot/dovecot.conf na uangalie kama thamani hizi zipo.

18. Kwa hiari, ikiwa ungependa kuweka nafasi ngumu ya kimataifa isizidi upeo wa MB 500 wa hifadhi kwa kila mtumiaji wa kikoa, ongeza laini ifuatayo katika faili /etc/dovecot/dovecot.conf.

quota_rule = *:storage=500M 

19. Hatimaye, ili kutekeleza mabadiliko yote yaliyofanywa kufikia sasa, anzisha upya na uthibitishe hali ya daemons za Postfix na Dovecot kwa kutoa amri zilizo hapa chini zenye upendeleo wa mizizi.

# systemctl restart postfix dovecot
# systemctl status postfix dovecot

20. Ili kujaribu usanidi wa seva ya barua kutoka kwa safu ya amri kwa kutumia itifaki ya IMAP tumia amri ya telnet au netcat kama inavyoonyeshwa kwenye mfano hapa chini.

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

Ikiwa unaweza kuingia katika IMAP kutoka kwa safu ya amri na akaunti ya mtumiaji ya Samba4 basi seva ya iRedMail inaonekana iko tayari kutuma na kupokea barua kwa akaunti za Active Directory.

Kwenye mafunzo yanayofuata yatajadili jinsi ya kuunganisha barua pepe ya tovuti ya Roundcube na Samba4 AD DC na kuwezesha Kitabu cha Anwani za LDAP, kubinafsisha Roudcube, kufikia kiolesura cha tovuti cha Roundcube kutoka kwa kivinjari na kuzima baadhi ya huduma zisizohitajika za iRedMail.