ESET Protect Virtual Appliance “Static Group Syncronization” görevinde ek filtre kullanımı
Eset Protect sunucunuzu hazır sanal makine “Virtual Applience” olarak kullanıyorsanız, Cihaz kayıtlarınızı “Etki Alanından / Active Directory” almak için “Static Group Syncronization” görevini kullanıyor olabilirsiniz.
<https://support.eset.com/en/kb7766-synchronize-eset-protect-with-active-directory>
Bu görev içerisinde, “Computers filter” alanında standart olarak gelen(objectCategory=computer)
değeri bulunmaktadır. Bu değer, alınan kayıtların “bilgisayar” tipinde olduğunu göstermektedir.
Etki alanınızda SAN, Sanal ortam yönetim makinası ya da sizin test kurulum v.b. amaçlı kullandığınız bilgisayarlarınız da olabilir ve bu kayıtları ESET ile kullanmak istemeyebilirsiniz.
Bunu yapmanın en kolay yolu, bu kayıtları bir OU altında toplamak ve bu OU’yu da yukarıda adı geçen ESET Görevi içerisinde bulunan “Exclude Distinguished Name(s)” alanı içerisine eklemek olabilir.
Bu kayıtları, bu tür bir OU altında toplayamıyorsanız, alternatif bir yol olarak şöyle bir şey yapılabilir. Bu tür bilgisayarların AD kayıtlarına, ek bir değer ekleyerek, bu değeri yukarıdaki filtrede kullanmak.
Örnek olarak, “Location” ya da “Department” alanını kullanabilirsiniz.
“Location” adını kullanalım, bu durumda yukarıdaki “Computers filter” değeri şu şekilde olacaktır.
(&(!(Location=No_ESET))(objectCategory=computer))
Konumu (Location) alanında “No_Eset” değeri bulunmayan “!”, bilgisayar kayıtları.
Bu “Location” ya da “Department” alanlarını, normal olması gereken amaçları için kullanıyorsanız, bu durumda şu yapılabilir, her kullanıcı ve bilgisayar kayıtları için kullanılabilecek, 15 adet ek boş nitelik alanı bulunmaktadır: “extensionAttribute1..15”.
Bu alanları da şu şekilde kullanabilirsiniz. 14 nolu alanı kullanalım:
(&(!(extensionAttribute14=No_ESET))(objectCategory=computer)))
Peki bu alanları nasıl dolduracağız. Tabii ki PowerShell ile 🙂
“get-adcomputer” komutu verdiğinizde, komut bulunamadığını belirten bir hata alırsanız, RSAT (Remote server administration tools ve dolayısıyla AD powershell modülü yüklü değil demektir. Bunu modülü yüklemek için, yönetici yetkili olarak açılmış, PS konsolda:
PowerShell ile:Add-WindowsCapability -Online -Name Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0
CMD ile:DISM.exe /Online /add-capability /CapabilityName:Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0
Alanları doldurmaya geri dönersek, ilk etapda test olarak bir makina kaydını güncelleyebilirsiniz:
Var olan değeri kontrol:get-adcomputer Test_PC_Kaydi -property * | format-table -a name, extensionAttribute14
Değer ekleme:Set-ADComputer –Identity Test_PC_Kaydi -add @{extensionAttribute14 = "NO_ESET"}
Değer silme:Set-Adcomputer –Identity Test_PC_Kaydi -remove @{extensionAttribute14 = "NO_ESET"}
Değer değiştirme:Set-ADComputer –Identity Test_PC_Kaydi -replace @{extensionAttribute14 = "NO_ESET"}
ESET görevi içerisinde, LDAP seçildiği için “Disabled / devre dışı bırakılmış” bilgisayar kayıtları da gelmektedir. Bunları da engellemek ve sadece aktif kayıtları almak için filtreye bir ek daha yapacağız, “user / kullanıcı” kelimesi yanıltmasın, kullanım bu şekilde:
(&(!(extensionAttribute14=No_ESET))(objectCategory=computer)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
PS ve Komut satırından test etmek isterseniz aynı sorguyu kullanabilirsiniz:
PS:get-adcomputer -property * -ldapFilter '(&(!(extensionAttribute14=
No_ESET
))(objectCategory=computer)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))' | format-table name, extensionAttribute14
CMD:dsquery * -filter "(&(!(extensionAttribute14=No_ESET))(objectCategory=computer)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))"
Son olarak, güncellemek gereken birden fazla kaydınız varsa nasıl bir yol izlenebilir:
Bir metin dosyası içerisine alt alta bilgisayar kayıtlarını ekleyiniz, bu dosyayı örnek olarak
“c:\temp\no_Eset_kayitlar.txt” olarak kaydettiğinizi varsayalım.Test_PC_Kaydi01
Test_PC_Kaydi02…
yukarıdaki komutu şu şekilde güncellemek gerekir, önce var olan alanların kontrolü:
get-content c:\temp\no_Eset_kayitlar.txt | ForEach-Object { get-ADComputer –Identity $_ | format-table -a name, extensionAttribute14}
sonra da güncelleme:
get-content c:\temp\no_Eset_kayitlar.txt | ForEach-Object { Set-ADComputer –Identity $_ -add @{extensionAttribute14 = "NO_ESET"}}
Yazıda bahsettiğimiz 15 adet “extensionAttribute” alanlarını, ESET dışında da başka amaçlar için, kullanıcı hesapları için de kullanabileceğinizi hatırlatmak isterim; bu alanlardan örneğin, E-posta dağıtım ya da paylaşım güvenlik grupları için dinamik gruplar oluşturmakta, bazı sıra dışı raporları v.b. hazırlarken faydalanabilirsiniz,
İyi çalışmalar
Sevgi ve saygılar.
Eline sağlık.