Bir önceki makalemde sizlere Virtual Directory URL yapılandırma işlemlerinden bahsetmiştim. Sıra, Exchange Server 2019 kurulum sonrası yapılandırma ayarlarının en önemli konularından birisi olan, SSL sertifika yapılandırma işlemine geldi. Oluşturduğumuz 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 amacıyla SSL sertifika kullanımı ş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 EAC (Exchange 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 (Autodiscover)
www.firatboyan.com (Web)
ftp.firatboyan.com (Web)
Wildcard SSL sertifika yapılandırma işlemlerini iki aşamada ilerleteceğiz. Öncesinde Wildcard SSL Sertifika Request (CSR) oluşturma işlemini tamamlayacak, sonra da bu Request ile satın aldığımız sertifikanın tanımlanması işlemi ile sertifika yapılandırma işlemimizi tamamlamış olacağız.
1- Wildcard SSL Sertifika Request (CSR-Certificate Signing Request) Oluşturma
1.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.
1.2- Karşıma çıkan pencerede Create a request from a certificate authority seçeneğini seçiyor, Next butonuna basarak devam ediyorum.
1.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.
1.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.
1.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.
1.6- Ortamımda bulunan EXCHSRV01 Host Name'li sunucuyu seçiyor, OK butonuna basıyorum.
1.7- SSL sertifika Request'ini üzerinde tutacağım sunucuyu seçtikten sonra Next botonuna basarak devam ediyorum.
1.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.
1.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.
1.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.
1.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.
1.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.
1.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.
2- Wildcard SSL Sertifika Tanımlama
2.1- SSL sertifika Request'imi (CSR) 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.
2.2- 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.
2.3- 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.
2.4- Açılan pencerede services altında SMTP ve IIS servislerini seçip, Save butonuna basıyorum.
2.5- 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.
2.6- İlgili servislerin tanımladığımız sertifikaya atandığını, sertifikamızın durumunun da Valid yani geçerli olduğunu görebiliyorum.
2.7- 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.
2.8- 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.
Bunun için öncelikle IIS Manager'ı açıyor, Server Certificates altında sertifikamın oluştuğunu görüyorum.
2.9- Default Web Site (Front End Transport-CAS) üzerine tıklayıp, sağ bölümde Bindings... Link'ine tıklıyorum.
2.10- Https için oluşturulmuş olan Site Bindigs yapısı alaşağıdaki gibidir.
2.11- 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.
2.12- 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.
2.13- 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.
Faydalı olması dileğiyle...
TAGs: SSL sertifikası nedir?, Wildcard sertifika nedir?, Exchange Server'da SSL sertifikası nasıl yüklenir?, CSR nedir?, CSR nasıl oluşturulur?, Wildcard sertifika isteği nasıl oluşturulur?, PXF sertifika nedir?
Her türlü görüş ve önerilerinizi aşağıdaki yorum panelinden bırakabilir, kafanıza takılanları veya merak ettiklerinizi sorabilirsiniz.