Zimbra Mail Server Kurulumu

CentOS üzerine Zimbra Mail 8.8.15 Kurulumu

Bu makalede CentOS 7.6 üzerinde Zimbra Mail Server 8.8.15 kurulumunu anlatacağız. Kısaca bahsetmek gerekirse Zimbra Mail Server ihtiyacımızı karşılayacak Microsoft Exchange Server veya Lotus Notes alternatifi, Linux üzerinde çalışan kararlı ve çok başarılı, açık kaynak kod bir MTA (mail transfer agent) yazılımıdır. İki farklı dağıtımı olan Zimbra’nın ücretli olanı Zimbra Collaboration Network Edition, diğeri ise ücretsiz olan kurulumunu yapacağımız Zimbra Collaboration Open Source dağıtımıdır.

Zimbra Mail Server

Zimbra masaüstü ve mobil arayüzleri ile maillerinize kesintisiz bir şekilde erişebilir, görevlerinizi, takviminizi, adres defterinizi, paylaşımlı dosyalarınızı bu platformlar üzerinden yönetebilirsiniz.

Zimbra senkronizasyon ile yeni gelen bir postayı bilgisayarınızda okuduğunuzda, mailinizin kurulu olduğu diğer cihazlarınızda da okunmuş olduğunu görürsünüz. Veyahut iş yerinden göndermiş olduğunuz bir postaya evdeki cihazınızdan baktığınızda gönderilmiş öğeler kutusunda görebilirsiniz. Gelen postalarınız auto sycn özelliği ile direk gelen kutunuzda görünmektedir.

Zimbra ile ajandanızı diğer iş arkadaşlarınız ile paylaşabilir, toplantı ve organizasyonlarda ekip arkadaşlarınız ile etkileşim halinde olabilirsiniz.

Zimbra’da bir randevu oluşturabilir ve bu randevunuza açılır hatırlatıcı belirleyebilirsiniz.

Zimbra’da, zorunlu yazım denetimini ayarlayabilir, her e-posta gönderilmeden önce yazım hatalarını kontrol edebilirsiniz.

Gmail’deki takviminizi Zimbra’ya senkronize edebilirsiniz. Bu sayede takviminizde yapacağınız herhangi bir değişiklik, yeni etkinlikler, etkinliklerde yapılan güncellemeler ve silinmiş etkinlikler dahil olmak üzere tüm değişiklikler diğerine senkronize edilir.

Ek modüller başarıyla sisteme dahil edilebilir. Zimbra server, farklı dağıtım listeleri ve yüksek kapasitedeki eposta kutuları oluşturabilir. Ayrıca verimli bir ortak çalışma platformu oluşturabilmektedir. Zimbra e-mail,  grup takvimi, paylaşılmış görevler, web üzerinden döküman yönetimi gibi özelliklere sahiptir.

Zimbra Mail Sunucusu mail, takvim, adres defteri, dosya paylaşımı, web client, mobil client ve üçüncü parti yazılımlarla tam entegrasyon gibi bir çok olanak sağlar.

Kuruluma başlamadan önce;

CentOS 7.6 kurulum aşamalarını buradan takip edebilirsiniz.

Zimbra Mail Sever 8.8.15 GA kurulum dosyasını buradan indirebilirsiniz.

Dosyayı sunucuya çekeceğimiz için indirmeden devam ediyoruz, download linkini görebilmemiz açısından yukarıdaki link bizim için önemli, ayrıca Ubuntu içinde farklı bir link mevcut. CentOS ve Ubuntu dışında RHEL ve SUSE üzerine de Zimbra Mail kurulumu yapabilirsiniz. Centos 7.6 ve Zimbra kurulumu ile ilgili bazı dikkat edilmesi gereken noktalar var, onlara da yeri geldikçe değineceğim.

Kuruluma geçmeden önce lab ortamındaki alt yapıdan biraz bahsetmek istiyorum. Aşağıdaki resimde görüldüğü gibi domain yapısı altında çalışacağız fakat çeşitliliği arttırmak adına farklı bir yapılandırma tasarladım. Tüm sistemi tek bir sanal ortam yerine 2 farklı sanal ortam da kurarak gerçeğe yakın karmaşık bir sistem olmasını istedim.

Zimbra Mail Server Domain yapısı

Bir tarafta Hyper-v üzerinde Windows Server 2012 R2 ile “Active Directory / Domain Controller” ve “DNS” rolü kurulu bir sunucumuz var domain ismi “soray.local” ve sunucu ip adresi “192.168.10.101”, diğer tarafta Windows 10 işletim sistemli notebook üzerinde vmware wspro 15 ve üzerinde Zimbra Server kurulumu için CentOS 7.6 minimal kurulu. sunucunun hostname’i “mail.soray.local” ip adresi “192.168.10.121” dir.

Burada dikkat edilmesi gereken; daha önce vmware üzerinde CentOS sanal makine yapılandırması yapmıştık ama standalone bir sunucu olarak tasarlamıştık. Zimbra için bir kaç değişiklik yapacağız ilgili ekran paylaşımlarını yaparak devam ediyorum.

daha vmvare yapılandırmasında ağ bağlantı tipini NAT seçiyorduk bu sefer mevcut ağa izole olmasını istemiyoruz, ağdaki “Domain Server” ve “DNS Server” görmesini istediğimiz için “bridged” modu seçiyoruz.

Zİmbra Mail Server zaman ayarları
Tarih / Zaman Ayarları;

CentOS üzerine mail server kurulumu yapacağımız için saat ve tarih artık bizim için önemli “İstanbul” seçerek saatimizi kontrol edip devam ediyoruz

Zİmbra Mail Server ağ ayarları
Ağ ve Sunucu Ayarları;

Ethernet aktif edildiğinde görüldüğü gibi mevcut ağımızdan 27 li otomatik bir IP aldı, birazdan manuel olarak yapılandırıp 121 IP’si vereceğiz. Birde en önemlisi Hostname; domain adresimizin başına mail ekleyerek belirleyeceğiz, yukarıdaki alt yapı şemasında etki alanımızı “soray.local” olarak belirlemiştik ve mail adresimizi de buna bağlı olarak “mail.soray.local” olarak belirleyerek “Configure” sekmesiyle IP network ayarlarımızı yapılandıralım.

Zİmbra Mail Server Ethernet IPv4 yapılandırması

IP olarak 192.168.10.121 ve Ağ geçidini de 192.168.10.1 olarak tanımladım, Ağ maskesi /24 olarak tanımladık, başlı başına bir konu olduğu için üzerinde durmuyorum sadece 255.255.255.0’a karşılık geldiğini bilin yeter, dilerseniz Netmask’ı 255.255.255.0 olarak da tanımlaya bilirsiniz. DNS tanımlaması yapmıyorum buraya dikkat edin neden girmediğimi daha sonra anlatacağım.

Son hali böyle olmalı, ancak dikkat ettiyseniz DNS’i gördünüz 8.8.8.8 görünüyor, Additional olarak DNS girseydik bile 3. sıraya alacaktı, bizim DNS sorgulamamızı ilk olarak “Google”a yapacaktı PTR kaydımız olmadığı için yanıt gelmeyecek ve mail sunucumuza ulaşamayacaktık. Peki neden Google adresleri çıkıyor ve neden düzeltemiyoruz ? Aslında düzeltiriz ama notebook domaine dahil olması gerek yani DNS’i 192.168.10.101 tanımlanması gerek fakat ben dahil etmek istemiyorum. Vmware’de bridged modda çalıştığımız için notebook’un fiziksel ağını kullanıyor ve bu sebepten onun DNS’lerini otomatik çekiyor. Bunu Centos tarafında çözeceğiz diyerek devam ediyorum.

Zİmbra Mail Server disk yapılandırması
Disk Yapılandırma;

daha önce disk yapılandırma ekranında “Automatically configure partitioning” seçeneğini seçerek diskimizi otomatik yapılandırmıştık, şimdi ise 20 GiB olarak tanımladığımız sanal diskimizi “I will configure partitioning” seçeneği ile manuel yapılandıracağız.

Zİmbra Mail Server disk yapılandırma partition shema

LVM konusuna sıfırdan kurulum yaptığımız için değinmeden geçiyorum, LVM seçili iken “+” butonuna tıklayalım

Zİmbra Mail Server manuel disk yapılandırma

20 GiB’lık diski “/boot” 476 MiB, “swap” 1945.5 MiB ve “/” kurulum yapacağımız alanı 17,63 GiB olarak belirleyip Done diyoruz

Özet ekranı geldiğinde kontrollerimizi yaptıktan sonra değişiklikleri onaylamak için “Accept Changes” diyoruz

Zİmbra Mail Server installation
CentOS kurulumuna geçebiliriz

root olarak belirlemiş olduğumuz şifre ile giriş yapalım, ilk etapta

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

komutu ile CentOS sunucumuzun EPEL (Extra Packages for Enterprise Linux) yum deposunu güncelleyelim.

yum repolist

depoyu görüntülediğimizde epeli görebiliyoruz

Zİmbra Mail Server yum install epel-release -y

yum install epel-release -y

komutu ile epelin zaten yüklü olduğunu teyit ederek devam ediyorum

sudo yum update -y && sudo shutdown -r now

sunucumu güncelliyorum ve güncelleme sonunda kapatıp hemen reboot etmesini istiyorum.

sunucum reboot olduktan sonra,

yum -y install sudo nano gmp glibic limidn make sysstat perl-core unzip perl nc ntp libtool-ltdl wget

komutu ile gerekli paketleri yüklüyoruz.

CentOS üzerinde default olarak gelen postfix MTA (Mail transfer Agent ) servisi bulunmaktadır. Zimbra Mail Server yükleme aşamasında kendisine ait bir MTA servisi olduğundan, servislerin çakışmaması için Centos üzerindeki MTA’yı durdurup kaldırmamız gerekiyor.

Zİmbra Mail Server service postfix status

service postfix status

komutu ile servisin aktif olduğunu görüyoruz

Zİmbra Mail Server systemctl stop postfix, systemctl disable postfix, yum remove postfix

systemctl stop postfix
systemctl disable postfix
yum remove postfix

komutları ile servisi durdurup, kapattıktan sonra tamamen kaldırıyoruz, kaldırma işlemini onaylamak için “Y” diyerek devam ediyoruz

echo “192.168.1.20 mail.systembox.local mail” >> /etc/hosts

komutu ile bir editör kullanmadan Zimbra Sunucumuz için direk olarak bir hostname ve ip adresi atamış oluyoruz

editleme yapmak yada girdiyi kontrol etmek için “vi” veya “nano” gibi editörler kullanabiliriz

Zİmbra Mail Server nano /etc/hosts

nano /etc/hosts

komutu ile girmiş olduğumuz hostname ve ip adresini görüyoruz

nano /etc/hostname

komutu ile daha önce vermiş olduğum hostname’i de kontrol etmiş oluyorum

Mail Sunucu için A kaydı ve MX kaydı oluşturma;

şimdi sıra geldi dns server tarafında mail sunucumuz için bir A kaydı ve mail adresimizin çözümlenmesi için MX kaydı oluşturmaya. bu işlemi herhangi bir hosting panelinden yapıyorsanız  “Domain Select Record Type” kısmına eklememiz gerekiyor. ancak burada domain altında şirket tipi bir yapıdan bahsediyoruz, lakin domainden bağımsız DMZ network’te direk dışa açık Standalone bir sunucu yapılandırmasını da ilerideki günlerde makale olarak sizlerle paylaşmayı düşünüyorum.

  • A Kaydı: Enter Name: mail Enter IP Address: 192.168.10.121
  • MX Kaydı: Enter Hostname: mail.soray.local Enter Priority: 1

Server 2012 R2 DNS sunucumuzda A ve MX kayıtları böyle açılmış olmalıdır

yeni A kaydı için “Host” bölümüne mail yazıp “Ip adress” bölümüne de mail sunucumuzun Ip’sini yazarak kaydı tamamlayalım

yeni MX kaydı için “browse” kısmından DNS sunucumuzu oradan ekti alanımızı ve oradan da az önce açtığımız “mail” adındaki A kaydımızı gösteriyoruz FQDN değeri mail.soray.local oldu alt kısımdaki server öncelik değerini 1 yaparak MX kaydını da tamamlıyoruz. yani birisi dns servera browserdan mail.soray.local adını sorduğunda arka planda 192.168.10.121 IP’sindeki cihaza git demiş oluyoruz.

şimdi açtığımız kayıtları kontrol edelim, gireceğimiz komutlar çalışmayabilir, bunun için ilk önce aşağıdaki paketi yüklememiz gerekiyor

Zİmbra Mail Server sudo yum install bind-utils

sudo yum install bind-utils

komutu girdikten sonra yükleme için “Y” diyerek onay verelim

Zİmbra Mail Server DNS sunucuları

dig -t A mail.soray.local

komutu ile A kaydı kontrolü başarısız oldu, çünkü daha önce bahsettiğim gibi domaine dahil olmayan notebook’un DNS’lerinden kaynaklanıyor. sonradan DNS sunucumuzun IP sini tanımlasak dahi yine 3. sıraya alarak çözümlemeyi ilk önce Google DNS’lerine sorgulattığından PTR kaydının olmaması cevap alamayışımıza sebep oluyor. doğal olarak Google bizi tanımıyor. ya en başta notebook DNS lerini domaine dahil ederek kurulum esnasında DNS’leri 192.168.10.101 olarak almasını sağlayacaktık ki biz bunu tercih etmedik, o zaman başka bir yolla bu sorunu düzeltmemiz gerekiyor.

nmcli d

komutu bize kullandığımız sanal olan ağ kartımızın adını gösteriyor, bu isimler farklı olabilir, ethx eth0 gibi bende “ens33” olarak görünüyor

vi /etc/sysconfig/network-scripts/ifcfg-ens33

komutu ile Ethernet Ağ yapılandırmamızı görüntülüyoruz

burada “insert” tuşuna basarak “GATEWAY” in altına “DNS1” olarak “192.168.10.101” ipsini veriyorum, “Esc” ve “:x” diyerek kayıt ettikten sonra “enter”la çıkıyorum

systemctl restart network

ağı tekrar başlatıyorum

vi /etc/resolv.conf

çözümleme için ağ yönetim panelini açıyorum

notebook’un fiziksel kartından gelen otomatik dns’leri gördük ve bunları silerek “Ctrl+o” ile kayıt ediyor “Enter” ile onayladıktan sonra “Ctrl+x” ile çıkıyoruz. DNS sorunu çözüldü ancak bir sorun daha var sistemi baştan başlatır veya network’u resetlersek yapılandırma eski haline geri dönecek tekrar Google DNS’lerine yönlenecektir. Bunun için;

chattr +i /etc/resolv.conf

komutu ile dosyayı kilitliyoruz ve üzerinde bir daha değişiklik yapılmasına izin vermiyoruz

böylelikle oluşturduğumuz A ve MX kayıtları başarılı bir şekilde çalışıyor, cevap kısmından da anlaşılacağı gibi DNS serverımız isteklere cevap verebiliyor.

Selinux güvenlik mekanizması;

SELinux (Security-Enhanced Linux) Linux’da zorunlu erişim denetimi yapan bir güvenlik mekanizmasıdır. SELinux’u permissive moda çekerek devam edelim.

Zİmbra Mail Server sestatus

sestatus

enabled olduğunu görüyoruz

sed -i ‘s/SELINUX=enforcing/SELINUX=permissive/g’ /etc/selinux/config

komutu ile “permissive” moda almış olduk

nano /etc/sysconfig/selinux

komutu ile tamamen devre dışı bırakabiliriz

“permessive” yazan yeri silip “disabled” yazarak tamamen devre dışı da bırakabiliriz ben bu şekilde bırakıyorum, eğer yukarıda bir değişiklik yapıldıysa

reboot

komutu ile yapılan işlemin aktif olması için yeniden başlatmak gerekiyor, sistem yeniden başlayınca Firewall’ı ya devre dışı bırakabiliriz yada Zimbra Mail Serverımızın kullandığı tüm portlara kural yazabilirsiniz. Ben portlara kural yazacağım ancak kapat mak isteyenler;

systemctl stop firewalld

systemctl disable firewalld

komutlarıyla firewall’ı

systemctl stop iptables

systemctl disable iptables

komutlarıyla iptables’ı kapatabilirler

firewall-cmd –permanent –add-port={25,80,110,143,389,443,465,587, 993,995,5222,5223,7025,7071,7073,9071}/tcp

firewall-cmd –reload

Zİmbra Mail Server firewall-cmd --add-service={http,https,smtp,smtps,imap,imaps, pop3,pop3s} --permanent

komutuyla port bazlı izinleri yazarak, firewall’ı tekrar başlattık, diğer bir seçenek servis bazlıda yada tek tek girmek istersek örnek vermek açısından,

firewall-cmd –add-service={http,https,smtp,smtps,imap,imaps, pop3,pop3s} –permanent

firewall-cmd –add-port 7071/tcp –permanent

firewall-cmd -add-port 8443/tcp –permanent

komutlarıyla da izin vereceğimiz servis ve portları yazabiliriz, ancak işlem bitiminde tekrar “reload” etmeyi unutmayın !

Zİmbra Mail Server firewall-cmd --list-all

firewall-cmd –list-all

komutu ile girmiş olduğumuz kuralları görebiliriz, “services”, “ports” olarak ayrı ayrı görebiliyoruz, yine sonradan tek girdiğimiz portları en sona eklediğini görüyoruz. her şey hazır sorun yok gibi gözüküyor 🙂

şimdi kuruluma geçelim, ufkumuzun genişlemesi açısından daha önce DNS leri kaydetmemiştim sistemde bir sorun var aslında, bakalım bu sorunun üstesinden nasıl geleceğiz, yani notebookta değiştiremedik, centos tarafında da değiştirmeyi unuttuk ve kuruluma başladık bakalım Zimbra tarafında nasıl değiştireceğiz, sorun bu ya 😀 ya bu işi çözeceğiz yada tüm sistemi baştan tekrar kuracağız, burada amacımız ileri, ileri heh tamam kurulum bitti demekten ziyade karşımıza çıkan ve çıkacak sorunlar neler olabilir ve üstesinden nasıl gelinebilir olmalı.

mkdir zcsinstall

cd zcsinstall

zcsinstall adında bir klasör açtım ve içerisine girdimwget https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_3829.

RHEL7_64.20190718141144.tgz

dosyayı bu klasör içerisine çektim

tar zxvf zcs-*.tgz

sıkıştırılmış dosyayı açtım

cd zcs-*

açılan dosyanın oluşturduğu klasörün içerisine girdim

./install.sh –platform-override

komutuyla kurulumu başlatmış oldum

tüm sorulara gösterdiğim doğrultuda cevap verin ve devam edin

kurulum tamamlanırken işte bahsetmiş olduğum sorun DNS sorunu yaşayanlar buraya dikkat etsin, DNS’i en başta cihaz üzerinde yada Centos’ta düzeltenler sorun yaşamayacaktır, ancak neyin ne olduğunu bilmek her zaman iyidir. sorun olmayanlar “Y” ve ardından hostname sorusuna “soray.local” derse sorunsuz devam edeceklerdir. o zaman gelelim sorunu düzeltmeye.

A ve MX sorgularına “N” diyerek devam edelim

bu ana menü zimbra’nın ince ve kalın ayarlarının yapıldığı yerdir, burayı lab ortamında geniş çaplı incelemenizi tavsiye ederim, Menü’den “5” yani “zimbra-dnscache” seçelim

işte başımızın belası DNS ler 🙂 burada “Master DNS IP adress” için “2”yi seçelim ve DNS serverımızın ipsi “192.168.10.101” girelim ve “enter” diyerek DNS tanımlama işlemini tamamlayalım

gördüğünüz gibi DNS sorununu ortadan kaldırmış olduk “r” ile Ana Menüye dönelim

Ana Menüden “7” yani “zimbra-store” giriş yapalım

burada “4” yani “Admin Password” giriş yapalım

zimbra yönetim paneli için bir yönetici parolası belirleyelim ve “enter” diyerek yeni şifremizi kayıt edelim

yönergeleri sırasıyla takip edelim

burada “enter” diyerek kurulumu tamamlayalım

su – zimbra

zmcontrol status

komutlarıyla zimbra servislerini kontrol ettik, kurulum ve öncesi yapılandırmanın başarılı olması sebebi ile tüm servislerin “Running” olduğunu görüyoruz

Zİmbra Mail Server Admin girişi

bu panele domaine dahil olmayan notebook’tan yani bir nevi dışarıdan “https://192.168.10.121:7071/zimbraAdmin” adresi ile ulaştım

Zİmbra Mail Server yönetim paneli

Hoş geldin Zimbra 🙂 Sağ üst köşede “Hizmet: Çalışıyor” tüm servislerin sağlıklı bir şekilde çalıştığı anlamına geliyor

Zİmbra Mail Server Admin Console

bu ekran ise domain üzerinde çalışan sanal bir işletim sistemi, görüldüğü gibi artık Zimbra Mail Serverıma “https://mail.soray.local” adresi ile ulaşabiliyorum.

bir sonraki makalede görüşmek üzere..