Windows Server 2012 R2 / 2016 / 2019 gibi yeni nesil işletim sistemlerinde ve yine Windows 8.1 sonrasındaki istemci makinelerde varsayılan olarak uzak erişim için NLA (Network Level Authentication) açık gelir. Bu durumda bir sonraki logon işleminde şifre süresi dolmuş yani logon sırasında şifresini değiştirmesi gereken bir kullanıcı RDP ile bağlantı kuramamaktadır. Aşağıdaki gibi bir uyarı alabilirsiniz
Bu durumda NLA özelliğini kapatabilirsiniz, ancak tavsiyem bunu kapatmamanızdır, çünkü güvenlik için bu önemli bir özelliktir. Peki çözüm nedir? Aslında basit, server 2012 R2 ve sonrasında terminal server hizmetlerinde RD Web özelliği sayesinde kullanıcılar bir web ara yüzü üzerinden şifresini değiştirebilir.
Bunun için öncelikle RD Web rolü hangi sunucu ise ona bağlanıp IIS konsolunu açıyoruz;
Sites – Default Web Site – RDWeb – Pages
Bu bölüme tıkladıktan sonra IIS konsolunda orta bölümde aşağıdaki gibi Application Settings linkini göreceksiniz.
Buna tıklıyoruz.
Açılan menüde “PasswordChangeEnabled” bölümünü true olarak güncelliyoruz.
Ardından iisreset komutu ile IIS’ i yeniden başlatıyoruz.
Aynı işlemi aşağıdaki gibi powershell ile de yapabilirsiniz;
$webconfig = ‘C:\Windows\Web\RDWeb\Pages\Web.config’
$doc = (Get-Content $webconfig) -as [Xml]
$obj = $doc.configuration.appSettings.add | where {$_.Key -eq ‘PasswordChangeEnabled’}
if ($obj.value -eq ‘false’) {
$obj.value = ‘true’
}
$doc.Save($webconfig)
Ve sonra aşağıdaki gibi URL adresine ulaşıyoruz;
https://sunucuismi/RDWeb/Pages/en-US/password.aspx
Kullanıcılar öncelikle şifrelerini burada değiştirdikten sonra logon olabilirler.
Eğer bu şekilde URL paylaşmak istemiyorsanız aşağıdaki gibi logon ekranını güncelleyebiliriz. Aşağıdaki ekran varsayılan ekrandır;
Aşağıdaki dizine gidiyoruz;
c:\Windows\Web\RDWeb\Pages\en-us\
Login.aspx dosyasını not defteri ile açıyoruz ve aşağıdaki alana bir ekleme yapıyoruz. Bende bu 647. Satır örneğin bu şekilde arama yaparsanız ilgili yeri kolay bulursunuz; <%=L_PrivateWarningLabel_Text%></span></td>
Eklediğimiz satır aşağıdaki gibidir;
<a href=”https://sunucuismi/RDWeb/Pages/en-US/password.aspx”> Sifre Resetleme</a>
IISRESET işleminden sonra ise artık logon ekranında da şifre resetleme linkimiz oluyor. HTML biliyorsanız zaten sizde kodu istediğiniz gibi güncelleyebilirsiniz.
Not: 2008 R2 sunucu ortamınız var ise aşağıdaki yama sonrasında da benzer şekilde şifre değişiklik işlemlerini yapabilirsiniz;
Umarım faydalı bir paylaşım olmuştur. Bir sonraki yazımda görüşmek üzere.