Open Source

Zimbra Multi Server’ı Ubuntu 20.04’e Kurun (Bölüm 1)

Sırayla yapılması gereken birkaç aşama ile. Benim durumumda, daha sonra kuracağımız bir sunucu özet tablosu oluşturdum. Toplamda 4 sunucu var, aşağıdaki tabloya bakın.

HAYIRsunucuSunucu IP adresiAna bilgisayar adı
1LDAP ve DNS Sunucusu192.168.100.100ldap.kerimkoc.local
2posta kutusu 1192.168.100.101mbox1.kerimkoc.com
3Aktarım/MTA/proxy192.168.100.102mta.kerimkoc.com
4Posta kutusu 2192.168.100.103mbox2.kerimkoc.com

Tablo Planı Zimbra Çoklu Sunucu Kurulumu.

Kullanıcıların daha sonra erişimini kolaylaştırmak için, daha sonra proxy olarak global bir etki alanı ana bilgisayar erişimi oluşturacağım.

Global Access Email Server ==> 192.168.100.102 mail.kerimkoc.com

Böylece kullanıcı, sunucu ana bilgisayar adının adını tek tek bilmek zorunda değildir. Sadece daha sonra erişilecek olan 1 sunucuyu bilin.

Benim durumumda, sunulan hizmete dayalı üç kapsam sunucusu kullanacağım. Bu, Zimbra LDAP, Posta Kutusu ve MTA’dır.

Ubuntu’da Zimbra Çoklu Sunucu Kurulumu Sipariş Edin

Kurulum işlemine başlamadan önce ilk olarak ubuntu 20.04 üzerinde zimbra multi server kurulumu için bir yol haritası hazırlayacağız.

  1. Ek hizmet içeren ZCS LDAP sunucu(lar)ı:
    • DNS, Bind’i kullan
    • NTP,Gerekli sistem saatleri tüm sunucularda senkronize edilir.
  2. ZCS Posta Kutusu sunucu(lar) ı seçenekleri:
    • Zimbra Kaydedici
    • ZCS Posta Kutusu sunucu(lar)ı
    • Zimbra Web Uygulaması
  3. Ek hizmet içeren ZCS MTA sunucu(lar)ı:
    • Zimbra Memcache.
    • Zimbra Proxy’si.
    • AS/AV.

Zimbra LDAP için hazırlık

Adım 1 ila adım 3, kurulacak her sunucu için gerçekleştirilir. Zimbra sunucusunda bir SSH oturumu açın ve aşağıdaki adımları izleyin:

LDAP için /etc/hosts ve Statik IP Adresini Statik olarak ayarlayın

Bu durumda Zimbra LDAP için 192.168.100.100 kullanıyorum.

root@ldap:~# nano /etc/netplan/00-installer-config.yaml
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      dhcp4: no
      addresses:
        - 192.168.100.100/24
      gateway4: 192.168.100.1
      nameservers:
          addresses: [192.168.100.100, 8.8.8.8]
  version: 2

 netplan apply. ve ardından /etc/hosts.conf’u ayarlayın.

root@ldap:~# nano /etc/hosts
127.0.0.1 localhost

192.168.100.100 ldap.kerimkoc.local   ldap
192.168.100.101 mbox1.kerimkoc.com mbox1
192.168.100.102 mta.kerimkoc.com    mta
192.168.100.103 mbox2.kerimkoc.com mbox2

Ana Bilgisayar Adı ve Tarih Saati Ayarlama

Bu, Ubuntu’da ana bilgisayar adını ayarlama komutudur.

hostnamectl set-hostname ldap.kerimkoc.local

Ve sonra saat ve tarihi ayarlayın.

timedatectl set-timezone Europe/Istanbul

Güvenlik duvarını devre dışı bırak

Güvenlik duvarı neden devre dışı bırakılsın? Güvenlik duvarını devre dışı bırakmayı tercih ediyorum çünkü:

  • Sunucular Zone DMZ altındadır. Yönlendirici tarafından üstlenilen güvenlik duvarı rolü, böylece kaynağı azaltabilir.
  • Sunucular arasında meydana gelen açık bağlantı noktalarında ve kapalı iletişim bağlantı noktalarında sorun gidermeyi en aza indirir. Ayrıca selinux Centos/Redhat ve apparmor Ubuntu’da olduğu gibi hizmet güvenliği iç izni ve izin vermeme.
systemctl stop apparmor.service
systemctl disable apparmor.service
systemctl stop ufw.service
systemctl disable ufw.service

NTP Sunucusunu kurun.

LDAP Sunucusunda NTP Sunucusunu ayarlayın. NTP’yi LDAP’ye neden yüklemelisiniz? Bu LDAP sunucusu, Zimbra Çoklu Sunucu üzerinde ilk kez çalıştırılmalıdır.

apt install ntp ntpdate

/etc/ntp.conf dosyasında ntp sunucusunu değiştirin. Sadece yerel alt ağın zaman sunucusunu sorgulamasına izin verin.

restrict 192.0.0.0 mask 255.0.0.0 nomodify notrap

Ve sonra NTP hizmetini yeniden başlatın.

systemctl restart ntp

DNS Bind’i yükleyin

Yerel yetkili için DNS Bind’i kurun.

apt install bind9

adlı .conf’u değiştirin. seçenekler

# nano /etc/bind/named.conf.options

        recursion yes;
        allow-query { 127.0.0.1; 192.0.0.0/8; };
        allow-transfer { none; };
        forwarders { 8.8.8.8; 1.1.1.1; };
        listen-on port 53 { 127.0.0.1; 192.168.100.100; };
        version "not current available";
        querylog yes;

/etc/bind/named.conf.local dosyasına dokunun.

# nano /etc/bind/named.conf.local

zone "kerimkoc.com" {
        type master;
        file "/etc/bind/db.kerimkoc.com";
};

/etc/bind/db.kerimkoc.com dosyasını oluşturun

# nano/etc/bind/db.kerim.koc


$TTL    604800
@       IN      SOA     ns1.kerimkoc.com. root.kerimkoc..com. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@               IN      NS      ns1.kerimkoc.com.
@               IN      A       192.168.100.102
@               IN      MX      0      mail.kerimkoc.com.
ldap            IN      A       192.168.100.100
ns1             IN      A       192.168.100.100
mbox1           IN      A       192.168.100.101
mta             IN      A       192.168.100.102
mbox2           IN      A       192.168.100.103
mail            IN      A       192.168.100.102

Bitirdikten sonra hizmet bağlamayı yeniden başlatın.

root@ldap:/# systemctl restart bind9.service
root@ldap:/# systemctl status bind9.service
● named.service - BIND Domain Name Server
     Loaded: loaded (/lib/systemd/system/named.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-07-28 11:05:28 WIB; 7s ago
       Docs: man:named(8)
   Main PID: 125121 (named)
      Tasks: 8 (limit: 1037)
     Memory: 17.0M
     CGroup: /system.slice/named.service
             └─125121 /usr/sbin/named -f -u bind

Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: configuring command channel from '/etc/bind/rndc.key'
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: command channel listening on ::1#953
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: managed-keys-zone: loaded serial 3
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: zone 0.in-addr.arpa/IN: loaded serial 1
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: zone 127.in-addr.arpa/IN: loaded serial 1
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: zone 255.in-addr.arpa/IN: loaded serial 1
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: zone localhost/IN: loaded serial 2
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: zone kerimkoc.com/IN: loaded serial 2
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: all zones loaded
Jul 28 11:05:28 ldap.kerimkoc.com named[125121]: running

Bu LDAP Sunucusunda, hizmeti durdurun ve devre dışı bırakın systemd-resolved.service. Çünkü rol çözümleyici bind9.service. Bundan sonra /etc/resolv.conf dosyasını yeniden oluşturun

# systemctl stop systemd-resolved.service
# systemctl disable systemd-resolved.service
# rm -rf /etc/resolv.conf
# nano /etc/resolv.conf

nameserver 127.0.0.1
domain kerimkoc.com

127.0.0.1 yanıt formuyla aramayı test edin ve ad sunucusunun düzgün çalıştığından emin olun

root@ldap:/# nslookup ldap.kerimkoc.local
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   ldap.kerimkoc.local
Address: 192.168.100.100

root@ldap:/# nslookup mail.kerimkoc.com
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   mail.kerimkoc.com
Address: 192.168.100.102

root@ldap:/# nslookup mbox1.kerimkoc.com
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   mbox1.kerimkoc.com
Address: 192.168.100.101

root@ldap:/# nslookup mta.kerimkoc.com
Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   mta.kerimkoc.com
Address: 192.168.100.102

Zimbra LDAP’yi yükleyin

İlk önce tarball’ı resmi depodan indirin.

HATIRLAMAK. Bu sunucuda sadece zimbra-ldapservisi kurun.

wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954.tgz
tar -zxvf zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954.tgz
cd zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954
./install.sh

Operations logged to /tmp/install.log.v39fi0HW
Checking for existing installation...
    zimbra-drive...NOT FOUND
    zimbra-imapd...NOT FOUND
    zimbra-patch...NOT FOUND
    zimbra-mta-patch...NOT FOUND
    zimbra-proxy-patch...NOT FOUND
    zimbra-license-tools...NOT FOUND
    zimbra-license-extension...NOT FOUND
    zimbra-network-store...NOT FOUND
    zimbra-network-modules-ng...NOT FOUND
    zimbra-chat...NOT FOUND
    zimbra-talk...NOT FOUND
    zimbra-ldap...NOT FOUND
    zimbra-logger...NOT FOUND
    zimbra-mta...NOT FOUND
    zimbra-dnscache...NOT FOUND
    zimbra-snmp...NOT FOUND
    zimbra-store...NOT FOUND
    zimbra-apache...NOT FOUND
    zimbra-spell...NOT FOUND
    zimbra-convertd...NOT FOUND
    zimbra-memcached...NOT FOUND
    zimbra-proxy...NOT FOUND
    zimbra-archiving...NOT FOUND
    zimbra-core...NOT FOUND


----------------------------------------------------------------------
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE.
SYNACOR, INC. ("SYNACOR") WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT.

License Terms for this Zimbra Collaboration Suite Software:
https://www.zimbra.com/license/zimbra-public-eula-2-6.html
----------------------------------------------------------------------
Do you agree with the terms of the software license agreement? [N] y
Use Zimbra's package repository [Y]

Warning: apt-key output should not be parsed (stdout is not a terminal)
Importing Zimbra GPG key
Configuring package repository
Checking for installable packages

Found zimbra-core (local)
Found zimbra-ldap (local)
Found zimbra-logger (local)
Found zimbra-mta (local)
Found zimbra-dnscache (local)
Found zimbra-snmp (local)
Found zimbra-store (local)
Found zimbra-apache (local)
Found zimbra-spell (local)
Found zimbra-memcached (repo)
Found zimbra-proxy (local)
Found zimbra-drive (repo)
Found zimbra-imapd (local)
Found zimbra-patch (repo)
Found zimbra-mta-patch (repo)
Found zimbra-proxy-patch (repo)

Select the packages to install
Install zimbra-ldap [Y]
Install zimbra-logger [Y] n
Install zimbra-mta [Y] n
Install zimbra-dnscache [N] n
Install zimbra-snmp [Y] n
Install zimbra-store [Y] n
Install zimbra-apache [Y] n
Install zimbra-spell [Y] n
Install zimbra-memcached [Y] n
Install zimbra-proxy [Y] n
Checking required space for zimbra-core

Installing:
    zimbra-core
    zimbra-ldap

The system will be modified.  Continue? [N]
Exit? [N] n
The system will be modified.  Continue? [N] y
Beginning Installation - see /tmp/install.log.v39fi0HW for details...
...
...

Running Post Installation Configuration:
Operations logged to /tmp/zmsetup.20220410-123639.log
Installing LDAP configuration database...done.
Setting defaults...

DNS ERROR resolving MX for ldap.kerimkoc.com
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes]
Create domain: [ldap.kerimkoc.com] kerimkoc.com
done.
Checking for port conflicts

Main menu

   1) Common Configuration:
   2) zimbra-ldap:                             Enabled
   s) Save config to file
   x) Expand menu
   q) Quit

*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) 1


Common configuration

   1) Hostname:                                ldap.kerimkoc.com
   2) Ldap master host:                        ldap.kerimkoc.com
   3) Ldap port:                               389
   4) Ldap Admin password:                     set
   5) Store ephemeral attributes outside Ldap: no
   6) Secure interprocess communications:      yes
   7) TimeZone:                                Europe/Istanbul
   8) IP Mode:                                 ipv4
   9) Default SSL digest:                      sha256

Select, or 'r' for previous menu [r] r

Main menu

   1) Common Configuration:
   2) zimbra-ldap:                             Enabled
   s) Save config to file
   x) Expand menu
   q) Quit

*** CONFIGURATION COMPLETE - press 'a' to apply
Select from menu, or press 'a' to apply config (? - help) a
Save configuration data to a file? [Yes]
Save config in file: [/opt/zimbra/config.12512]
...
...

Configuration complete - press return to exit

Zimbra ldap kurulumu tamamlandıktan sonra. Durumu kontrol et

zimbra@ldap:~$ zmcontrol status
Host ldap.kerimkoc.com
        ldap                    Running
        stats                   Running
        zmconfigd               Running

Muhammed Kerim Koç

1996 yılında Giresun Şebinkarahisarda dünyaya geldim. İlk ve orta öğretimi Şebinkarahisarda tamamladım. Liseyi Şebinkarahisar Anadolu Teknik ve Endüstri Meslek Lisesinde bitirdim. Üniversite için de Şebinkarahisar Teknik Bilimler Meslek Yüksek Okulunda Bilgisayar programcılığını okudum. Üniversite stajı için gelmiş olduğum özel bir firmada işe başladım. 5,5 yıl bu firmadan çalıştıktan sonra farklı bir sektör olan inşaat sektöründe Bilgi teknolojileri Uzmanı olarak 8 ay çalıştım. Daha sonra özel bir şirkette Sistem Network Sorumlusu olarak 4 ay çalıştıktan sonra proje sonlandırılmasından dolayı işten ayrıldım. Tekrar dan 5.5 yıl çalışmış olduğum firmaya Sistem ve Network Yöneticisi olarak geri döndüm ve çalışmaya başladım. Kendimi geliştirmek için Bilge Adam Akademi den Sistem Uzmanlığı eğitimi aldım. Sanallaştırma ve Ağ tarafında kendimi sürekli olarak geliştiriyorum.

İlgili Makaleler

Başa dön tuşu