Exchange Server Google Recaptcha Eklemek

Exchange server OWA/ECP sayfalrınızın  Login ekranına Google Recaptcha konumlandırarak BruteForce saldıralara karşı koruyabilirisiniz. Üstelik bu toolu aşağıdaki adımları inceleyerek Google api sayesinde ücretsiz konumlandırabilirisiniz.

İlk olarak Google Hesabımızla oturum açıyoruz. Sonra linke tıklıyarak  Google Recaptcha için ayarları kendi domain yapımıza göre düzenliyoruz.Alan adları kısmına Localhost’un altına Kendi Exchange adresinizi girmeniz gerekmektedir. örneğin; mail.tahsinmete.com

İlgili alanları doldurduruyoruz. Yukarıdaki resimde öenmli olan ALAN ADLARI Yazan Kısımdır.  Sonrasında bize reRecaptcha anahtarları yazan yerde  SITE KEY ve SECRET KEY olmak üzere iki adet key oluşturmaktadır. Bu değerleri not almalıyız.

Sonra Exchange Sunucumuzda aşağıdaki dizine gitmemiz gerekiyor.

C:\Program Files\Microsoft\Exchange Server\V15\FrontEnd\HttpProxy\owa\auth

recaptcha.aspx uzantılı bir note defteri oluşturuyoruz. Sonrasında içerisine aşağıdaki kod satırımızı ekliyoruz ve “SECRET KEY” yazan alana Google Recaptcha alanında oluşturduğumuz secret keyimizi girip dosyamızı kaydediyoruz.

<% @ Page AspCompat=True Language = "VB" %>
<%
Dim strPrivateKey As String = "SECRET_KEY"
Dim strResponse = Request("response")
Dim objWinHTTP As Object
objWinHTTP = Server.CreateObject("WinHTTP.WinHTTPRequest.5.1")
objWinHTTP.Open("POST", "https://www.google.com/recaptcha/api/siteverify", False)
objWinHTTP.SetRequestHeader("Content-type", "application/x-www-form-urlencoded")
Dim strData As String = "secret=" & strPrivateKey & "&response=" & strResponse
objWinHTTP.Send(strData)
Dim strResponseText = objWinHTTP.ResponseText
Response.Write(strResponseText)
%>

Exchange Server OWA/ECP oturum açma sayfasını yapılandırma

Değişiklikleri geri almanız gerekmesi ihtimaline karşı logon.aspx dosyasının bir yedeğini alın. logon.aspx dosyasını kopyalayın ve logon.aspxbackup olarak yeniden adlandırın.

logon.aspx dosyasını Not Defteri ile açın ve aşağıdakileri gibi değiştirin:
Note defterinde aşağıdaki parametreyi aratıyoruz;
<form action="/owa/auth.owa"
  Dğiştirildikten sonraki Hali; <form action=""




 2. değiştirilmesi gereken parametre;
<div onclick="clkLgn()"

  Dğiştirildikten sonraki Hali;
<div onclick="myClkLgn()"



Burasını yaparken biraz dikkat etmemiz gerekiyor;

Aranacak kelime;
<div><input id="passwordText"
 

Ardından Enter düğmesine basın ve birkaç boş satır oluşturun.

Boşluğa aşağıdaki komut dizilimini yapıştırın;

<script type="text/javascript">
function myClkLgn()
{
var oReq = new XMLHttpRequest();
var sResponse = document.getElementById("g-recaptcha-response").value;
var sData = "response=" + sResponse;
oReq.open("GET", "/owa/auth/recaptcha.aspx?" + sData, false);
oReq.send(sData);
if (oReq.responseText.indexOf("true") != -1)
{
document.forms[0].action = "/owa/auth.owa";
clkLgn();
}
else
{
alert("Invalid CAPTCHA response");
}
}
</script>
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
<div class="g-recaptcha" data-sitekey="SITE_KEY"></div>
Aşağıdaki resimde olduğu gibi gözükmelidir. Kaydedip not defterini kapatıyoruz.




Exchange Server'da IIS'yi yeniden başlatmanıza gerek yoktur ve Google reCAPTCHA hemen Exchange Server OWA/ECP 
sayfasında görünecektir.

Olmadığını varsayalım, Komut İstemi'ni yönetici olarak başlatın ve Exchange Server'da 
Internet Information Services'ı (IIS) yeniden başlatın.

iisreset
Exchange Server OWA/ECP'yi Google reCAPTCHA ile doğrulayın