OWA ve ECP erişim sorunu: Microsoft Exchange Server Auth Certificate is expired

Seyda Unver

Nedir bu Microsoft Exchange Server Auth Sertifikası

Son zamanlarda OWA ve ECP erişimlerinde aşağıdakine benzer hatalar alındığına dair çok problem kaydı gelmektedir. Bunun nedenini incelediğimizde Microsoft Exchange Server Auth Certificate isimli sertifikanın expire olması neden olmaktadır.

'Federation or Auth certificate not found: "Certificates-thumbprint." Unable to find the certificate in the local or neighboring sites. Confirm that the certificate is available in your topology and if necessary, reset the certificate on the Federation Trust to a valid certificate using Set-FederationTrust or Set-AuthConfig. The certificate may take time to propagate to the local or neighboring sites.'

Bu hata Exchange Server Auth Sertifikasının expire (süresinin dolması) olması nedeni ile oluşmuştur.

Microsoft Exchange Auth Certificate Nedir?

Microsoft Exchange Server Auth Sertifikası Exchange Server kurulumu gerçekleştiğinde otomatik olarak oluşturulur. Self-signed bir sertifikadır ve 5 yıl aktiflik süresi bulunur. Her yeni Exchange sunucu kurulduğunda bu sertifika yeni sunucuya da otomatik olarak kopyalanır.

Exchange'in Shrepoint, Lync ve daha fazlası gibi diğer sunucularla bağlantısı ve kimlik doğrulaması için tasarlanmıştır. Fakat Exchange servislerinin kendi arasındaki ve ADFS üzerinden gelen bağlantıda authentication amaçlı da kullanılmaktadır.

Microsoft Exchange Auth Certificate Kontrolü

Yukarıdaki nedenlerden dolayı bu sertifikanın kontrolü çok önemli olmaktadır. Bu sertifika Exchange organizasyon içindeki tüm sunucularda bulunmalıdır ve yenilemesi otomatik olmamaktadır.

Exchange Admin Center (Exchange Yönetim Merkezi)> Servers >Certificate üzerinde görüntülenebilir.

Exchange Auth Certificate kontrolünü Exchange Management Shell üzerinden de görüntüleyebiliriz.

Exchange Management Shell->Run as Administrator olarak açılır ve aşağıdaki komut çalıştırılır.

[PS] C:>(Get-AuthConfig).CurrentCertificateThumbprint | Get-ExchangeCertificate | Format-List

Komutu ile Exchange Auth Certificate görüntülenebilir. Aşağıdaki örnekte sertifika durumu geçerlidir. Status ve Not After değerleri kontrol edilmelidir.

(Status:Valid)

Status : Invalid olması durumunda sertifikanın geçersiz olduğu görülür.

Bu sertifikanın konfigürasyondaki yeri,

Nasıl Yenilenir?

Exchange sunucuları için yeni bir sertifika oluşturmak için Exchange Management Shell cmdlets üzerinden aşağıdaki komutlar çalıştırılır.

  1. Yeni Sertifika oluşturmak için aşağıdaki komut çalıştırılmalıdır.

New-ExchangeCertificate -KeySize 2048 -PrivateKeyExportable $true -SubjectName "cn=Microsoft Exchange Server Auth Certificate" -FriendlyName "Microsoft Exchange Server Auth Certificate" -DomainName @()

Bu adımda sertifika thumprint değerini kopyalanmalıdır. Bir sonraki adım için gereklidir.

Yeni oluşturulan sertifika Exchange Admin Center üzerinde görüntülenebilir. Aşağıdaki örnekte expires on tarihi ve thumbprint değerinin değiştiği görülmektedir.

Not: Oluşturulan sertifika tüm Exchange sunucularında oluşturulacaktır. (Kuruluşta çalışan birden fazla Exchange Sunucu varsa)

  1. Sunucu authentication için yeni sertifika ayarları için aşağıda komutlar çalıştırılır.

Yeni sertifika thumbprinti: A58997D054CC7BF38F0171A2E82BB2CCA482A31A

Set-AuthConfig -NewCertificateThumbprint <ThumbprintFromStep1> -NewCertificateEffectiveDate (Get-Date)

Set-AuthConfig parametresi, Microsoft Exchange Microsoft SharePoint ve Microsoft Lync veya Skype for Business Server gibi diğer ortak uygulamalarıyla sunucudan sunucuya kimlik doğrulaması sağlar.

Sertifika thumbprint değeri ilgili alana yapıştırılarak komut çalıştırılır.

Set-AuthConfig -PublishCertificate

PublishCertificate parametresi, belirtilen sertifikanın hemen geçerli sertifika olarak devredileceğini belirtir. Sertifika, tüm Client Access sunucularına hemen dağıtılır.

Set-AuthConfig -ClearPreviousCertificate

ClearPreviousCertificate parametresi, yetkilendirme yapılandırmasında önceki sertifika olarak kaydedilen sertifikayı siler.

Konfigurasyonun son hali;

Bu değişikliğin yansıması 4-5 saat kadar sürebiliyor. Nispeten hızlandırmak için sunucularda MsExchangeServiceHost ve IIS servisleri restart edilir.

Get-ExchangeServer | %{Invoke-Command -ComputerName $_.Name -ScriptBlock {Restart-Service MsExchangeServiceHost}}

Get-ExchangeServer | %{Invoke-Command -ComputerName $_.Name -ScriptBlock {REstart-WebAppPool MsExchangeOwaAppPool}}

Get-ExchangeServer | %{Invoke-Command -ComputerName $_.Name -ScriptBlock {REstart-WebAppPool MsExchangeEcpAppPool}}

  1. Eski Microsoft Exchange Auth Sertifikasının Kaldırılması

Eski sertifika Exchange Admin Center ya da Powershell komutları ile kaldırılabilir.

Her Exchange sunucusunda yalnızca bir Microsoft Exchange Auth Certificate bulunmalıdır. Bu sebeple seçili sertifika ortamdan kaldırılmalıdır.

Powershell ile kaldırılması:

Eski sunucu thumbprint değeri: 36F81DB7DF7FAE5F612FBACF055D9B0953E09752

Remove-ExchangeCertificate -Thumbprint 36F81DB7DF7FAE5F612FBACF055D9B0953E09752

Last updated