Cara Mengonfigurasi dan Mengintegrasikan Layanan iRedMail ke Samba4 AD DC - Bagian 11


Dalam tutorial ini akan mempelajari cara memodifikasi daemon utama iRedMail yang menyediakan layanan email, masing-masing, Postfix yang digunakan untuk transfer email dan Dovecot yang mengirimkan email ke kotak surat akun, untuk mengintegrasikan keduanya di Samba4 Active Directory Domain Controller.

Dengan mengintegrasikan iRedMail ke Samba4 AD DC Anda akan mendapatkan keuntungan dari fitur berikut: otentikasi pengguna, manajemen, dan status melalui Samba AD DC, membuat daftar email dengan bantuan grup AD dan Buku Alamat LDAP Global di Roundcube.

Persyaratan

  1. Instal iRedMail di CentOS 7 untuk Integrasi Samba4 AD

Langkah 1: Siapkan Sistem iRedMail untuk Integrasi Sama4 AD

1. Pada langkah pertama, Anda perlu menetapkan alamat IP statis untuk mesin Anda jika Anda menggunakan alamat IP dinamis yang disediakan oleh server DHCP.

Jalankan perintah ifconfig untuk mencantumkan nama antarmuka jaringan mesin Anda dan edit antarmuka jaringan yang sesuai dengan pengaturan IP khusus Anda dengan mengeluarkan perintah nmtui-edit pada NIC yang benar.

Jalankan perintah nmtui-edit dengan hak akses root.

ifconfig
nmtui-edit eno16777736

2. Setelah antarmuka jaringan dibuka untuk diedit, tambahkan pengaturan IP statis yang tepat, pastikan Anda menambahkan alamat IP server DNS Samba4 AD DC Anda dan nama domain Anda untuk menanyakan ranah dari mesin Anda. Gunakan tangkapan layar di bawah ini sebagai panduan.

3. Setelah Anda selesai mengonfigurasi antarmuka jaringan, mulai ulang daemon jaringan untuk menerapkan perubahan dan jalankan serangkaian perintah ping terhadap nama domain dan FQDN pengontrol domain samba4.

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. Selanjutnya, sinkronkan waktu dengan pengontrol domain samba dengan menginstal paket ntpdate dan menanyakan server NTP mesin Samba4 dengan mengeluarkan perintah di bawah ini:

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

5. Anda mungkin ingin waktu lokal disinkronkan secara otomatis dengan server waktu samba AD. Untuk mencapai pengaturan ini, tambahkan pekerjaan terjadwal untuk dijalankan setiap jam dengan mengeluarkan perintah crontab -e dan menambahkan baris berikut:

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

Langkah 2: Siapkan Samba4 AD DC untuk Integrasi iRedMail

6. Sekarang, pindah ke mesin Windows dengan alat RSAT terinstal untuk mengelola Direktori Aktif Samba4 seperti yang dijelaskan dalam tutorial ini.

Buka Pengelola DNS, buka Zona Pencarian Depan domain Anda dan tambahkan data A baru, data MX dan data PTR yang mengarah ke alamat IP sistem iRedMail Anda. Gunakan tangkapan layar di bawah ini sebagai panduan.

Tambahkan catatan A (ganti nama dan Alamat IP mesin iRedMail sesuai dengan itu).

Tambahkan data MX (biarkan domain anak kosong dan tambahkan prioritas 10 untuk server email ini).

Tambahkan data PTR dengan memperluas ke Zona Pencarian Terbalik (ganti alamat IP server iRedMail sesuai kebutuhan). Jika Anda belum mengonfigurasi zona terbalik untuk pengontrol domain Anda sejauh ini, baca tutorial berikut:

  1. Kelola Kebijakan Grup DNS Samba4 dari Windows

7. Setelah Anda menambahkan data DNS dasar yang membuat server email berfungsi dengan baik, pindah ke mesin iRedMail, instal paket bind-utils dan tanyakan paket yang baru ditambahkan catatan surat seperti yang disarankan pada kutipan di bawah ini.

Server DNS Samba4 AD DC harus merespons dengan catatan DNS yang ditambahkan pada langkah sebelumnya.

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

Dari mesin Windows, buka jendela Command Prompt dan jalankan perintah nslookup pada data server email di atas.

8. Sebagai prasyarat terakhir, buat akun pengguna baru dengan hak istimewa minimal di Samba4 AD DC dengan nama vmail, pilih kata sandi yang kuat untuk pengguna ini dan pastikan kata sandi untuk pengguna ini tidak pernah kedaluwarsa.

Akun pengguna vmail akan digunakan oleh layanan iRedMail untuk menanyakan database LDAP Samba4 AD DC dan menarik akun email.

Untuk membuat akun vmail, gunakan alat grafis ADUC dari mesin Windows yang tergabung ke ranah dengan alat RSAT diinstal seperti yang diilustrasikan pada tangkapan layar di bawah atau gunakan baris perintah alat samba langsung dari pengontrol domain seperti yang dijelaskan pada topik berikut.

  1. Kelola Direktori Aktif Samba4 dari Baris Perintah Linux

Dalam panduan ini, kami akan menggunakan metode pertama yang disebutkan di atas.

9. Dari sistem iRedMail, uji kemampuan pengguna vmail untuk menanyakan database LDAP Samba4 AD DC dengan mengeluarkan perintah di bawah ini. Hasil yang dikembalikan harus berupa jumlah total entri objek untuk domain Anda seperti yang diilustrasikan pada gambar di bawah.

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

Catatan: Ganti nama domain dan dn dasar LDAP di Samba4 AD ('cn=users,dc=tecmint,dc=lan' ) sesuai.

Langkah 3: Integrasikan Layanan iRedMail ke Samba4 AD DC

10. Sekarang saatnya mengutak-atik layanan iRedMail (Postfix, Dovecot, dan Roundcube) untuk menanyakan Samba4 Domain Controller untuk akun email.

Layanan pertama yang dimodifikasi adalah agen MTA, Postfix. Keluarkan perintah berikut untuk menonaktifkan serangkaian pengaturan MTA, tambahkan nama domain Anda ke domain lokal Postfix dan domain kotak surat dan gunakan agen Dovecot untuk mengirimkan email yang diterima secara lokal ke kotak surat pengguna.

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. Selanjutnya, buat file konfigurasi /etc/postfix/ad_sender_login_maps.cf Postfix dengan editor teks favorit Anda dan tambahkan konfigurasi di bawah ini.

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. Buat /etc/postfix/ad_virtual_mailbox_maps.cf dengan konfigurasi berikut.

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. Buat /etc/postfix/ad_virtual_group_maps.cf dengan konfigurasi di bawah ini.

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

Pada ketiga file konfigurasi, ganti nilai dari server_host, bind_dn, bind_pw dan search_base untuk mencerminkan kebiasaan domain Anda sendiri pengaturan.

14. Selanjutnya, buka file konfigurasi utama Postfix dan cari serta nonaktifkan iRedAPD check_policy_service dan smtpd_end_of_data_restrictions dengan menambahkan komentar # di depan baris berikut.

nano /etc/postfix/main.cf

Komentari baris berikut:

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

15. Sekarang, verifikasi pengikatan Postfix ke Samba AD menggunakan pengguna domain dan grup domain yang ada dengan mengeluarkan serangkaian kueri seperti yang disajikan dalam contoh berikut.

Hasilnya akan serupa seperti yang diilustrasikan pada gambar di bawah.

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

Ganti akun pengguna dan grup AD yang sesuai. Selain itu, pastikan bahwa grup AD yang Anda gunakan memiliki beberapa anggota pengguna AD yang ditugaskan padanya.

16. Pada langkah selanjutnya, modifikasi file konfigurasi Dovecot untuk menanyakan Samba4 AD DC. Buka file /etc/dovecot/dovecot-ldap.conf untuk diedit dan tambahkan baris berikut.

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/

Kotak surat akun Samba4 AD akan disimpan di lokasi /var/vmail/vmail1/domain_anda.tld/domain_anda_pengguna/Maildir/ pada sistem Linux.

17. Pastikan protokol pop3 dan imap diaktifkan di file konfigurasi utama dovecot. Verifikasi apakah plugin kuota dan acl mail juga diaktifkan dengan membuka file /etc/dovecot/dovecot.conf dan periksa apakah nilai-nilai ini ada.

18. Secara opsional, jika Anda ingin menetapkan hard kuota global agar tidak melebihi maksimum penyimpanan 500 MB untuk setiap pengguna domain, tambahkan baris berikut di /etc/dovecot/dovecot. file conf.

quota_rule = *:storage=500M 

19. Terakhir, untuk menerapkan semua perubahan yang dibuat sejauh ini, mulai ulang dan verifikasi status daemon Postfix dan Dovecot dengan mengeluarkan perintah di bawah ini dengan hak akses root.

systemctl restart postfix dovecot
systemctl status postfix dovecot

20. Untuk menguji konfigurasi server email dari baris perintah menggunakan protokol IMAP, gunakan perintah telnet atau netcat seperti yang ditunjukkan pada contoh di bawah.

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

Jika Anda dapat melakukan login IMAP dari baris perintah dengan akun pengguna Samba4 maka server iRedMail tampaknya siap mengirim dan menerima email untuk akun Direktori Aktif.

Pada tutorial selanjutnya akan dibahas bagaimana mengintegrasikan webmail Roundcube dengan Samba4 AD DC dan mengaktifkan Global LDAP Address Book, mengkustomisasi Roudcube, mengakses antarmuka web Roundcube dari browser dan menonaktifkan beberapa layanan iRedMail yang tidak diperlukan.