Forum

Exchange 2010 Admin...
 
Bildirimler
Hepsini Temizle

[Çözüldü] Exchange 2010 Administrator Audit Logging İşlemleri

5 Yazılar
5 Üyeler
0 Reactions
1,199 Görüntüleme
Hakan Uzuner
(@hakanuzuner)
Gönderiler: 33856
Illustrious Member Yönetici
Konu başlatıcı
 
[#304102]

Exchange Server 2010 ile beraber gelen yönetici günlükleri sayesinde, sistem adminlerinin exchange server üzerinde neler yaptığını takip edebiliyoruz. Bu özellik hakkında detaylı makale ÇözümPark Bilişim Portalı üzerinde yayınlandığı için ben temel özellikleri ve çalışma yapısından öte karşılaştığım bir ihtiyaç sonrası bulduğum bir poweshell komut seti ve onun üzerindeki oynamalar hakkında bilgi vereceğim.

Öncelikle bu PowerShell komut seti Exchange Server 2010 SP1 ortamında test edilmiştir. İndirmek için aşağıdaki linki kullanabilirsiniz

Bu komut seti varsayılan olarak son 10 günlük yönetici hareketlerini html formatında bizlere mail atmaktadır.

Kullanımı ise son derece kolaydır.

Bu powershell komut satırında ilk olarak execution policy ayarını değiştiriyoruz

set-executionpolicy -scope CurrentUser -executionPolicy Unrestricted

Bu izin işleminin arından komutu çalıştırıyoruz

.\AuditLogReport.ps1 -To hakan.uzuner@cozumpark.local -From adminauditlog@cozumpark.local -SmtpServer 10.10.10.100
set-executionpolicy -scope CurrentUser -executionPolicy RemoteSigned

Not; Bu komutu ben Exchange Server Mailbox rolü üzerinde çalıştırdım ve smtp server ip adresi olarak Hubtransport server ip adresini yazdım. Eğer yapınız daha küçük ise yani tek bir sunucu üzerinde tüm roller yüklü ise buraya komutu çalıştırdığınız ve zaten tek olan smtp server ip adresini yazıyor olmalısınız.

Not; Bu komutu powershell ps1 dosyasının olduğu dizinde çalıştırıyoruz.

Bunun ardından raporun hazırlanması biraz zaman alacaktır. Bu süre aslında istemiş olduğunuz kayıtların sayısı yani tarih aralığı ile doğru orantılıdır.

Bu bölüme kadar aslında standart bilgiler paylaştım diyebilirim.

Bundan sonra ise benim başıma gelen ve sizlerinde ihtiyaç duyacağınıza inandığım bir kaç detay paylaşmak istiyorum.

Öncelikle bu raporlar Lab ortamında son derece güzel çalışıyor, ancak prod ortamlarda tarih noktasında sorunlar olabilir. Nasıl ?

Diyelimki canlı ortamda son 10 günlük raporları almak istediniz, bunun için ne yapmanız gerekli ? İlk olarak powershell dosyasını not defteri ile açmak ve aşağıdaki satırı değiştirmek yeterli olacaktır

 

Send-MailMessage -To $To `
-From $From `
-Subject “Exchange Audit Log Report for $((get-date).ToShortDateString())” `
-Body (Search-AdminAuditLog -StartDate ((Get-Date).AddHours(-24)) -EndDate (Get-Date) | New-AuditLogReport) `
-SmtpServer $SmtpServer `
-BodyAsHtml

Bu satırlar komutun en altında yer almaktadır. Burada yazan 24 rakamı saat olup son 24 saati rapor olarak göndermektedir. Eğer son 10 günü istiyorsanız bu rakamı 240 yapmanız gerekli. Fakat bu değişiklik sonrası hala son 24 saat veya son 48 saatlik raporların geldiğini göreceksiniz. Bunun da temel sebebi bu komut çıktısı ( Search-AdminAuditLog )  standart olarak 1000 tane kayıt getirir. Eğer çok yoğun bir ortamda iseniz haklı olarak son 10 günlük kayıtlar 1000 den fazla olacaktır. Bunun için bu komut seti üzerinde bir takım değişiklikler yapmamız gerekmektedir.

İlk olarak maksimum 250.000 olan bu kayıt sayısını getirmek için komuta parametre ekliyoruz. ( not; Sizde tabiki 250.000 den fazla kayıt olabilir, ama bunu aylık veya 15 günlük veya 10 günlük şeklinde parça parça alarak gösterebilirsiniz. Yani bu limit saklama limiti değil görüntüleme limitidir. Saklama limiti vb ayarları Set-AdminAuditLogConfig komutu ile değiştirebiliyoruz ).
-Body (Search-AdminAuditLog -StartDate 10/15/2011 -EndDate 01/13/2012 -resultsize 250000 | New-AuditLogReport) `

Bu ekleme ile beraber artık daha fazla sayıda log görmemiz mümkün oluyor.

Yine bir bilgi daha paylaşmak istiyorum. Diyelim son bir aylık rapor lazım, siz powershell komutunda gerekli ayarları yaptınız, yani hem günü değiştirdiniz hemde “resultsize” parametresini kullandınız. Sonuçta 250.000 den az kayıt olduğu için eksiksiz geldi. Ancak gelen kayıtlarda sistem tarafından yapılan o kadar çok kayıt varki bu dosyayı açmak bile nerede ise imkansız olabilir.

Bu nedenle amacınıza uygun bir filtre kullanabilirsiniz. Örneğin sizin amacınız bir adminin hangi posta kutuları üzerinde “Full Access” izni almışı merak ediyorsanız önemsiz loglar ile boğuşmanıza gerek yoktur. Yine powershell komutu içerisindeki son satırı aşağıdaki gibi yapabilirsiniz

-Body (Search-AdminAuditLog -cmdlets Add-MailboxPermission, Remove-MailboxPermission -StartDate 10/15/2011 -EndDate 01/13/2012 -resultsize 250000 | New-AuditLogReport) `

bu bölüme ise eklediğim kısım ” -cmdlets Add-MailboxPermission, Remove-MailboxPermission” yani komut setleri için filtre uyguladım. Bunu sonucunda adminlerin çalıştırdığı Add ve Remove Mailbox Permission yani izin noktasındaki hareketler gelecektir. Bu işinizi bir hayli kolaylaştıracaktır.

Tabiki isterseniz cmdlets kısmında farklı parametreler kullanabilirsiniz.


Bu konu 12 ay önce Hakan Uzuner tarafından düzenlendi

Danışman - ITSTACK Bilgi Sistemleri
****************************************************************
Probleminiz Çözüldüğünde Sonucu Burada Paylaşırsanız.
Sizde Aynı Problemi Yaşayanlar İçin Yardım Etmiş Olursunuz.
Eğer sorununuz çözüldü ise lütfen "çözüldü" olarak işaretlerseniz diğer üyeler için çok büyük kolaylık sağlayacaktır.
*****************************************************************

 
Gönderildi : 16/01/2012 16:45
(@ufuktatlidil)
Gönderiler: 5707
Illustrious Member
 

Emeğine sağlık hocam.


 
Gönderildi : 16/01/2012 17:53
(@canbolat)
Gönderiler: 1252
Noble Member
 

Teşekkürler hocam , aradığım bi konuydu.


 
Gönderildi : 18/01/2012 20:22
(@VURALSERTBAKAN)
Gönderiler: 1
New Member
 

Hocam merhaba,

 

Öncelikle yeni üye oldum muhtemeşem bir bilgi kaynağı yaratmışssınız teşekkürler.. 

 Exchange 2010'da audit logları hangi klasör altında tutuluyor?Bir makalede DSIEdit ile “Configuration/Services/Microsoft Exchange/Domain Name/Global Settings/Admin Audit Log Settings” altında görebilirsiniz denilmiş.Fakat nasıl erişeceğimi anlayamadım. Yardımcı olabilirmisiniz?


 
Gönderildi : 10/04/2012 15:28
(@vasviuysal)
Gönderiler: 7877
Üye
 

ADSI Edit: Windows Active Directory’deki nesnelere doğrudan erişim ve düzenleme yapmayı sağlayan gelişmiş yönetim aracıdır. Kullanıcılar, gruplar, bilgisayarlar ve diğer AD objeleri üzerinde Gelişmiş özellikleri düzenlemek için kullanılır. Yanlış kullanım AD’de ciddi sorunlara yol açabileceği için dikkat gerektirir.

 


 
Gönderildi : 10/04/2012 16:16
Paylaş: