
Ocak 2023‘te sunulan Exchange Server Security Update (SU) ile birlikte “Certificate Signing of PowerShell Serialization Payload” özelliği eklendi. Microsoft, Serialization Payload’ı yöneticilerin ilk yükleme sırasında aktif etmeleri gerektiğini duyurdu. Bu gereklilik, Serialization Payload özelliğinin AuthCertificate‘a ihtiyaç duymasından kaynaklanıyor. Exchange Server’da AuthCertification ile ilgili bir sorun varsa, sistem çeşitli sorunlar yaşayabilir.
Daha önce Auth Certificate kaynaklı OWA ve ECP erişim problemi ile ilgili makalede Exchange Server Auth Certificate’den bahsetmiştik.
Microsoft, Exchange Server Auth Certificate sorunlarını çözmek için bir GitHub sayfasında bir script yayınladı. Bu script, Serialization Payload etkinleştirmesi yapmadan önce çalıştırılmalıdır. Eğer ortamınızda Auth Certificate sorunu yoksa bu scripte ihtiyaç duyulmaz.
İçindekiler
Exchange Server Auth Certificate Script için Gereksinimler
Bu script, yalnızca Exchange Server’ın Posta Kutusu rolünü çalıştıran sunucularda ve yükseltilmiş bir Exchange Management Shell (EMS) komut isteminden çalıştırılabilir. Scriptin kullanımı için ilgili rol grubunun bir üyesi olmanız gerekmektedir.
Exchange Server Auth Certificate Scripti Nasıl Kullanılır
Eğer sertifikaya güveniyorsanız, bu script ile doğrulama işlemi yapabilirsiniz. Doğrulama işlemi için herhangi bir ekstra parametre kullanmanız gerekmez. Script, yapılan her işlemi Exchange Server kurulum dizini içinde bulunan LoggingAuthCertificateMonitoring
klasörü altında .txt
formatında kaydeder.
.MonitorExchangeAuthCertificate.ps1

Script çalıştırıldıktan sonra, log dosyasını kaydettiği yol gösterilir. Kendi ortamımda yaptığım incelemelerde tüm Auth Sertifikalarının doğru ve çalışır durumda olduğunu teyit ettim.

Exchange Server’da aktif olan Auth Certificate yenilemesi için aşağıdaki komut kullanılabilir. Bu komut, WebApp havuzlarını da yeniden başlatarak yenileme işlemi yapar:
.MonitorExchangeAuthCertificate.ps1 -ValidateAndRenewAuthCertificate $true
Komut ilk çalıştığında “Y” olarak yanıt verilirse, script katılımsız olarak çalışmaya başlar. Etkin Kimlik Doğrulama Sertifikası değiştirildiğinde WebApp havuzlarının yeniden başlatılması önerilir. Local SMTP sertifikasının yeni oluşturulan Kimlik Doğrulama Sertifikası ile değiştirilmesi önerilmez.

Etkin Kimlik Doğrulama Sertifikası değiştirildiğinde WebApp Pool geri dönüştürülmesi önerilir. ‘Y’ ile yanıt vermelisiniz.

Local aktarım sertifikasının yeni oluşturulan Kimlik Doğrulama Sertifikası ile değiştirilmesi önerilmez. ‘N’ ile yanıt vermelisiniz.

Bu komut dosyası, kullanıcı etkileşimi olmadan yenileme modunda çalışır ve gerekli Kimlik Doğrulama Sertifikası yenileme işlemini gerçekleştirir. Katılımsız modda, iç SMTP sertifikası yeni Kimlik Doğrulama Sertifikası ile geçici olarak değiştirilir ve ardından eski sertifikaya geri döndürülür. Komut dosyası ayrıca, birincil Kimlik Doğrulama Sertifikası değiştirildiğinde MSExchangeServiceHost, MSExchangeOWAAppPool ve MSExchangeECPAppPool gibi hizmetleri ve WebApp Havuzlarını yeniden başlatır.
Not: Eğer komut dosyası çalıştırıldığı makinede önceden yapılandırılmış bir iç aktarım sertifikası bulamazsa, yeni bir iç aktarım sertifikası oluşturur.
.MonitorExchangeAuthCertificate.ps1 -ValidateAndRenewAuthCertificate $true -Confirm:$false
Aşağıdaki komut, kullanıcı etkileşimi olmadan yenileme modunda çalıştırılır. Bu mod, Exchange sunucularını yalnızca erişilebilir olduklarında dikkate alır ve gerekirse yenileme eylemini gerçekleştirir:
.MonitorExchangeAuthCertificate.ps1 -ValidateAndRenewAuthCertificate $true -IgnoreUnreachableServers $true -Confirm:$false
Bu komut dosyası, kullanıcı etkileşimi olmadan yenileme modunda çalışır ve yenileme eylemi, Exchange Hybrid yapılandırması algılandığında bile gerçekleştirilir:
Not: Etkin Kimlik Doğrulama Sertifikası değiştirildikten sonra, Hybrid Yapılandırma Sihirbazı’nı (HCW) yeniden çalıştırmanız gerekir. Bu, yenilenen sertifikayla uyumlu olmasını sağlamak için önemlidir.
.MonitorExchangeAuthCertificate.ps1 -ValidateAndRenewAuthCertificate $true -IgnoreHybridConfig $true -Confirm:$false
Exchange Server Auth Certificate Script Parametreleri
Parametre | Tarif |
---|---|
ValidateAndRenewAuthCertificate | Bu isteğe bağlı parametre, geçersiz/süresi dolmuş bir Kimlik Doğrulama Sertifikasının yerini almak için gerekli eylemleri gerçekleştirecek doğrulama ve yenileme modunu etkinleştirir veya geçerli Kimlik Doğrulama Sertifikasının süresi 60 günden < içinde dolarsa veya bir sonraki Kimlik Doğrulama Sertifikası olarak yapılandırılan sertifikanın süresi < 120 gün içinde dolarsa yeni bir sonraki Kimlik Doğrulama Sertifikası yapılandırır. |
IgnoreUnreachableServers | Bu isteğe bağlı parametre, kuruluş içindeki Exchange sunucularından bazılarına erişilememesi durumunda yoksaymak için kullanılabilir. Bu parametre kullanılırsa, komut dosyası yalnızca erişilebilen sunucuları doğrular ve sonuca göre Kimlik Doğrulama Sertifikası yenileme eylemleri gerçekleştirir. Parametre, parametreyle birleştirilebilir ve komut dosyasını zamanlanmış görev aracılığıyla çalışacak şekilde yapılandırmak için parametreyle birlikte de kullanılabilir.IgnoreHybridConfig ConfigureScriptToRunViaScheduledTask |
IgnoreHybridConfig | Bu isteğe bağlı parametre, Exchange karma yapılandırması algılanmış olsa bile Kimlik Doğrulama Sertifikası yenileme eylemlerini (gerekirse) açıkça gerçekleştirmenize olanak tanır. Yenilenen Kimlik Doğrulama Sertifikası kullanımda olan Sertifika haline geldikten sonra HCW’yi çalıştırmanız gerekir. Parametre, parametreyle birleştirilebilir ve komut dosyasını zamanlanmış görev aracılığıyla çalışacak şekilde yapılandırmak için parametreyle birlikte de kullanılabilir.IgnoreUnreachableServers ConfigureScriptToRunViaScheduledTask |
PrepareADForAutomationOnly | Bu isteğe bağlı parametre, AD Bölünmüş İzin senaryolarında kullanılabilir. Daha sonra Görev Zamanlayıcı aracılığıyla Exchange Kimlik Doğrulama Sertifikası İzleme komut dosyasını otomatik olarak çalıştırmak için kullanılabilecek AD hesabı oluşturmanıza olanak tanır. |
ADAccountDomain | Bu isteğe bağlı parametre, daha sonra komut dosyası tarafından otomasyon için kullanılan AD hesabını oluşturmak için kullanılacak etki alanını belirtmenize olanak tanır. Parametre, parametre ile birleştirilebilir.PrepareADForAutomationOnly |
ConfigureScriptToRunViaScheduledTask | Bu isteğe bağlı parametre, AD (kullanıcı hesabı), Exchange (e-postayla hesabı etkinleştirme, hesabı adres defterinden gizleme, sınırlı izinlere sahip yeni bir rol grubu oluşturma) gereksinimlerini otomatik olarak hazırlamak için kullanılabilir ve son olarak komut dosyasının yürütüldüğü bilgisayarda zamanlanmış görevi oluşturur (posta kutusu rolünü çalıştıran bir Exchange sunucusu olmalıdır). |
AutomationAccountCredential | Bu isteğe bağlı parametre, bağlamı altında komut dosyasının zamanlanmış görev aracılığıyla yürütüldüğü farklı bir kullanıcı sağlamak için kullanılabilir. |
Password | Bazı senaryolarda gerekli olan komut dosyasına bir parola sağlamak için parametre. |
ExportAuthCertificatesAsPfx | Bu isteğe bağlı parametre, sistemde bulunan tüm Kimlik Doğrulama Sertifikalarını parola korumalı .pfx dosyası olarak dışa aktarmak için kullanılabilir. |
ScriptUpdateOnly | Bu isteğe bağlı parametre, başka herhangi bir eylem gerçekleştirmeden yalnızca komut dosyasını güncelleştirmenize olanak tanır. |
SkipVersionCheck | Bu isteğe bağlı parametre, komut dosyasının en son sürümünü indirmek üzere Otomatik Güncelleştirme özelliğini atlamak için kullanılabilir. |