Exchange 2013,2016 Anti-spam koruması için RBL Filters yapılandırması


Bu makalede, Exchange 2016 ve 2013’te RBL filtrelerinin nasıl yapılandırılacağına bakacağız. RBL’nin ne olduğunu hatırlayalım. RBL (Realtime Blackhole List), spam gönderen olarak işaretlenen posta sunucularının IP adreslerinin bir listesini içeren veritabanını depolayan bir hizmettir. RBL, en çok DNS protokolü üzerinden erişildiğinden, bu hizmetlere DNSBL (DNS Block Lists) adı da verilir.

Bilinmeyen bir göndericiden e-posta alırken, e-posta sunucusu bu listeleri otomatik olarak kontrol edebilir ve e-postayı RBL servis veritabanında listelenen IP adreslerinden engelleyebilir. Gönderenin adresi RBL listelerinden birinin değeriyle eşleşirse, Exchange sunucunuz RCPT TO komutuna yanıt olarak 550 5.xx SMTP hata iletisini döndürür ve gönderen bir teslim edilmedi raporu (NDR) alır.

Exchange 2013 ve 2016’da, Connection Filtering Agent, IP adres listelerine dayalı bağlantıları engellemekten sorumludur. Connection Filtering Agent şunları içerir;

  • IP Block Lists – e-postanın kabul edilmemesi gereken bir IP adresi listesi (engellenen gönderenler)
  • IP Allow Lists – white list IP adresi listesi (izinli gönderenler)
  • RBL Providers – RBL sağlayıcılarının listesi

İlk iki liste statiktir ve Exchange yöneticisi tarafından manuel olarak yapılandırılır. RBL sağlayıcılarının listesi, bir e-posta mesajı alırken kontrol edilecek üçüncü taraf RBL hizmetlerinin listesini içerir.

Exchange 2013/2010’da, anti-spam filtrelemesi Install-AntispamAgents.ps1 betiği kullanılarak etkinleştirilebilir. Exchange 2013’te transport rolü iki bileşene ayrılır. Front End Transport ve Back End Transport ile anti-spam filtering özelliği iki bölüme ayrılmıştır. Front End server, Connection Filtering gerçekleştirir. Back End server Content Filtering (içerik filtreleme) yapar.

Exchange 2013’te, CAS ve Mailbox rolleri aynı sunucuya kurulursa, Install-AntispamAgents.ps1 betiği yalnızca Content Filtering (içerik filtreleme) aracısını yükler. Bu, RBL filtrelemenin kullanılamayacağı anlamına gelir.

Connection Filtering Agent’ı yüklemek için, Install-TransportAgent cmdlet’ini kullanabilirsiniz.

Install-TransportAgent -Name “Connection Filtering Agent” -TransportService FrontEnd -TransportAgentFactory “Microsoft.Exchange.Transport.Agent.ConnectionFiltering.ConnectionFilteringAgentFactory” -AssemblyPath “C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\agents\Hygiene\Microsoft.Exchange.Transport.Agent.Hygiene.dll”

Exchange 2016’da, tüm roller (Edge Transport hariç) birleştirildiğinden, Edge Transport rolüne atanmış bir sunucunuz yoksa, antispam agent’larını install-AntispamAgents.ps1 komut dosyasını kullanarak tüm sunucularda yüklemeniz gerekir. Ardından, Exchange Transport hizmeti için, spam kontrolü yapılırken göz ardı edilmesi gereken iç SMTP sunucularının adreslerini belirtmelisiniz.

Set-TransportConfig -InternalSMTPServers @{Add=”192.168.1.25″,”192.168.101.25″}

Aracı yüklendikten sonra etkinleştirmeniz ve Front End Transport servisini yeniden başlatmanız gerekir.

Enable-TransportAgent -TransportService FrontEnd -Identity “Connection Filtering Agent”
Restart-Service MSExchangeFrontEndTransport

Connection Filtering Agent’ın yüklendiğinden ve çalıştığından emin olmak için aşağıdaki komutu kullanabilirsiniz.

Get-TransportAgent -TransportService FrontEnd

Daha sonra kullanılacak RBL sağlayıcılarının bir listesini belirtmeliyiz.

Add-IPBlockListProvider -Name zen.spamhaus.org -LookupDomain zen.spamhaus.org -AnyMatch $true -Enabled $True

Gönderene geri gönderilen NDR mesajının metnini değiştirmek için bu komutu uygulayın.

Set-IPBlockListProvider zen.spamhaus.org -RejectionResponse “Your IP address is listed by Spamhaus Zen. You can delete it on page http://www.spamhaus.org/lookup/”

Ticari kullanım politikalarını inceleyerek aynı anda birden fazla RBL sağlayıcısı ekleyebilirsiniz. Kullanılmakta olan RBL listesini aşağıdaki gibi görüntüleyebilirsiniz.

Get-IPBlockListProvider

Belirli bir IP adresinin RBL listesinde olup olmadığını aşağıdaki komutu kullanarak kontrol edebilirsiniz.

Test-IPBlockListProvider -Identity zen.spamhaus.org -IPAddress x.x.x.x

Varsayılan olarak Connection Filter günlükleri aşağıdakı klasörde tutulur.

C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\AgentLog

Bu dizinde *.log dosyalarında arama yaparak, RBL sağlayıcılarından hangisinin e-postayı reddettiği hakkında bilgi alabilirsiniz. Belirtilen e-posta adresine sahip günlük dosyasını bulmak için, cmd’yi açın ve aşağıdaki komutları çalıştırın.

Cd “C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\AgentLog”
find /c “spam@gmail.com” *.log | find “:” | find /v “: 0”

Ardından bulunan *.log dosyasını herhangi bir metin düzenleyicide açın. E-postayı engelleyen RBL sağlayıcısını tespit etmek için reddedilen e-posta adresini arayın.

Bu örnek, spam@gmail.com adresinden gelen e-postanın Exchnage sunucunuzda RBL sağlayıcısı zen.spamhaus.org tarafından reddedildiğini gösterir.

spam@gmail.com,,user@teknolojikadam.com,1,Connection Filtering Agent,OnRcptCommand,RejectCommand,”550 5.7.1 Recipient not authorized, your IP has been found on a block list”,BlockLictProvider,zen.spamhaus.org,,,

İlk bilgi toplandıktan sonra (SMTP trafiğinin boyutuna bağlıdır ve genellikle 2-3 güne kadar sürer), RBL filtreleme istatistikleri Get-AntispamTopRBLProviders.ps1 cmdlet’ini kullanarak görüntülenebilir.

.\get-AntispamTopRBLProviders.ps1 -location “C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\AgentLog”

RBL filtrelemeyi ilk kez kullanmaya başladığınızda, güvenilir adreslerden iletilen e-postaları engellememek için filtreleme kayıtlarını hatalı pozitifler için dikkatle incelemeniz gerekir. Spam filtrelemeyi atlamak için güvenilir e-posta adresini veya etki alanını Exchange white listesine ekleyebilirsiniz.

Set-ContentFilterConfig -BypassedSenderDomains contoso1.com, contoso2.net,contoso3.co.uk

Belirli bir SMTP sunucusunun IP adresini trusted listesine ekleyebilirsiniz.

IPAllowListEntry -IPAddress x.x.x.x

Ek olarak, aşağıdaki önceden yüklenmiş PowerShell scriptleri, Connection Filtering Agent tarafından e-posta filtreleme istatistiklerini elde etmek için kullanılabilir.

  • get-AntispamFilteringReport.ps1
  • get-AntispamSCLHistogram.ps1
  • get-AntispamTopBlockedSenderDomains.ps1
  • get-AntispamTopBlockedSenderIPs.ps1
  • get-AntispamTopBlockedSenders.ps1
  • get-AntispamTopRBLProviders.ps1
  • get-AntispamTopRecipients.ps1

Gelen e-posta filtresini devre dışı bırakmak için Connection Filtering Agent’ı devre dışı bırakmanız gerekir.

Disable-TransportAgent -TransportService FrontEnd -Identity “Connection Filtering Agent”

RBL listeleri istenmeyen e-postalardan korunmak için oldukça etkilidir. Ancak çoğu durumda, istenmeyen e-postalardan korunma sağlamak için diğer istenmeyen e-postadan korunma yöntemleriyle birlikte kullanılması gerekir.

KAYNAKEXCHANGE