Exchange 2019 Sertifika Yapılandırması
Güncelleme: Exchange Server 2019 CU12 ve Exchange Server 2016 CU23 ile birlikte artık ara yüzden sertifika işlemleri yapamıyorsunuz. Bunun için son bölüme ekleme yaptım.
Daha fazla sertifika konusu ile ilgili bilgi için aşağıdaki makaleyi inceleyebilirsiniz;
Bundan önceki makalelerimizde Exchange Kurulumu, Accepted Domain yapılandırması, Address Policy ve Send Connector yapılandırmasını anlatmıştık. Bu makalemizde ise yine genel yapılması gerekli olan adımlardan sertifika işlemini ele alıyor olacağız. Exchange ilk kurulum anında kendi üzerindeki default sertifika ile çalışır. Bizim sisteme güvenilir bir sertifika sunucusundan sertifika alarak tanıtıp yayına geçirmemiz gerekir. Biz makale ortamımızda adımlarımızı lokalde yer alan bir sertifika sunucusundan alacağımız sertifika ile yapıyor olacağız. Adımlarımıza geçelim.
Öncelikle https://localhost/ecp https://makinaismi/ecp veya https://127.0.0.1 veya sizin dns üzerinde tanımlı olan bir kaydınız varsa login bilgilerini girerek bu adla oturum açalım.

Sertifika eklemek için yönetim konsolumuzda Servers linkinden Certificates kısmına girelim. Bu ekranda bahsetmiş olduğumuz default sertifikalar yer almakta. Biz kendi sertifikamızı ekleyip yayımlayacağımız için“+” butonuna tıklayalım.

Açılan ekranımızda bir sertifika oluşturma işlemini yapıp yapmayacağımız veya sertifika sunucusundan sertifika oluşturup oluşturmayacağımız sorulmakta. Biz bir sertifika sunucusundan sertifikamızı oluşturacağımız için ilk seçenek olan Create a request for a certificate from certification authority seçimini yaparak Next ile sonraki adıma ilerliyoruz.

Bu ekranımızda sertifikamızda kullanılacak olan isim bilgisini giriyoruz. Biz sistemimizde maillere posta.rizasahan.com adını kullanarak giriş yapacağımız için bu ismi vererek Next ile sonraki adıma ilerliyoruz.

Biz wildcard bir sertifika kullanmayacağımız için bu ekranda Next ile ilerliyoruz. Wildcard sertifika nedir konusunda aklınıza takılan olur ise aşağıdaki sozluk.cozumpark.com adresinden alınan tanım size yardımcı olacaktır.
Wildcard Sertifika : Yıldız sertifika olarak ta anılan wildcard sertifika bir domain için birden çok sertifika ihtiyacı olması halinde kullanılan bir sertifika türüdür.
Örneğin webmail.cozumpark.com, mail.cozumpark.com, autodiscover.cozumpark.com, www.cozumpark.com v.b. yani bir den çok A kaydı için sertifika kullanacak isek bu durumda bunları ayrı ayrı almak veya SAN dediğimiz Subject Alternative Name yani bir sertifika içerisinde birden çok isim olması durumundan daha ucuza gelecektir.
Zaten baktığınız zaman eğer 3 veya 4 isim gerekli ise SAN mantıklı ancak daha fazla isim gerekli ise bu durumda wildcard yani *.cozumpark.com gibi bir sertifika alabilirsiniz.
Ancak bunu bir dez avantajı fiyat dışında yani iç ve dış domain isimleri farklı ortamlarda bu sertifikayı kullanamıyoruz. Çünkü iç ve dış domain farklı olduğu durumda örneğin Exchange server gibi bir ürün için hem iç domain ismi hem de dış domain ismi kullanılıyor olmalı. Wildcard da ise tek bir isim olduğu için bu kullanılamıyor. İki tane wildcard almanızda çözüm değil çünkü tek bir servise tek bir sertifika atayabiliyoruz.
Ancak çözüm olarak SSL Offload için bir cihaz kullanıp bu cihaz üzerinde wildcard kullanıp içeride ise Exchange Server’ lara internal CA den alınmış sertifika kullanabilirsiniz.

Yapılandırılacak olan sertifikanın hangi sunucuda konumlanacağınız seçmemiz gerekmekte. Bizim ortamımızda bir sunucumuz var farklı yapılandırmalarda birden çok sunucu olabilir. Browse… butonuna tıklayarak sunucumuzu seçelim.

EXCHANGE isimli sunucumuzu seçerek OK butonuna tıklayalım.

Sunucumuz seçili duruma geldi. Next ile sonraki adıma geçebiliriz.

Specift the domains ekranında Exchange Server üzerindeki servislere ulaşım yapılacak olan adresleri belirlememiz gerekiyor. Ben tüm servisleri için “posta.rizasahan.com” adını kullanacağım. Bu işlemi dış dünya için yapacağımdan dolayı sonu intranet olan servisler hariç geri kalanları yapılandıracağım. Sırası ile başlayalım. Öncelikle Outlook Web App servisini çift tıklayarak açalım.

Karşımıza bir tanımlama yapılmamış boş bir ekran gelmekte.

Boş olan kutucuğa “posta.rizasahan.com” bilgisini giriyorum. İşlemim tamamlandığı için OK butonu ile bu adımı onaylıyorum.

Ayını işlemi AutoDiscover servisi için yapıyorum.

Bundan sonraki kullanacak olduğum adımları yine aşağıdaki resim ekranlarındaki gibi yapılandırıyorum.




Pop servisi için gelen ekrandaki default değeri siliyoruz.

Posta.rizasahan.com tanımımızı burada da yapıyoruz.

IMAP servisi için gelen ekrandaki default değeri siliyoruz.

Posta.rizasahan.com tanımımızı burada da yapıyoruz.

Son olarak Outlook Anywhere ayarımızı yapıyoruz.

Dış dünyaya hitap edecek olan servislerimizde gerekli ayarları tamamladığımıza göre Next ile sonraki adıma geçebiliriz.

Gerekli ayarları yaptıktan sonra kullanılacak olan intranet ve internet servis bilgilerimiz aşağıdaki gibi bizlere sunuldu. Bunlar üzerinde bir değişiklik yapmayacağımız için Next ile sonraki adıma geçebiliriz. Bundan sonraki süreçte sertifika oluşturma adımlarına geçiyor olacağız.

Bu ekranımızda oluşturulacak olan sertifika için aşağıdaki bilgileri eksiksiz olarak doldurmamız gerekmekte. Bilgileri doldurduktan sonra Next ile sonraki adıma geçelim.

Sertifika sağlayıcıdan sertifika alabilmemiz için gerekli olan REQ dosyası oluşturma işleminin son adımlarına yaklaştık. Bizden network üzerinde bir yol istenmekte. Ben Exchange sunucumun C: diskinde bir alana kayıt yapacağım için \\localhost\c$\Sertifika\sertifika şeklinde bir yol belirleyip son kısma ise sertifika req dosyası için ismimi veriyorum. Sizin paylaşıma açık olan bir alanınız var ise oranın yolunu vermeniz mümkün. Bu adımdan sonra Finish ile sonraki aşamaya geçebiliriz.

Bu işlemden sonra artık istek bekleyen bir sertifikamız var. Elde ettiğimiz req dosyası ile sertifika sunucudan bir sertifika elde edip bekleme durumundaki sertifikamız üzerinde bunu sisteme tanıtmamız gerekmekte.

Bu aşamada makalemizin üst kısmında belirttiğimiz gibi lokalde var olan bir sertifika sunucusu kullanıyor olacağız. Gerçek hayatta bu işi comodo v.s. gibi güvenilir bir sertifika sunucudan yapmak en mantıklı yöntem olacaktır. Ben Windows Server üzerindeki sertifika servisi konsoluma login oldum. Bu aşamadan elde edilen REQ dosyamızla bir sertifika elde edeceğimiz için öncelikle Request a certificate linkine tıklayalım.

Bir sonraki ekranda advanced certificate request linkine tıklayalım.

Bu ekranımızda ise Submit a certificate request by using a base-64-encoded CMC or PKCS #10 file, or submit a renewal request by using a base-64-encoded PKCS #7 file. Linkine tıklayalım.

Exchange sunucumuz vasıtası ile oluşturduğumuz REQ dosyamızı açalım.

Notepad üzerinde açılan sertifika req dosyasının içeriğini kopyalayalım.

Kopyalanan kodu sertifika sunucusu üzerinde Saved Request alanına yapıştırdıktan sonra, Certificate Template olarak Web Server seçimini yapıp Submit butonuna tıklayalım.

Oluşturulan REQ kod ile sertifika sunucusundan bir Web Server sertifikası istedik. İstediğimiz sertifika oluşturularak bize sağlandı. Download certificate linkine tıklayarak sertifikamızı indirelim.

Sertifikamızı rahat ulaşım sağlayacağımız bir alana kayıt edelim. Bundan sonraki işlemler Exchange sunucu üzerinde devam edeceği için ben dosyamı Exchange sunucu üzerine kayıt ediyorum. Tabi ki web base olan bir yapı olduğundan sunucuyu her yerden yönetmek mümkün bunu göz ardı etmemek lazım.

Sertifikamızı başarılı şekilde kayıt edildi.

Sertifikamızı tıklayarak detaylarını görebiliriz. Kırmızı alanda görüldüğü gibi posta.rizasahan.com alan adı için hazırlanmış, iki yıl kullanım süresi olan, lokalde yer alan sunucu üzerinden elde edilmiş bir sertifika olduğu bilgileri görülmekte.

Buraya kadar olan adımları özetlemek gerekir ise, Exchange sunucu üzerinde sertifika tanımlaması için bir istek başlattık, sertifika için kullanılacak servis alan adı bilgilerini tanımladık, sertifika içerisinde yer alacak tanımlayıcı bilgileri girdik, bir req dosyası elde ettik, req dosyasını ortamımızda yer alan sertifika sunucu üzerinde sertifikaya çevirdik.
Şimdi Pending Request durumda olan sertifikamıza elde ettiğimiz sertifikayı tanıtmamız gerekiyor. Bu işlem için sertifikamız seçili durumdayken Complete linkine tıklayalım.

Network yolu üzerinden sunucumuzda bulunan CER uzantılı dosyamızın yolunu gösterelim ve OK butonuna tıklayalım.

Sertifikamız Invalid duruma geldi. Tanıttığımız sertifikamızı ilgili servislere yayımlamamız gerekmekte. Bu işlem için sertifikamıza çift tıklatalım.

Açılan General ekranda sertifika bilgilerimiz gözükmekte. Biz Services linkine tıklayalım.

Açılan ekranda sertifika kullanacak olan servisleri seçmemiz gerekmekte. Ben tüm servisleri kullanacağım için hepsini seçiyor ve Save butonuna tıklıyorum.

Mevcut sertifika üzerine bir yazma olacağı için uyarı geldi.Yes butonuna tıklayarak bunu geçelim.

Bu ekranlarda işimiz bitti Cancelile kapatabiliriz.

Sertifikamız hazır duruma geldi.

Outlook Web Access ekranına login olduğumuzda durum aşağıdaki gibi oldu.

Umarım yararlı olur. Bir başka makalede görüşmek dileğiyle.
Exchange Server 2019 CU12, Exchange Server 2016 CU23 sonrası için PS değişiklikleri aşağıdaki gibidir;
Import-ExchangeCertificate içerisindeki “FileName” parametresi artık yok. Onun yerine “FileData” kullanmanız gerekli.
Örnek
FileData ([Byte[]]$(Get-Content -Path “” -Encoding byte))
Export-ExchangeCertificate içerisindeki “FileName” parametresi artık yok.Onun yerine “FileData” kullanmanız gerekli.
Örnek
$cert = Export-ExchangeCertificate
Thumbprint
Password
BinaryEncoded
Set-Content -Path “” -Value $cert.FileData -Encoding byte
New-ExchangeCertificate içerisindeki “RequestFile” parametresi artık yok. Onun yerine “Set-Content” parametresini kullanabilirsiniz.
Örnek
$request = New-ExchangeCertificate
GenerateRequest
SubjectName “”
DomainName
Set-Content -Path “” -Value $request
Eline sağlık kardeşim