İçerikleri sosyal medya üzerinden paylaşarak daha fazla kişiye ulaşmasına yardımcı olabilirsiniz.




Fırat Boyan 23.11.2015 9

Exchange Server 2016 Kurulum ve Yapılandırma

Bu makalemde sizlere Microsoft'un Mail sunucu ürününlerinden birisi olan Exchange Server 2016 kurulumu ve tüm yapılandırmalarından bahsediyor olacağım.

Makalem şu aşamalardan oluşacak;
1- Exchange Server 2016 kurulumu için ön gereksinimler.
2- Exchange Server 2016 kurulumu için ön yapılandırma ayarlarının yapılması.
3- Exchange Server 2016 kurulumu.
4- Exchange Server 2016 kurulumu sonrası temel yapılandırma ayarlarının yapılması.
5- Exchange Server DNS yapılandırma ayarları.
6- Exchange Server için Firewall yapılandırmaları.

Gereksinimler

Exchange Server 2016 kurulum işlemine geçmeden önce kurulum için gerekli olan sistem gereksinimlerine ve ön kurulumlarına göz atalım. Ancak öncesinde şunu özellikle belirtmeliyim ki bu makaledeki kurulum işlemleri, Exchange Server 2016 RTM sürmü ile yapılacaktır. Aradan geçen zamanda piyasaya sürülecek yeni CU versiyonlarına göre gereksinimler ve kurulum yöntemleri noktasında değişiklikler olma ihtimali vardır. Piyasaya sürülen Exchange Server Cumulative Update'lerini Exchange Server build numbers and release dates sayfasından takip edebilirsiniz.

1- Donanım Gereksimleri

Donanım Gereksinim
RAM Bellek • Mailbox Server Role için en az 8 GB.
• Edge Transport Role için en az 4 GB.
Disk • Exchange Server'ın kurulacağı Disk alanında en az 30 GB boş alan.

2- Active Directory Gereksinimleri
Exchange Organizasyonunuzu ilk defa kuruyorsanız, ortamınızdaki Domain Controller'ların aşağıdaki gereksinimleri karşılıyor olduğundan emin olmalısınız. Aşağıdaki bu tablo, Exchange Server'ın iletişim kuracağı Active Directory Domain Controller için desteklenen Windows Server versiyonlarını, Forest Functional Level gereksinimini ve Exchange Server'ın kurulacağı Cumulative Update (CU) versiyonunun hangi Windows Server versiyonlarını desteklediğini göstermektedir.

DİKKAT!: Mevcut Functional Level'ınız, Exchange Server 2016'nın gereksinim duyduğu en düşük seviyeli Functional Level'dan daha düşükse (ör. Windows Server 2008), Functional Level yükseltme işleminden önce mutlaka mevcut Functional Level'ınızın, ortamınızdaki uygulamalarla bir bağımlılığının olup olmadığını kontrol etmelisiniz!

Bileşen Gereksinim
Domain Controller • Windows Server 2022 Standart veya Datacenter
• Windows Server 2019 Standart veya Datacenter
• Windows Server 2016 Standart veya Datacenter 
• Windows Server 2012 R2 Standart veya Datacenter
• Windows Server 2012 Standart veya Datacenter
• Windows Server 2008 R2 Standart veya Enterprise
Forest Functional Level  • Windows Server 2008 R2 veya üstü

3- Mevcut Yapıya Kurulum (Co-Existance) Gereksinimleri
Ek olarak, mevcut ortamınızda kurulu alt versiyon Exchange Server'lar bulunuyorsa ve Exchange Server 2016'yı mevcut yapınıza ek olarak kuacaksanız, kurulum yapılacak olan yeni Exchange Server 2016 için mevcut Exchange Server organizasyonunuzun aşağıdaki tabloya göre, Domain Controller ortamınızının da yukarıdaki tabloya göre kurulu olduğundna emin olun.

Mevcut Yapı Mevcut Yapıya Kurulum
Exchange Server 2007 ve daha öncesi Desktenlenmiyor.
Exchange Server 2010 Exchange Server 2010 SP3 Rollup 11 veya daha üstü (Edge Transport dahil)
Exchange Server 2013 Exchange Server 2013 CU10 veya daha üstü (Edge Transport dahil)
Exchange Server 2010 ve 2013 karma yapı  • Exchange Server 2010 SP3 Rollup 11 veya daha üstü (Edge Transport dahil)
• Exchange Server 2013 CU10 veya daha üstü (Edge Transport Dahil)

Güncel bilgilere Microsoft'un Exchange Server supportability matrix Sayfasından erişebilirsiniz.

Domain Controller (DC) üzerinde Exchange Server Kurulumu

Danışmanlık verdiğim müşteri ortamlarında nadir de olsa gerek kaynak yetersizliği, gerekse de sunucu lisansından kaçınmak için Exchange Server kurulum işlemlerinin Domain Controller üzerinde yapıldığına şahit oluyorum. Bu, her ne kadar donamım kaynağı ve lisans kazanımları gibi görülüp, değerlendirilse de, çok ciddi sorunları da beraberinde getirmektedir. Bu sebeple, Exchange Server kurulum işleminin Domain Controller (DC) üzerinde gerçekleştirmenin kesinlikle tavsiye edilmediğini belirtmek isterim. Teknik olarak neden önerilmediğini daha detaylı şekilde açıklayayım.

1- Kaynak Yönetimi ve Performans

1.1- CPU ve Bellek Kullanımı

Domain Controller: Active Directory veritabanını yönetir, LDAP isteklerini işler ve Kerberos kimlik doğrulaması yapar. Bu işlemler yoğun CPU ve bellek kullanımı gerektirir.

Exchange Server: E-posta aktarımı, posta kutusu veri tabanı yönetimi, içerik indeksleme ve istemci erişim hizmetlerini sağlar. Bu işlemler de yüksek düzeyde CPU ve bellek tüketir. İki uygulamanın aynı sunucuda çalışması, CPU ve bellek için yoğun satürasyona yol açar ve her iki hizmetin de performansını olumsuz etkiler.

1.2- Disk I/O:

Domain Controller: Active Directory veritabanı ve SYSVOL dizini için sürekli disk I/O gerektirir.

Exchange Server: Posta kutusu Database'ler ve Log dosyaları için de yüksek miktarda disk I/O gerektirir. Her iki uygulamanın aynı fiziksel diski kullanması, disk I/O darboğazlarına neden olabilir. Database'leri barındıracak olan Disklerin ayrılması, I/O performansını artırabilir ve I/O darboğazlarını azaltabilir. Ancak, CPU ve bellek kullanımı açısından iki yoğun kaynak gerektiren hizmetin (Exchange ve DC) aynı sunucuda çalışmasının getirdiği yük devam eder.

Resource Management and Performance

2- Güvenlik Riski

2.1- Saldırı Yüzeyi

Domain Controller: Ağın kalbi olan kimlik doğrulama ve yetkilendirme hizmetlerini sağlar. Exchange Server üzerinde bir güvenlik açığı bulunması durumunda, saldırganların Domain Controller'a erişim kazanma riski vardır. Bu nedenle, Exchange Server'ın bir DC üzerinde çalıştırılması, tüm Active Directory ortamının güvenliğini tehlikeye atar.

Exchange Server: Genellikle Internet'e açık olan ve Internet'ten gelebilecek tehditlere açık bir sunucudur ve çeşitli saldırı vektörlerine açıktır.

Security Risks

3- Yönetim ve Bakım Zorlukları

Exchange Server Güncellemeleri: Exchange Server için uygulanan güncellemeler ve yamalar, sunucunun yeniden başlatılmasını gerektirebilir ve bu durum Domain Controller hizmetlerini geçici olarak devre dışı bırakabilir.

Domain Controller Güncellemeleri: Domain Controller üzerinde yapılan güncellemeler, Active Directory hizmetlerinin geçici olarak durmasına neden olabilir ve bu durum Exchange Server'ın performansını etkileyebilir. Her iki hizmetin aynı sunucuda olması, bakım işlemlerinin daha karmaşık ve riskli hale gelmesine neden olur.

Management and Maintenance Challenges

4- Microsoft Desteği
Microsoft, Exchange Server'ın bir Domain Controller üzerinde çalıştırılmasını resmi olarak desteklemez. Desteklenmeyen bir yapılandırmada karşılaşılan sorunlar, Microsoft'un sunduğu destek hizmetlerini sınırlayabilir veya devre dışı bırakabilir.

Microsoft Support

5- Active Directory Replikasyonu ve Gecikmeleri

5.1- Replikasyonun Önemi

Veri Tutarlılığı: Active Directory (AD), Network üzerindeki tüm Domain Controller'lar arasında veri tutarlılığını sağlamak için düzenli olarak verileri replikasyon (çoğaltma) yapar. Bu, kullanıcı hesapları, grup üyelikleri, politika ayarları ve diğer kritik verilerin her DC'de güncel kalmasını sağlar.

Güvenilirlik ve Yedeklilik: Replikasyon, AD'nin güvenilirliğini ve yedekliliğini artırır. Bir DC'nin arızalanması durumunda, diğer DC'ler veri erişimini sürdürebilir.

5.2- Replikasyon Türleri:

Intrasite Replikasyonu: Aynı site içindeki DC'ler arasında gerçekleşir ve genellikle hızlıdır. Kullanıcı ve kaynakların aynı fiziksel ağda bulunması nedeniyle düşük gecikme sürelerine sahiptir.

Intersite Replikasyonu: Farklı sitelerdeki DC'ler arasında gerçekleşir ve genellikle daha yavaş ve daha az sık yapılır. WAN bağlantıları gibi daha yavaş Network bağlantıları kullanılır ve bu nedenle replikasyon daha fazla gecikmeye neden olabilir.

Active Directory replication and latencies

6- Exchange Server ve Active Directory Etkileşimi

6.1- Exchange Server'ın AD Kullanımı

Kimlik Doğrulama: Exchange Server, kullanıcıların kimlik doğrulamasını sağlamak için AD'ye sık sık istek gönderir. Kullanıcıların posta kutularına erişimi ve izin denetimleri için kimlik doğrulama gereklidir.

Adres Book ve Glolbal Address List (GAL): Exchange Server, Global Adres List (GAL) ve diğer Address Book'ları sağlamak için Active Directory verilerini kullanır.

Organizasyonel Bilgi: Kullanıcıların organizasyonel bilgileri ve grup üyelikleri gibi veriler için Active Directory'e bağımlıdır.

Active Directory and Exchange Server Interaction

6.2- Replikasyon Trafiği ve Gecikmeler

Replikasyon Trafiği: DC üzerinde Exchange Server çalıştırıldığında, DC'nin kendi replikasyon trafiği ve Exchange Server'ın AD ile ilgili sorguları birleşir. Bu, DC'nin Network trafiğini ve kaynak kullanımını artırır.

Gecikmeler: AD replikasyon gecikmeleri, Exchange Server'ın en güncel verilere erişimini etkileyebilir. Özellikle kullanıcı kimlik doğrulama ve izin denetimleri gibi kritik işlemler gecikebilir. Örneğin, bir kullanıcı parolasını değiştirdiğinde, bu değişiklik diğer DC'lere replikasyon yapılana kadar Exchange Server bu değişikliği göremeyebilir.

Performans Etkisi: Replikasyon trafiği nedeniyle DC'nin CPU ve bellek kaynakları yoğun bir şekilde kullanılır. Exchange Server'ın da aynı kaynaklara ihtiyaç duyması, performansın düşmesine neden olabilir.

Replication Traffic and latencies

Özetle, Exchange Server'ın bir Domain Controller üzerinde kurulması, hem performans hem de güvenlik açısından ciddi riskler taşır. Kaynak rekabeti, güvenlik açıkları ve yönetim zorlukları gibi nedenlerle, Exchange Server'ın ayrı bir üye sunucu (member server) üzerinde çalıştırılması en iyi uygulamalardan biridir. Bu, hizmetlerin daha kararlı ve güvenli olmasını sağlar.

Ön Gereksinimlerini Hazırlanması

Yukarıdaki tüm gereksinimleri yerine getirildikten sonra sıra, Exchange Server 2016 kurulum için gerekli olan diğer ön hazırlıkları yapmaya geldi.

1- İlk etapta Remote Tools Administration Pack kurulumu için PowerShell Console'unu "Run as Administrator" ile açarak, aşağıdaki komut yazıyorum. Bu işlemler için kullanacağınız Active Directory hesabının Enterprise AdminDomain Admin ve Schema Admin gruplarına üye olması gerekmektedir.

Install-windowsFeature RSAT-ADDS

2- Komutu yazılıp çalıştırıldıktan sonra, aynı PowerShell penceresi üzerinden aşağıdaki komut yazılır.

NOT: Bu işlem sırasında Inernet bağlantınızı tekrar kontrol etlemenizi öneririm. Çünkü gerekli bazı roller Internet'ten indirilmektedir.

Install-WindowsFeature AS-HTTP-Activation, Desktop-Experience, NET-Framework-45- Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT- Clustering-Mgmt, RSAT-Clustering-PowerShell, Web-Mgmt-Console, WAS-Process-Model, Web-Asp- Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn- Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web- ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web- Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web- Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation

3- Yukarıdaki ön kurulum gereksinimlerini yerine getirdikten sonra, Exchange Server 2016 kurulumu yapılacak Server üzerine kurulması gereken bir takım APP.'ler bulunmaktadır. Bu APP.'ler, Cumulative Update versiyonuna göre değişiklik gösterebileceği için, aşağıda sadece APP.'leri Download edebileceğiniz bağlantı adresini paylaşıyorum.

exchange server 2019 kurulumu Exchange Server Prerequisites

Gerekli PowerShell komutlarının ve APP.'lerin kurulum işlemlerini tamamladıktan sonra Exchange Server 2016 kurulumu için aşağıdaki adımlarla devam ediyorum.

Active Directory Schema Extension (Şema Genişletme)

Active Directory Schema Extention (şema genişletme) işlemi sırasında Active Directory Schema yapısında Exchange Server'a özel bir takım Class'lar, bu Class'lara ait bir takım Attribute'lar eklenir. Bu değişiklikler, Exchange'in Exchange Organization yapısı ile ilgili Container ve nesnelerin oluşturulması ve nesne bilgisini saklaması için gereklidir.

Active Directory Schema Extension işlemi için Exchange Server 2016 ISO dosyasını takıyorum. Ardından CMD (Command Promt) komut istemini Run as Administrator ile açarak komut satında kurulum dosyalarının olduğu dizine gidiyor, aşağıdaki komutu yazarak Schema Extension işlemine başlıyorum.

Setup.exe /PrepareSchema /IAcceptExchangeServerLicenseTerms

exchange kurulumu

Active Directory Hazırlama

Active Directory Hazırlama işlemi sırasında Exchange'in Active Directory yapısında saklayacağı Container'lar, Object Class'lar ve Attribute'ların eklenmesi işlemi gerçekleştirilir. Bu işlem için de Active Directory hazırlamayı devreye alacağız. Bu adımda yapılan değişikliklerin çoğu Active Directory Forest yapısının tamamına uygulanır.

Active Directory Hazırlama işlemi için "Run as Administrator" ile PowerShell üzerinden kurulum dosyalarının olduğu dizine gidiyorum. Ardından, aşağıdaki komutu yazarak Active Directory hazırlama işlemine başlıyorum.

.\setup /PrepareAD /OrganizationName:"FIRATBOYAN" /IAcceptExchangeServerLicenseTerms

exchange kurulumu

Active Directory Domain Hazırlama

Son işlem olarak sıra, Exchange Server'ın kurulacağı Active Directory Domain'in hazırlanması işlemine geldi. Active Directory Domain hazırlama işleminde sırası ile aşağıdaki işlemler gerçekleştirilir.

• Active Directory'deki root Domain partition üzerinde Exchange System Objects Container'ı oluşturulur.
• Microsoft Exchange System Objects Container'ı üzerinde Exchange Servers, Organization Management ve Authenticated Users Security grupları için gerekli izinler oluşturulur.
• Root Domain'de Exchange Servers USG nesneleri içine Exchange Install Domain Servers grubu eklenir.
• Domain seviyesinde Exchange Servers USG nesneleri ve Organization Management USG nesneleri için izin atama işlemleri gerçekleştirilir.
• Root Domain'de Microsoft Exchange System Objects Container'ı içinde objectVersion Attirute'u eklenir. Active Directory Domain hazırlama işleminin başarılı bir şekilde gerçekleştiğini görebilmeniz için, bu Attribute içindeki değer kontrol edilebilir.

Active Directory Domain Hazırlama işlemi için CMD (Command Promt) komut istemini "Run as Administrator" ile açarak komut satında kurulum dosyalarının olduğu dizine erişiyor, ardından aşağıdaki komutu yazarak Domain Hazırlama işlemine başlıyorum.

Setup.exe /PrepareAllDomains /IAcceptExchangeServerLicenseTerms

exchange kurulumu

Exchange Server 2016 Kurulumu

Yukarıdaki tüm adımlar başarılı bir şelilde tamamlandıktan sonra sıra, Exchange Server 2016 Kurulumu gerçekleştirme adımına geldi. Kurulum için Exchange Server 2016 yükleme medyasındaki Setup.exe'yi çift tıklayıp, Check for Updates penceresinde Internet'e bağlanıp güncelleştirmelerin indirilmesi için Connect to the Internet and check for updates seçeneği işaretli haldeyken Next butonuna basıyoruz.

exchange kurulumu

Kurulum için gerekli dosyalar kopyalanıyor...

exchange kurulumu

Kurulum başlatılıyor...

exchange kurulumu

Kuruluma geçmek için Next butonuna basıyorum.

exchange kurulumu

Lisans sözleşmesini kabul ediyorum.

exchange kurulumu

Varsayılan ayarları ile kurulmasını istiyorum.

exchange kurulumu
 

Exchange Server 2016 Rolleri

En önemli kısım olan Exchange Server 2016 rollerinin kurulumuna geldik. Server Role Selection penceresinde kurulacak olan rolleri seçiyoruz. İlk bakışta Mailbox role ve Edge role dikkatimizi çekiyor. Kuruluma devam etmeden önce rollerden kısaca bahetmek istiyorum.

Exchange Server rolleri, Exchange Server 2013'e kadar 3 ayrı rol olarak farklı Server'lara ya da hepsi tek bir Server'a kurulabiliyordu. Exchange Server 2016 ile birlikte bu 3 ayrı yol yerini, sadece Mailbox Role (MR) bırakmıştır. Microsoft, rollerin tek sunucuda çalıştırılmasının performans açısından daha fazla verimlilik sağlayacağı konusuda bilgilendirme yapmıştı.

Mailbox Role seçimi ile birlikte kurulacak olan alt servisler aşağıdaki gibidir;

1- Front End Transport Service (eski CAS ROLE)
Dışarıdan gelen, dışarıya giden E-Mail trafiğini yönetir. Bu servis, E-Mail içeriğine bakmaz. Sadece Transport Servisi ile iletişime geçer.

2- Transport Service (eski HUB Transport Server ROLE)
Front End Transport Service'inden gelen E-Mail içeriğini kategorize eder, Sınıflandırır ve Mailbox Transport Service'ine yani kullanıcı E-Mail kutularına mail'i iletmekle görevlidir. Özetle Transport Service, E-Mail'leri Mailbox Transport Service ve Front End Transport Service arasında yönlendirme işlemi yapar.

3- Mailbox Transport Service (Mailbox Server ROLE)
Mailbox Transport Service kendi içinde iki ayrı servise ayrılmaktadır. Bunlar;

3.1- Mailbox Transport Delivery
Transport Service ile gönderilen mail'leri almak ve Local Mailbox Database'lerine RPC (Remote Procedure Call) protokolünü kullanarak teslim eder.

3.2- Mailbox Transport Submission
Local Mailbox hesaplarından çıkan E-Mail'lerin dışarıya iletilmesi için kullanılan servistir.

Exchange Server 2016 Kurulumu

Management tools, Mailbox Rolü kurduğunuz Server üzerine otomatik olarak yüklenir. Ayrıca Mailbox ve Edge Rolünü aynı sunucu üzerine kuramazsınız ki zaten kurmamalısınız da. Çünkü Edge Rolünü, ayrı bir Server üzerinde olmalıdır.

4- Edge TransPort Role: Uç Aktarım Sunucusu, Exchange Server organizasyonumuzu istenmeyen virüslere ve e-postalara karşı korumamızı sağlar. E-postalara poliçe uygulanması bu sunucu rolü üzerinde gerçekleşir. Bu sunucu rolümüzü DMZ alanımıza kurmamız gerekmektedir. İç Network ve dış Network olmak üzere iki Network ara yüzüne sahiptir. Yani diğer Server rolleriyle birlikte aynı Server üzerinde kurulamaz. Farklı bir Server üzerine kurmamız gerekir. Edge Transport Server rolü kurulan Server Domaine dahil olmamalıdır. Workgroup olarak çalışmalıdır. Domain Controller ile doğrudan iletişim kuramaz.

Mailbox role seçeneğini seçip, kurulum sırasında Exchange Server kurulumu sırasında gerekli rol ve özelliklerin kurulumu için Automatically install Windows Server roles and features that are required to install Exchange Server seçeneğini de seçerek next butonuna basarak kuruluma devam ediyorum.

exchange kurulumu

Dikkat ederseniz Edge Rolü seçildiğinde Mailbox Rolü seçilebilir durumdan çıkıyor. Mailbox Rolü seçerek Next butonuna basıyorum.

exchange kurulumu

Installation space and Location penceresinde Kurulum yapılacak disk yolunu gösteriyor.

exchange kurulumu

Gereksinimler kontrol edilir. Eğer sağlanması gereken eksikler tespit edilirse yine bu aşamada listelenir. Sorun yoksa, install butonuna basarak Exchange Server 2016 kurulumuna başlayabiliriz.

exchange kurulumu

Exchange Server 2016 Kurulumu başladı...

exchange kurulumu

Uzun bir uğraşın sonunda Exchange Server 2016 kurulum başarılı bir şekilde tamamlandı.

exchange kurulumu

Exchange Server 2016 Kurulumu tamamlandıktan sonra finish butonuna tıklayarak Setup Wizard'ı sonlandırıyorum. finish butonuna tıklamadan önce Launch Exchange Administration Center after finishing Exchange setup seçeneğine tıklarsanız, Web Browser içerisinde Web tabanlı yönetim ara yüzü olan Exchange Admin Center (EAC) açılır.

Ek olarak bu seçeneğe tıklamadan da yöneyim arayüzüne erişmek için;
https://Sunucu-adi/ecp Path'inden,
Aynı yolun https://Sunucu-adi/owa Path'i de, Outlook Web Access arayüzüne ulaşmak için kullanılmaktadır.

Exchange Admin Center (EAC) açıldı. Burada, Exchange Server yönetimsel işlemler yapılmakdatır.
Domain\user name ve Password girişi yaparak yönetim paneline erişim sağlamak için sign in butonuna tıklıyorum.

NOT: Parola bilginizi girdikten sonra Browser'ın şifrenizi kaydetmesine izin vermemenizi öneririm. Burada kaydettiğiniz şifreler Credential Manager'da kayıtlı tutulmaktadır.

Exchange kurulumu

Dil ve Saat ayarlarının yapılacağı alan karşımıza çıkıyor. Ben dil İngilizce, saat dilimini de UTC+03:00 Istanbul olarak ayarlıyorum ve Save butonuna basarak devam ediyorum.

Exchange kurulumu

İşte karşımızda e-posta iletişimi ve Mail Server yönetimi için ayarlarımızı yapıp yönetimimizi sağlayacağımız panel.

Exchange kurulumu

Exchange Server 2016 Kurulum Sonrası Ayarlar

Exchange Server 2016 kurulum işleminden sonra bazı kurulum sonrası yapılması gereken yapılandırma işlemleri var.

1- Virtual Directory URL Yapılandırma Ayarları

Exchange Server 2016 kurulum işleminden sonra ilk yapmamız gerken işlem End-Point URL adreslerinin yapılandırılması olacak. Virtual Directory URL yapılandırma işlemini Exchange Control Panel (ECP) üzerinden de yapabilirsiniz ancak ben, bu işlemi Script kullanarak kolayca nasıl yapabileceğinizi göstereceğim. Tek bir Exchange Server Node'unuz varsa, ECP üzerinden daha kolay yapılabiliyor olsa da birden fazla Node'unuz varsa, Script kullanmak daha pratik olacaktır.

Bu URL'ler, Microsoft Outlook gibi e-posta uygulamalarının Exchange Server'daki Mapi, Outlook Anywhere, EWS (Exchange Web Services), OAB (Offline Address Book, Autodiscover ve ActiveSync gibi servislerine Network içinden ya da dışından https protokolü üzerinden erişebilmeleri ya da Microsoft Outlook uygulamasının WEB karşılığı olan OWA (Outlook Web Access) veya Exchange Server yöneticilerinin yönetim paneli olan ECP (Exchange Control Panel) erişimleri için gerekli olan URL'lerdir.

URL adresleri, Internal ve External olmak üzere ikiye ayrılıyor olup, kurulum sonrasında varsayılan olarak Internal Url adresleri Server FQDN (ör. exchsrv01.firatboyan.local) olarak ayarlanmış şekilde karşımıza çıkmaktadır. Makelemin Internal DNS Yapılandırma Ayarları bölümünde Local DNS Server'ımda Split DNS yapılandırması yapacağım için, hem Internal hem de External URL adreslerini tek tip (ör. mail.firatboyan.com) olarak yapılandıracağım.

1.1- İlk olarak, GetExchangeURLs.ps1 Script'ini kullanarak, URL'lerimin durumunu kontrol ediyorum. Script'i çalıştırdıktan sonra, Server[0]: yazan alana ortamınızdaki tüm Node'ların  Host Name bilgisini yazarak tek seferde hepsini kontrol edebilirsiniz. Benim ortamımda tek Node olduğu için, Server[0]: yazan alana Host Name bilgisini yazıp, Server[1]: alanında Enter tuşuna basıp, Script'i çalıştırıyorum.

Exchange Server Virtual Directory Yapılandırma
Exchange Server Virtual Directory Yapılandırma

Virtual Directory URL'lerinizi ilgili Script yardımıyla kontrol edebileceğiniz gibi, aşağıdaki komutlar yardımıyla tek tek de kontrol edebilme imkanına sahipsiniz.

Get-OutlookAnywhere | Select Server,ExternalHostname,Internalhostname

Get-OwaVirtualDirectory | ft identity,internalurl,externalurl -AutoSize

Get-MapiVirtualDirectory | ft identity,internalurl,externalurl -AutoSize

Get-EcpVirtualDirectory | ft identity,internalurl,externalurl -AutoSize

Get-ActiveSyncVirtualDirectory | ft identity,internalurl,externalurl -AutoSize

Get-WebServicesVirtualDirectory | ft identity,internalurl,externalurl -AutoSize

Get-OabVirtualDirectory | ft identity,internalurl,externalurl -AutoSize

Get-ClientAccessService | fl identity,autodiscoverserviceinternaluri

1.2- Sonrasında Internal ve External URL adreslerinin yapılandırmasını ConfigureExchangeURLs.ps1 Script'ini referans göstererek aşağıdaki komutla kolaylıkla tek seferde oluşturuyorum. Ortamınızda birden fazla Exchange Server Node'u varsa, -Server parametresinden sonra virgülle ayırarak Host Name bilgisi yazıp, yine tek seferde hepsinin URL yapılandırma işlemini gerçekleştirebilirsiniz.

.\ConfigureExchangeURLs.ps1 -Server EXCHSRV01 -InternalURL mail.firatboyan.com -ExternalURL mail.firatboyan.com -AutodiscoverSCP autodiscover.firatboyan.com

Exchange Server Virtual Directory Yapılandırma
Exchange Server Virtual Directory Yapılandırma

1.3- Tekrar GetExchangeURLs.ps1 Script'i ile URL değişliklerini kontrol ettiğimde, URL yapılandırma işlemimin başarılı bir şekilde oluşturulduğunu görebiliyorum.

Exchange Server Virtual Directory Yapılandırma
Exchange Server Virtual Directory Yapılandırma

2- SSL (Secure Sockets Layer) Sertifikası Yapılandırma Ayarları

Virtual Directory URL yapılandırma işlemlerinden sonra sıra, SSL sertifikası yapılandırma işlemine geldi. Virtual Directory URL'lerinin bağlantıları, 443 Port numarası üzerinden https protokolünü kullandığı için, kurulan bağlantılarda güvenli bağlantı isteği sağlayabilmek için SSL sertifikası şarttır. Bir çok sertifika türü bulunmaktadır ancak ben, sadece yıldız sertifika (WildCard Certificate) oluşturma işlemlerini yürüteceğim. Wildcard SSL sertifikaları, sayısız Sub Domain'i (alt alan adı) koruma altına alır. Bu koruma, Virtual Directory URL'leri tanımlarken tanımladığımız Domain'e ait DNS kaydı/kayıtları da dahil, Web siteniz ve Web sitenize ait tüm Sub Domain'leri (alt alan adı) de geçerlidir. 

Wildcard sertifikamı, firatboyan.com Domain'i için oluşturacak olup, tanımlamamı *.firatboyan.com için yapacağım. Virtual Directory URL tanımlarken OWA, ECP, EWS, OAB, Mapi, Outlook Anywehere ve ActiveSync gibi Exchange Server servislerine mail.firatboyan.com şeklinde bir tanımlama yapmıştık. Ek olarak Autodiscover servisi için de autodiscover.firatboyan.com şeklinde bir tanımlama yapmıştık. Wildcard sertifika kullanımı ile hem Exchange Server hem de Web sitemiz için Domain ile ilişkili sınırsız sayıdaki tüm değişken DNS kayıtlarını kullabilir hale geliyoruz.

Wildcard sertifika ile örnek URL kullanımları:
Wildcard sertifikada tanımladığınız Domain için aşağıdaki şekilde sınırsız sayıda DNS kaydını sertifika için tanımladığınız firatboyan.com Domain'inde *.firatboyan.com için kullanabilme imkanına sahip olursunuz. Yukarıda verdiğim bilgilerin daha açıklayıcı olması için aşağıda bazı örnek kullanımları sıraladım.

mail.firatboyan.com (owa, ecp, ews, oab, mapi, outlook anywhere);
owa.firatboyan.com (owa)
posta.firatboyan.com (owa)
autodiscover.firatboyan.com
www.firatboyan.com (web)
ftp.firatboyan.com (web)

2.1- SSL sertifikası yapılandırma için öncelikle bir sertifika isteği (CSR-Certificate Signing Request) oluşturmamız gerekmektedir. CSR oluşturmak için servers > certificates altında Select server kısmında CSR oluşturulacak Exchange Server Node'unu seçtikten sonra artı (+) simgesine tıklıyorum.

Exchange Server Wildcard sertifika oluşturma 

2.2- Karşıma çıkan pencerede Create a request from a certificate authority seçeneğini seçiyor, Next butonuna basarak devam ediyorum.

Exchange Server Wildcard sertifika oluşturma

2.3- *Friendly name for this certificate alanında SSL sertifikam için bana anlamlı gelen bir görünen isim giriyor, Next butonuna basarak işlemime devam ediyorum.

Exchange Server Wildcard sertifika oluşturma

2.4- Bu kısımda Request a wildcard certificate... seçeneğini işaretleyip, aşağıda açılan Text alanına *.firatboyan.com şeklinde Accepted Domain'de tanımlı olan E-mail adresleri için kullanılacak Domain adını yazıyorum.

Exchange Server Wildcard sertifika oluşturma

2.5- Bu kısımda *Store certificate request on this server alanında sertifika isteğinin (CSR) tutulacağı sunucuyu seçmem gerekiyor. Sertifika isteği (CSR), hangi sunucuda oluşturulmuşsa, sertifika tanımlamasının da o sunucu üzerinde yapılması gerekmektedir. CSR oluşturmak için Browse... butonuna tıklıyorum.

Exchange Server Wildcard sertifika oluşturma

2.6- Ortamımda bulunan EXCHSRV01 Host Name'li sunucuyu seçiyor, OK butonuna basıyorum.

Exchange Server Wildcard sertifika oluşturma

2.7- SSL sertifika Request'ini üzerinde tutacağım sunucuyu seçtikten sonra Next botonuna basarak devam ediyorum.

Exchange Server Wildcard sertifika oluşturma

2.8- Bu kısımda şirketiniz ile ilgili şirket adı, il, ilçe, ülke gibi bilgiler girmemiz gerekiyor. Bilgileri girdikten sonra Next butonuna basıp, işlemime devam ediyorum.

Exchange Server Wildcard sertifika oluşturma

2.9- Sonraki adımda SSL sertifika Request'imi Exchange Server'ımın C$ altında oluşmuş olduğum paylaşım klasörünün UNC (Universal Naming Convention) Path bilgisini SSL sertifika Request'ime uzantısı .REQ olacak şekilde isim yazıyor, Finish botonuna basarak SSL Sertifikası Request oluşturma işlemimi sonlandırıyorum.

Exchange Server Wildcard sertifika oluşturma

2.10- Sertifika isteğimi başarılı bir şekilde oluşturdum. STATUS alanındaki durum bilgisi Pending request olarak görünüyor. Bu işlemle sadece Request oluşturma admını tamamlamış oldum. Request'i oluşturulan sertifikalar, oluşturulduğu Server'da Private Key bilgisi ile tutulur. Private Key, SSL sertifikalarının oluşturma talebinde kullanılan sertifikanın doğruluğunu kontrol etmek için üretilen özel bir anahtardır.  

Exchange Server Wildcard sertifika oluşturma

2.11- Exchange Management üzerinden de Pending request durumdaki sertifikamı,

Get-ExchangeCertificate | where {$_.Status -eq "PendingRequest" -and $_.IsSelfSigned -eq $false} | Format-List FriendlyName,Subject,CertificateDomains,Thumbprint

komutuyla daha detaylı bir şekilde görüntüleyebilirim.

Exchange Server Wildcard sertifika oluşturma

2.12- SSL sertifika Request'imi Exchange Server'ımın C$ altında oluşmuş olduğum paylaşım klasörünün UNC (Universal Naming Convention) Path üzerinde kaydetmiştim. .REQ uzantılı bu Text dosyasında Hash'lenmiş bir şekilde SSL sertifika Request'imin bilgileri yer alıyor. Bu .REQ uzantılı dosyayı GlobalSign, VeriSign, Digicert, Comodo vb. gibi Sertifika Otoritesine (Certificate Authority-CA) yollayıp, SSL sertifikanızı satın almanız gerekiyor.

Exchange Server Wildcard sertifika oluşturma

2.13- Satın aldığımız SSL sertifikamız elimize ulaştıktan sonra yapılamsı gereken, Reuqest'in Complete edilmesi, yani sertifkanın tanımlanmasıdır.

Exchange Server Wildcard sertifika oluşturma

2.14- SSL sertifika Request'imi Complete etme yani sertifkanın tanımlanması işlemi için servers > certificates altında Pending request durumda bekleyen sertifka isteğine tıklayıp, sağ bölümde bulunan Complete Link'ine tıklıyorum.

Exchange Server Wildcard sertifika oluşturma

2.15- Açılan pencere satın aldığım sertifikamı paylaşımlı bir klasör içine tutup, bu klasörün UNC (Universal Naming Convention) Path bilgisini *File to import from altındaki alana yazıyor, OK butonuna basıyorum.

Exchange Server Wildcard sertifika oluşturma

2.16- Pending request durumda bekleyen sertifkamın Valid durumda olduğunu görebiliyorum. Sıra, sertifikam için ilgili servislerin ataması işlemine geldi. ilgili servislerin ataması işlemini yapmadan, sertifika kullanımı sağlanayacaktır. Bunun için üst bölümde bulunan kalem simgesine tıklıyorum.

Exchange Server Wildcard sertifika oluşturma

2.17- Açılan pencerede services altında SMTP ve IIS servislerini seçip, Save butonuna basıyorum.

Exchange Server Wildcard sertifika oluşturma

2.18- Save butonuna bastıktan sonra karşıma çıkan Warning penceresinde Overwrite the existing default SMTP certificate? sorusunu Yes butonuna basarak onayladıktan sonra kapatıyorum.

Exchange Server Wildcard sertifika oluşturma

2.19- İlgili servislerin tanımladığımız sertifikaya atandığını, sertifikamızın durumunun da Valid yani geçerli olduğunu görebiliyorum.

NOT: Bu işlemlerden sonra mutlaka CMD ya da PowerShell konsolunu Run as administrator olarak çalıştrırıp, konsolunu IISRESET komutu ile IIS servislerini Restart etmeyi unutmayın!

Exchange Server Wildcard sertifika oluşturma

2.20- Sertifikamızın geçerlilik durumunu ve detaylı bilgilerini

Get-ExchangeCertificate | where {$_.Status -eq "Valid" -and $_.IsSelfSigned -eq $false} | Format-List FriendlyName,Subject,CertificateDomains,Thumbprint,NotBefore,NotAfter

komutuyla görüntüleyebilirim.

Exchange Server Wildcard sertifika oluşturma

2.21- Sıra, tanımlanan SSL sertifikasının Client Access Service (CAS), başka bir ifade ile Front End Transpot Service, tanımlamasını yapmaya geldi. Client'lar, Transport Service (Exchange Back End) hizmetlerine doğrudan bağlanmazlar. Https protokolü üzerinden gelen Client bağlantı istekleri ilk önce Client Access Service (CAS) tarafından karşılanır. Client Access Service (CAS), tüm Client bağlantı isteklerini kabul etmekten sorumludur ve gelen bu bağlantıları Exchange Mailbox Server'daki Transport Service (Exchange Back End) hizmetlerine yönlendirir. Bu nedenle gelen Client bağlantı istekleri ilk önce Client Access Service (CAS) tarafından karşılanğı için, SSL sertifikasının Transport Service (Exchange Back End) Binding'lerinde tanımlanması gerekmektedir.

Exchange Server Wildcard sertifika oluşturma

Bunun için öncelikle IIS Manager'ı açıyor, Server Certificates altında sertifikamın oluştuğunu görüyorum.

Exchange Server Wildcard sertifika oluşturma

Exchange Server Wildcard sertifika oluşturma

2.22- Default Web Site (Front End Transport-CAS) üzerine tıklayıp, sağ bölümde Bindings... Link'ine tıklıyorum.

Exchange Server Wildcard sertifika oluşturma

2.23- https için oluşturulmuş olan Site Bindig'leri alaşağıdaki gibidir.

Exchange Server Wildcard sertifika oluşturma

2.24- Her iki Site Binding'e tek tek tıklayıp açtıktan sonra SSL certificate menüsünden oluşturduğum SSL sertifikasını seçip, OK butonuna basıyorum.

Exchange Server Wildcard sertifika oluşturma

Exchange Server Wildcard sertifika oluşturma

2.25- Bu işlemlerden sonra CMD ya da PowerShell konsolunu Run as administrator olarak çalıştrırıp, konsolunu IISRESET komutu ile IIS servislerini Restart ediyorum.

Exchange Server Wildcard sertifika oluşturma

2.26- Browser üzerinden daha önce tanımladığım Virtual Directory URL bilgisi ile ECP'ye (Exchange Control Panel) erişim sağlatığımda, sertifikamın başarılı bir şekilde tanımlandığını görebiliyorum.

Exchange Server Wildcard sertifika oluşturma
 

3- External DNS Yapılandırma Ayarları

Exchange Server DNS kayıtları, Local ortamınızda bir DNS hizmeti verip, bunu da Firewall'dan dışarıya açmadıysanız, hizmet sağlayıcınız üzerinden yönetilmektedir. İlgili DNS kayıtlarını, servis sağlayıcınızın size sunduğu DNS panel yönetim konsolu üzerinden oluşturmalısınız. Bu kayıtlar aşağıdaki gibidir.

Host (A): Ör. exmail.firatboyan.com.
Exchange Control Panel (ECP), Outlook Web App (OWA), Outlook Anywhere (RPC over HTTP), MAPI (Mapi over HTTP), Offline Address Book (OAB), Exchange Web Services (EWS), POP3, IMAP4 gibi servislerin kullanımı için gerekli Host (A) kaydıdır.
● MX (Mail exchanger)
● PTR (Pointer)
● SPF (Sender Policy Framework)
● Autodiscover

 
Exchange Server DNS Kayıtları

3.1- MX (Mail Exchanger) Kaydı:
MX kayıtları; bir e-posta hesabına gelen e-postaları, kullanıcının e-posta hesaplarını barındırdığı SMTP Server'a yönlendirilmesini sağlayan alan adınız ile ilişkilendirilmiş DNS kayıtlarıdır. Başka bir ifade ile; Şirket içerisinde ve dışarısındaki SMTP Server'lar, bir birlerini DNS’te yer alan MX (Mail Exchanger) kayıtlarından bulurlar. Sorgulama yapılırken ilgili Domain ismine gidilir ve o Domain'e SMTP Server'ın nerede olduğu sorulur. Eğer MX kayıtlarınızı girmezseniz, dış dünyadan e-posta alamazsınız. Çünkü size atılan e-postaların hangi IP'de sonlanacağı, gönderen tarafından bilinemez.
DNS'in MX kaydını sorgulayabiliyor olduğunu CMD üzerinden nslookup -querytype=mx firatboyan.com komutu ile kontrol edebilirsiniz.

3.2- SPF (Sender Policy Framework) Kaydı: 
Sender Policy Framework (SPF) kaydının amacı, SPAM iletilerin engellenmesidir. Bir çok SMTP Server, üzerinde SPF kaydı olmayan alan adlarına ait e-posta hesaplarından e-posta kabul edilmemekte veya önemsiz klasörüne düşmektedir.

Bu nedenle; SMTP Server'ınızdan farklı bir SMTP Server'a e-posta iletirken, iletimi gerçekleştirmek istediğiniz taraf, sizi doğrulamak için SPF kaydınızı sorguluyor olabilir.
Bundan dolayı Sender Policy Framework (SPF) kaydı, alan adınızın (Domain) hangi SMTP Server üzerinden e-posta gönderme iznine sahip olduğunu tanımlamanız gerekmektedir. Böyle bir durumda sorunlarla karşılaşmamak için aynı DNS Zone altında MX kaydına ek olarak SPF kaydı da oluşturun.

NOT: Sender Policy Framework (SPF) kayıtları TXT kaydı olarak eklenmektedir.

SPF'yi örnek vererek biraz daha net hale getireyim:
ör. mail@firatboyan.com mail hesabımın bulunduğu Exchange Server üzerinden mailin çıkış IP Adresi 31.210.64.2 olsun. mail@firatboyan.com e-posta hesabımdan Google'ın mail hizmeti olan gmail.com uzantılı bir e-posta adresine mail gönderimi gerçekleştirdiğimde, üzerindeki SPF  kayıtlarını kontrol eden Server, SPF  kaydı içinde 31.210.64.2 IP adresini doğrulayamazsa gönderilen Mail'i reddeder. SPF kayıtlarını yapılandırırsak, SPF kaydı içerisinde 31.210.64.2 IP adresi olacağı için Server tarafından kabul edilecektir.

Text alanına, v=spf1 a mx ip4:31.210.64.2 -all  yazıyorum.
Bu, 31.210.64.2 IP adresindeki tüm Host (A) kayıtları ile ilişkili olan MX kayıtları demektir.

İlgili SPF kaydı girilten sonra, CMD (Command Promt) üzerinden;
nslookup -querytype=txt firatboyan.com komutu ile kontrol edilebilir.

Exchange Server DNS Kayıtları

3.3- PTR (Pointer) Kaydı:
PTR kaydı, sizin DIŞ DNS hizmetinizi aldığınız alandan eklenebilecek bir kayıt türü değildir. Bu kayıt türü, ISP'niz tarafından açılıp, devreye alınmaktadır. Bu kaydı açtırmak için, ISP'nize PTR kaydı açtırma talebi iletmeniz gerekmektedir. Eğer bu kayıt oluşturulmazsa, göndermiş olduğunuz e-posta, SPAM olarak etiketlenecektir.

3.4- Autodiscover Kaydı:
İlk kez Exchange Server 2007’de gelen Autodiscover servisi, Client'ın Outlook ayarlarının otomatik olarak gerçekleştirilmesi için kullanılan bir servistir. Biraz daha netleştirecek olursak;
Bir e-posta kullanıcısı, genelde iki bilgiye sahip olur. Bu bilgiler, E-posta adresi ve parola bilgileridir. Ancak aynı kullanıcı; Exchange Server adresi (hangi Exchange Server'a erişeği), bu Exchange Server'ın SSL/TLS isteyip istemediği, hangi Port üzerinden yayın yapıldığı gibi bilgilere sahip değildir. İşte Autodiscover servisinin çıkış noktası tam da burasıdır. Özetle Autodiscover servisi, bir e-posta istemcisinin, erişim ve hizmet ayarları için ihtiyaç duyduğu gerekli ayarları otomatik olarak sağlayan servistir.

Temel çalışma mantığı şu şekildedir:
1- Client, Autodiscover URL adresine "Autodiscover Request" gönderir.
2- IIS (Internet Information Services) üzerinden sunulan Autodiscover servisi (Client Access Service-CAS), isteği işler. Kimlik doğrulama yapar ve o kullanıcı için doğru ayarları bulur.
3- Client'a cevap olarak bir Autodiscover.xml dosyası gönderir.
4- Client, bu dosya içindeki bilgilere göre e-posta profilini oluşturup gerekli ayarlarını yapılandırır.

Desktop tabanlı Mail Client’lar Autodiscover URL‘e ulaşmak için sırasıyla 4 bulma yöntemi denerler. Eğer Autodiscover URL’i bulmak için denenen ilk yöntem başarısız olursa sonraki ve gerekli ise daha sonraki bulma yöntemlerine geçilir. Eğer yöntemlerden biri ile URL’e ulaşılırsa sonraki bulma yöntemleri denenmez.

3.4.1- Service Connection Point (SCP) URL
Domain-Member bir bilgisayar, Autodiscover için Active Directory Configuration Partition’da bulunan Service Connection Point-SCP (Servis Bağlantı Noktası) nesnesini sorgular. SCP kaydını oraya yazan ise setup/config sırasında Exchange Server’dır ve içerisinde Internal Autodiscover URL bilgisi yer alır.

SCP bilgisi, ADSI Edit üzerinde Configuration > Services > Microsoft Exchange > Organization Adı (FIRATBOYAN) > Administrative Groups > Exchange Administrative Group (FYDIBOHF23SPDLT) > Servers > Host Name (EXCHSRV01) > Protocols > Autodiscover  altındaki serviceBindingInformation Attribute değerinde yer almaktadır.

exchange server autodiscover service binding information

exchange server autodiscover service binding information

Eğer Domain-Member Client, SCP’den Autodiscover URL bilgisini okuyabilirse, bunu alır ve servise ulaşmak için kullanır. Bu bulma yönteminde SCP’den dönen URL bilgisi, Client Access Service'in (Exchange Server) iç erişim adreslerini işaret eder.

https://EXCHSRV01.firatboyan.local/autodiscover/autodiscover.xml

Yukarıdaki bu Internal URL yordamı, SCP erişimi için kullanılmaktadır ve bu ilk Autodiscover URL bulma yöntemi, Workgroup Client'lar için geçerli değildir. Çünkü Workgroup Client'lar, mimari gereği Autodiscover URL bilgisini SCP’den sorgulamazlar ancak şunu özellikle belirtmek gerekir ki bir Domain-Member Client, fiziksel bağlantı ya da VPN erişimi anlamında Exchange Server'ın bulunduğu Network içinde değilse, SCP sorgulaması yapılamayacaktır. Her iki durumda da Client'lar, sıradaki diğer bulma yöntemlerini kullanarak ileyeceklerdir.

NOT: Bu Internal URL genellikle,  Virtual Directory URL Yapılandırma makalemde bahsetmiş olduğum gibi, dijital sertifika içinde e-posta adresiniz için kullandığınız Domain tarafında bir sorun yaşamamanız için External URL yapısına dönüştülür.

SCP'deki Autodiscover URL bilgisini

Get-ClientAccessService | fl identity,autodiscoverserviceinternaluri

komutu yardımıyla Exchange Management Shell (EMS) üzerinden de sorgulayabilirsiniz.

exchange server autodiscover url

3.4.2- Hard-coded URLs
Eğer bir Client, Domain-Member değil ise, yani bir Workgroup Client ise, Mail Account’un Domain Suffix’ini (ör. firatboyan.com) referans alıp birkaç Hard-Coded Autodiscover URL kombinasyonunu türetir ve yine belirli bir sırada DNS servisinden IP adreslerini sorgular.

Eğer bir Client, Domain-Member olduğu halde, ör. VPN iletişimi olmaması gibi bir nedenden ötürü, SCP kaydını okuyamazsa, yine aynı şelilde Mail Account’un Domain Suffix’ini referans alıp aşağıdaki gibi Hard-Coded Autodiscover URL kombinasyonlarını türetir ve yine belirli bir sırada DNS servisinden IP adreslerini sorgular. 

Buna göre ör. mail@firatboyan.com olan bir-posta hesabı için türetilen URL, ilk etapta aşağıdaki gibi türetilecektir. Client, bu ilk URL'den doğru bir yanıt alamazsa, ki çoğunlukla alamaz. Bunun nedeni, e-posta Domain'i için dış DNS hizmetinize erişildiğinde firatboyan.com Domain'indeki Web sitesine bağlı autodiscover Virtual Directory'sine erişip, buradan da bu Virtual Directory içindeki autodiscover.xml dosyasını okumaya çalışacaktır. Sizin Domain'inizde de autodiscover adında bir Virtual Directory ve bu Virtual Directory içinde de ilgili XML dosyası olmayacağı için, buradaki Autodiscover Request işlemi başarısız olacaktır. 

https://firatboyan.com/autodiscover/autodiscover.xml

Aşağıdaki URL yordamı, External URL'ler için, DIŞ DNS'teki Autodiscover Host (A) kaydına karşılık gelen Public IP adresinin sorgulanması için kullanılmaktadır. Dikkat ederseniz, her iki URL de HTTPS’tir. Çünkü Mail Client’ın Autodiscover servisinden bilgileri alabilmesi için öncelikle User Name ve Password bilgilerini göndererek kimlik doğrulaması (Authentication) gerçekleştirmesi gerekir. Yine HTTPS sayesinde hassas bilgilerin gönderileceği sunucunun da gerçekten gitmek istediği sunucu olup olmadığını doğrulama şansına sahip olur. Bu yüzden URL’ler Secure ve dijital sertifika tabanlıdır.

Secure HTTP sayesinde;
• İletişim öncesinde Server tarafından Client'a gönderilen dijital sertifika vasıtasıyla Client'ın User Name ve Password ile Credential bilgisi göndereceği Server'ı doğrulama şansı olur. 
• Client’ın kimlik doğrulama için Server'a gönderdiği Credential bilgisinin transferi sırasında Man-in-the-middle gibi araya girme ataklarına karşı güvenliği artırır.

https://autodiscover.firatboyan.com/autodiscover/autodiscover.xml

Eğer URL’lerden birinde doğru Exchange Server Autodiscover servisiyle karşılaşırsa Client, HTTP POST ile Credential (User Name ve Password) bilgisi gönderir ve kendini tanıtarak süreci ilerletir.

3.4.3- HTTP Redirection
Eğer Mail Client, bu aşamaya kadar geldiyse, bir önceki yöntemde doğru HTTPS URL’lere ulaşamamış demektir. Bu durumda yine Mail Account’un Domain Suffix’ini (ör. firatboyan.com) referans alarak aşağıdaki gibi Secure olmayan bir HTTP URL türetir.

http://autodiscover.firatboyan.com/autodiscover/autodiscover.xml

Türetilen bu HTTP URL ile bu sefer GET işlemi yapar ve GET metoduyla çağırılan istek (Request), HTTPS olmadığı ve dijital sertifika gereksinimi olmadığı için sunucu kimlik doğrulaması yapılmaz. Ek olarak HTTP Redirection için istemci kimlik doğrulaması (Client Authentication) gerekmediği için Credential (User Name ve Password) bilgisi gönderilmez. Buradan tam olarak doğru Autodiscover servisine ait Secure HTTP URL’e yönlendirilip yönlendirilmediğine bakar, yani aslında bu HTTP servise herhangi bir bilgi göndermez. Yani POST işlemi yapmaz ve herhangi bir yapılandırma ayarı beklemez. Sadece HTTP Redirection (yeniden yönlendirme) için 301 veya 302 yanıtı bekler. Eğer bir yanıt alırsa, bu durumda HTTP URL ile işi biter ve yönlendirme mesajıyla öğrendiği HTTPS URL’e gidip, tıpkı 2. adımdaki gibi sunucu kimlik doğrulama sonrası POST yaparak Credential bilgisi gönderme ve servis ayarlarını alma sürecini ilerletir.

3.4.4- DNS SRV Kaydı
Eğer önceki bulma yöntemlerinden hiçbiri Client’ı bir Autodiscover servisine ulaştıramazsa Client, son olarak firatboyan.com’un DNS Zone’una aşağıdaki SRV kaydının karşılığını sorar. 

_autodiscover._tcp.firatboyan.com

Bu kaydın karışılığı, aşağıdaki gibi bir HTTPS URL olmalıdır.

https://autodiscover.firatboyan.com/autodiscover/autodiscover.xml

Client, bu URL’i alabilirse, Autodiscover iletişimini başlatmayı dener. Eğer bu aşamada da doğru bir URL alamazsa, Client için Autodiscover macerasının sonu demektir ve kullanıcıdan gerekli e-posta servis bilgilerini Manual olarak girmesi istenir. Giremez ise e-posta hesabı ekleme işlemi başarısız bir şekilde sonlanır.

5- Exchange Server için NAT ve Firewall Policy Yapılandırması

5.1- 25 Port'unun ISP (Internet Service Provider-Internet Servis Sağlayıcı) üzerinden açılması

Firewall üzerinde NAT ve Policy yapılandırması işlemini gerçekleştirmeden önce, 25 numaralı Port'un Internet hizmeti aldığınız (ISP-Internet Service Provider) tarafından açık olduğundan emin olmanız gerekmektedir. Bu Port'un kontrolünü TELNET komutu ile kontrol edebilirsiniz.

Komut istemcisi (CMD) üzerinde ör. telnet 73.122.35.127 25 komutunu çalıştırdığınızda Port'unuzun açık olup olmadığını test edebilirsiniz.
Bu kontrolü Server ya da client üzerinden yapakcasanız, bunun için Telnet Client'ı yüklemeniz gerekecektir.

Telnet komutu

25 numaralı Port kapalı ise, ISP'niz ile iletişime geçerek açtırmanız gerekecektir. Bu Port açılmadan dış dünya ile e-posta gönerim ve alım işlemleri yapamazsınız!

5.2- Firewall Port Bilgileri

Exchange Server’ın dış dünyaya e-posta atabilmesi ve yine dış dünyadan e-posta alabilmesi için Firewall üzerinde aşağıda belirttiğim Port'lar için NAT ve policy yapılandırma işlemleri yapılması gerekmektedir.

Amaç Port Kaynak Hedef
• Autodiscover
• ActiveSync
• Exchange Web Services (EWS)
• Offline address book (OAB)
• Outlook Anywhere (RPC over HTTP)
• Outlook MAPI over HTTP
• Exchange Control Panel (ECP)
• Outlook on the web (Outlook Web App)
443/TCP (HTTPS) • WAN (Any) • LAN (Load Balancer)
• Tavim paylaşımı
• Outlook on the web (443/TCP Redirection)
• Autodiscover (443/TCP erişim kontrolü)
80/TCP (HTTP) • WAN (Any) • LAN (Load Balancer)
• İç yöne e-posta akışı 25/TCP (SMTP) • WAN (Any) • LAN (Antispam Mail Gateway)
• Dış yöne e-posta akışı 25/TCP (SMTP) • LAN (Antispam Mail Gateway) • WAN (Any)

NOT: Exchange Server üzerinde IMAP ve POP yapılandırması yapmayacaksanız, IMAP ve POP Port'ları için Firewall üzerinde NAT oluşturmanıza gerek yoktur.

Aşağıdaki diyagramda LAN ya da WAN ortamındaki Outlook Client, Outlook'tan e-posta gönderimi yaparken ilk etapta 443 Port'u üzerinden MAPI over HTTP ya da RPC over HTTP (Outlook Anywhere) ile Exchange Server'daki posta kutusuna bağlanacak; e-posta, Exchange Server tarafından 25 Port'u üzerinden Internet'e gönderilecektir. Tam tersi işlemde ise; yine Internet ortamından 25 Port'u üzerinden gelen e-posta, Exchange Server'a iletilecektir. Outlook Client, bağlantısını sürdürdüğü sürece e-postalarına erişebilcektir. Exchange Server üzerine IMAP ya da POP hizmetleri verecekseniz Outlook Client, burada belirleyeceğiniz Port üzerinden e-posta gönderimi yapacaktır. Bu Port numarası da genellikle 587'dir. Bu durumda ise 587 Port'u için WAN to LAN yönünde NAT tanımlaması yapmanız gerecektir.
 

exchange server 2019 kurulumu

NOT: Yukarıdaki görsel, klasik bir mimari için örnek teşkil etmesi için hazırlanmıştır.

Firewall üzerinde gerekli Port'lar için NAT yapılandırma işlemlerinizi tamamladıktan sonra mutlaka PowerShell üzerinden aşağıdaki komutlar yardımıyla Test işlemleri gerçekleştirmenizi öneririm.

5.2.1- Aşağıdaki komut yardımıyla ortamımdaki Public IP (Wan IP) bilgisin çekiyorum.

(Invoke-WebRequest -Uri "http://ifconfig.me/ip").Content

5.2.2- Aşağıdaki komut yardımıyla Public IP bilgim üzerinden 443 TCP bağlantı kontrolümü sağlıyorum.

Test-NetConnection 73.122.35.127 -Port 443

5.2.3- Aşağıdaki komut yardımıyla Public IP bilgim üzerinden 25 SMTP bağlantı kontrolümü sağlıyorum.

Test-NetConnection 73.122.35.127 -Port 25

5.2.4-Aşağıdaki komut yardımıyla Private IP (Lan IP) bilgim üzerinden 25 SMTP bağlantı kontrolümü sağlıyorum.

Test-NetConnection 10.10.10.200 -Port 25

exchange server 2019 kurulumu

Faydalı olması dileğiyle...

Etiketler: Windows Server 2016, Yapılandırma, Exchange Server Konfigürasyon, Exchange Server Firewall Policy yapılandırması, Exchange Server Nat, Exchange Server DNS Ayarları


Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.



Yazar Hakkında

firatboyan.com


1985 yılında Alanya'da doğdum. İlk, orta ve lise öğrenimimi Alanya'da tamamladım. Liseden mezun olduktan sonra Akdeniz Üniversitesi Bilgisayar Teknolojisi Ön Lisans programına yerleştim ve bu programdan mezun oldum. Ön Lisans programından mezun olduktan bir süre sonra Dikey Geçiş Sınavı (DGS) ile İstanbul Teknik Üniversitesi (İTÜ) Bilgisayar Mühendisliği Lisans programına yerleştim.

2003 yılından beri Bilgi Teknolojileri sektöründe Sistem ve Network alanlarında çalışıyorum. Bir çok firma bünyesinde onlarca farklı projelerde yer alarak bu alanda yıllar içinde ciddi bir bilgi birikimi ve deneyimler kazandım. Bilgi Teknolojileri sektöründeki profesyonel çalışma hayatımın uzunca bir dönemini entegratör firma bazında, ağılıklı olarak Microsoft ürünleri üzerine danışman olarak sürdürüyor ve yüksek seviyeli projeler geliştiriyorum. Uzunca bir süredir de Türkiye'nin önde gelen entegratör firmalarından olan Data Market bünyesinde Senior Cloud Engineer olarak çalışıyorum.

Ek olarak, 2015 yılında Network Akademi bünyesinde Microsoft Certified Trainer (MCT) ünvanı ile Sistem ve Network Uzmanlık eğitimleri vermeye başladım. Sistem ve Network Uzmanlığı alanındaki eğitmenlik serüvenime Network Akademi bünyesinde devam etmekteyim.

YORUMLAR
Bu makaleye 9 yorum yapıldı.
Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.


750 karakter yazabilirsiniz.
Captcha
Güvenlik kodunu BÜYÜK harflerle giriniz.
* Yorumlar, onaylandıktan sonra yayınlanmaktadır.
* E-posta, yorum onay bildirimi için gereklidir. Yayınlanmaz.


18.06.2022 Onur Aydın
Fırat hocam, En ufak detay kalmamış anlatmadığın. Tebrik ederim.

18.06.2022 Fırat Boyan
Selamlar Onur Hocam. Değerli yorumun için teşekkür ederim. :)


17.04.2021 Sinan Ustun
Fırat bey merhaba, 2010 dan 2016 ya geçiş yapıldı. Outlooklar 2016 ya yükseltildi. 2010 da workgroup ortamındaki şirket dışı bilgisyarlardan outlookların bağlanması 3-4 sn sürerken, Outlook 2016 larda 15-20 sn sürmeye ve çalışma sırasında donmalara (Exchangeden bilgi çekiyor uyaırıs) almaya başlandı.

17.04.2021 Fırat Boyan
Exchange Server üzerinde outlook'ların bağlantılarını RPC'den MAPI'ye çevirden sonra denemenizi öneririm.


07.01.2021 Mert Selim
Fırat bey merhaba exchange de outlook a exchange e kurarken sadece ad soyad ve mail adresi şifre girdiğimizde diğer tüm bilgileri otomatik alarak kurması için autodiscover olması yeterlimi yoksa başka bir ayardamı yapmak gerekiyor teşekkürler..

08.01.2021 Fırat Boyan
Merhaba Mert, Evet. autodiscover kaydının Domain'in sorgulandığı DNS üzerinde oluşturulmuş olması yeterlidir.


11.11.2016 Hasan Kaba
Kardeşim eline sağlık çok faydalı bir makale olmuş.
02.09.2016 Tuncer Mert
Hocam güzel bir makele olmuş elinize sağlık ben 2007 den sonra 2016 geçiş baya beni etkiledi.Vm5.5 üzerinde DC+Exc server kurulu exchange 2016 kurdum daha ilk ayarlara geçmeden iç bünyede mail gönderme işlemine başladım send dediğimde direk draft bekletiyor tekrar denediğimde yetkiniz yoktur diye devam ediyor Office 2013 kudurum outlook dan denedim gidiyor send de gözüyor ama ne kendi nede başka iç userlara mail göndermiyor.baya büyük bir sıkıntım var yardımlarınızı bekliyorum.

28.06.2017 Fırat Boyan
Tuncer Bey, Öncelikle Exchange Serverın domain controller makinasına kurulması tavsiye edilmez. Keşke bu şekilde yapmasaydınız. Yaşadığınız sorun ile ilgili de bir incelemek gerekiyor ama şunu söyleyebilirim; DNS ipinizi bir kontrol edin. Bazen 127.0.0.1 ipsine dönüşebiliyor. Owa kullanırken aynı sorun yaşanıyor mu? Send connnector yapılandırmanızı nasıl yaptınız?