IRedMail hyzmatlaryny Samba4 AD DC-e nädip sazlamaly we birleşdirmeli - 11-nji bölüm


Bu gollanmada, Samba4 Active Directory Domain Controller, poçta hyzmatlaryny berýän iRedMail esasy daemonlaryny nädip üýtgetmelidigini öwreneris.

IRedMail-i Samba4 AD DC-e birikdirmek bilen aşakdaky aýratynlyklardan peýdalanarsyňyz: ulanyjyny tanamak, dolandyrmak we Samba AD DC arkaly status, AD toparlarynyň we tegelek LD-iň Global LDAP Salgylar kitabynyň kömegi bilen poçta sanawlaryny dörediň.

  1. Samba4 AD integrasiýasy üçin CentOS 7-de iRedMail guruň

1-nji ädim: Sama4 AD integrasiýasy üçin iRedMail ulgamyny taýýarlaň

1. Birinji ädimde, DHCP serweri tarapyndan üpjün edilen dinamiki IP adresi ulanýan bolsaňyz, enjamyňyz üçin statiki IP adresi bellemeli.

Dogry NIC-e garşy nmtui-edit buýrugyny işlediň.

Kök aýratynlyklary bilen nmtui-edit buýrugyny işlediň.

# ifconfig
# nmtui-edit eno16777736

2. Ulgam interfeýsi redaktirlemek üçin açylansoň, degişli statiki IP sazlamalaryny goşuň, enjamyňyzdan ýer soramak üçin Samba4 AD DC-iň DNS serwerleriniň IP adreslerini we domeniňiziň adyny goşýandygyňyzy anyklaň. Aşakdaky skrinshoty gollanma hökmünde ulanyň.

3. Tor interfeýsini düzeniňizden soň, üýtgeşmeleri ulanmak we domen adyna we samba4 domen dolandyryjylary FQDN-lerine garşy bir topar ping buýruklaryny çykarmak üçin tor daemonyny täzeden açyň.

# 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. Ondan soň, ntpdate paketini gurup, aşakdaky buýruklary bermek bilen Samba4 maşyn NTP serwerini sorap, samba domen dolandyryjysy bilen sinhronlaň:

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

5. timeerli wagtyň samba AD wagt serweri bilen awtomatiki sinhronlanmagyny isläp bilersiňiz. Bu sazlamany gazanmak üçin, crontab -e buýrugy berip, her sagat işlemek üçin meýilleşdirilen iş goşuň we aşakdaky setiri goşuň:

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

2-nji ädim: iRedMail integrasiýasy üçin Samba4 AD DC taýýarlaň

6. Indi şu ýere göçüň.

DNS dolandyryjysyny açyň, Öňe gözlemek zolaklaryna giriň we iRedMail ulgam IP adresiňizi görkezmek üçin täze ýazgy, MX ýazgy we PTR ýazgy goşuň. Gollanma hökmünde aşakdaky ekran suratlaryny ulanyň.

Recordazgy goşuň (degişlilikde iRedMail enjamynyň adyny we IP adresini çalyşyň).

MX ýazgysyny goşuň (çaga domenini boş goýuň we bu poçta serweri üçin 10 sany ileri tutuň).

Ters gözleg zolaklaryna giňelip PTR ýazgysyny goşuň (şoňa görä iRedMail serweriniň IP adresini çalyşyň). Domen dolandyryjyňyz üçin şu wagta çenli ters zona düzmedik bolsaňyz, aşakdaky gollanmany okaň:

  1. Windows-dan Samba4 DNS Topar Syýasatyny dolandyryň

7. Poçta serweriniň kadaly işlemegine, iRedMail maşynyna geçmegine, baglaýjy enjamlar paketini gurmagyna we aşakdaky bölekde görkezilişi ýaly täze goşulan poçta ýazgylaryny soramagyna sebäp bolýan esasy DNS ýazgylaryny goşanyňyzdan soň.

Samba4 AD DC DNS serweri, öňki ädimde goşulan DNS ýazgylary bilen jogap bermeli.

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

Windows enjamyndan buýruk buýrugy penjiresini açyň we ýokardaky poçta serweriniň ýazgylaryna garşy nslookup buýrugyny beriň.

8. Iň soňky talap hökmünde, Samba4 AD DC-de vmail ady bilen iň az artykmaçlyklary bolan täze ulanyjy hasaby dörediň, bu ulanyjy üçin berk parol saýlaň we bu ulanyjynyň parolynyň hiç wagt gutarmajakdygyna göz ýetiriň.

Vmail ulanyjy hasaby, iRedMail hyzmatlary tarapyndan Samba4 AD DC LDAP maglumat bazasyny soramak we e-poçta hasaplaryny çekmek üçin ulanylar.

Vmail hasaby döretmek üçin, aşakdaky ekran suratlarynda görkezilişi ýaly gurnalan RSAT gurallary bilen birleşdirilen Windows enjamyndan ADUC grafiki guralyny ulanyň ýa-da indiki mowzukda düşündirilişi ýaly domen gözegçisinden samba-gural buýruk setirini ulanyň.

  1. Linux buýruk setirinden Samba4 işjeň katalogyny dolandyryň

Bu gollanmada ýokarda agzalan ilkinji usuly ulanarys.

9. iRedMail ulgamyndan, aşakdaky buýrugy bermek bilen, vamba ulanyjysynyň Samba4 AD DC LDAP maglumat bazasyny soramak ukybyny barlaň. Yza gaýdyp gelen netije, aşakdaky ekran suratlarynda görkezilişi ýaly, domeniňiz üçin obýektleriň umumy sany bolmaly.

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

Bellik: Samba4 AD-da domen adyny we LDAP bazasyny çalyşyň ('cn=ulanyjylar, dc=tecmint, dc=lan').

3-nji ädim: iRedMail hyzmatlaryny Samba4 AD DC-e birleşdiriň

10. Indi poçta hasaplary üçin Samba4 Domain Controller-den soramak üçin iRedMail hyzmatlaryny (Postfiks, Dovecot we Roundcube) üýtgetmegiň wagty geldi.

Üýtgediljek ilkinji hyzmat MTA agenti, Postfiks bolar. MTA sazlamalarynyň bir toparyny öçürmek, domen adyňyzy Postfix ýerli domenine we poçta gutusy domenlerine goşmak we kabul edilen hatlary ulanyjy poçta gutusyna ýerli derejede ibermek üçin Dovecot agentini ulanyň.

# 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. Ondan soň, halaýan tekst redaktoryňyz bilen Postfiks /etc/postfix/ad_sender_login_maps.cf konfigurasiýa faýly dörediň we aşakdaky konfigurasiýany goşuň.

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. Aşakdaky konfigurasiýa bilen /etc/postfix/ad_virtual_mailbox_maps.cf dörediň.

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. Aşakdaky konfigurasiýa bilen /etc/postfix/ad_virtual_group_maps.cf dörediň.

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

Üç konfigurasiýa faýlynda, öz domeniňiziň sazlamalaryny görkezmek üçin server_host, bind_dn, bind_pw we search_base bahalaryny çalyşyň.

14. Ondan soň, “Postfix” esasy konfigurasiýa faýlyny açyň we aşakdaky setirleriň öňünde # teswir goşmak bilen iRedAPD check_policy_service we smtpd_end_of_data_restriction gözläň we öçüriň.

# nano /etc/postfix/main.cf

Aşakdaky setirleri düşündiriň:

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

15. Indi, bar bolan domen ulanyjysyny we domen toparyny ulanyp, indiki mysallarda görkezilişi ýaly birnäçe soraglary berip, Samba AD bilen baglanyşdyrylan Postfiksi barlaň.

Netije, aşaky skrinshotda görkezilişi ýaly bolmaly.

# 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

AD ulanyjysyny we topar hasaplaryny şoňa görä çalyşyň. Şeýle hem, ulanýan AD toparyňyzyň käbir AD ulanyjy agzalarynyň bardygyna göz ýetiriň.

16. Indiki ädimde Samba4 AD DC soramak üçin Dovecot konfigurasiýa faýlyny üýtgediň. Aşakdaky setirleri redaktirlemek we goşmak üçin /etc/dovecot/dovecot-ldap.conf faýly açyň.

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 hasabynyň poçta gutusy Linux ulgamynda /var/vmail/vmail1/your_domain.tld/your_domain_user/Maildir/ ýerinde saklanar.

17. Kepderi esasy konfigurasiýa faýlynda pop3 we imap protokollarynyň açykdygyna göz ýetiriň. Kwota we acl poçta plaginleriniň /etc/dovecot/dovecot.conf faýlyny açmak arkaly açykdygyny ýa-da ýokdugyny barlaň we bu bahalaryň bardygyny ýa-da ýokdugyny barlaň.

18. Islege görä, her bir domen ulanyjysy üçin iň köp 500 MB ammardan ýokary bolmazlyk üçin global gaty kwotany bellemek isleseňiz, /etc/dovecot/dovecot.conf faýlyna aşakdaky setiri goşuň.

quota_rule = *:storage=500M 

19. Netijede, şu wagta çenli edilen ähli üýtgeşmeleri ulanmak üçin, Postfiks we Dovecot daemonlarynyň ýagdaýyny täzeden açyň we kök ygtyýarlyklary bilen aşakdaky buýruklary çykaryp barlaň.

# systemctl restart postfix dovecot
# systemctl status postfix dovecot

20. IMAP protokolyny ulanyp, buýruk setirinden poçta serweriniň konfigurasiýasyny barlamak üçin aşakdaky mysalda görkezilişi ýaly telnet ýa-da netcat buýrugyny ulanyň.

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

Samba4 ulanyjy hasaby bilen buýruk setirinden IMAP girişini ýerine ýetirip bilýän bolsaňyz, iRedMail serweri Active Directory hasaplary üçin poçta ibermäge we almaga taýyn ýaly görünýär.

Indiki sapakda “Roundcube” web poçtasyny Samba4 AD DC bilen birleşdirmek we Global LDAP Salgylar kitabyny işletmek, “Roudcube” -ni özleşdirmek, brauzerden “Roundcube” web interfeýsine girmek we käbir gerekmejek iRedMail hyzmatlaryny öçürmek barada maslahat ediler.