Sběr z Microsoft Windows pomocí WEC/WEF¶
Bezagentový Windows Event Collector (WEC) odesílá logy z Windows počítačů přes službu Windows Event Forwarding (WEF) do TeskaLabs LogMan.io Collector. TeskaLabs LogMan.io Collector poté funguje jako Windows Event Collector (WEC). Konfiguraci WEF lze nasadit pomocí Group Policy, buď centrálně spravovanou serverem Active Directory nebo pomocí Local Group Policy. S Active Directory nejsou na jednotlivých Windows strojích potřeba žádné další konfigurační požadavky.
Schéma: Tok událostí sběru WEC/WEF v TeskaLabs LogMan.io.
Předpoklady¶
- Microsoft Active Directory Domain Controller, v tomto příkladu poskytuje doménové jméno
domain.int/DOMAIN.int - TeskaLabs LogMan.io Collector, v tomto příkladu s IP adresou
10.0.2.101a hostitelským jménemlmio-collector, běží ve stejné síti jako Windows počítače včetně Active Directory - IP adresa TeskaLabs LogMan.io Collector MUSÍ být fixní (tj. rezervovaná DHCP serverem)
- Datum a čas TeskaLabs LogMan.io Collector MUSÍ být synchronizovány pomocí NTP
- TeskaLabs LogMan.io Collector BY MĚL používat DNS server Active Directory
- TeskaLabs LogMan.io Collector MUSÍ být schopen vyřešit hostitelská jména serverů doménových kontrolerů Active Directory
- TeskaLabs LogMan.io Collector MUSÍ být schopen dosáhnout na
udp/88atcp/88porty (autentizace Kerberos verze 5) na Microsoft Active Directory Domain Controller, příslušný KDC - Všechny Windows stanice a servery MUSÍ být schopny dosáhnout na TeskaLabs LogMan.io Collector's
tcp/5985atcp/5986pro WEF audp/88,tcp/88(autentizace Kerberos) porty
Tip
Toto nastavení využívá autentizaci Kerberos. Autentizace Kerberos používá Kerberos tickety specifické pro doménu Active Directory vydávané doménovým kontrolerem pro autentizaci a šifrování přeposílání logů. Je to optimální volba pro Windows počítače, které jsou spravovány prostřednictvím domény.
Active Directory¶
1.1. Vytvoření nového uživatele v Active Directory
Projděte Windows Administrative Tools > Active Directory Users and Computers > DOMAIN.int > Users
Klikněte pravým tlačítkem a vyberte New > User
Zadejte následující informace:
- Full name:
TeskaLabs LogMan.io - User logon name:
lmio-collector
Warning
Přihlašovací jméno uživatele musí být stejné jako jméno počítače TeskaLabs LogMan.io Collector. Najdete ho na obrazovce nastavení TeskaLabs LogMan.io collector.
Klikněte na "Next".
Nastavte heslo pro uživatele.
Tento příklad používá Password01!.
Warning
Použijte silné heslo podle vaší politiky. Toto heslo bude použito v pozdějším kroku tohoto postupu.
Odškrtněte "User must change password at next logon".
Zaškrtněte "Password never expires".
Klikněte na Next a poté na tlačítko Finish pro vytvoření uživatele.
Nakonec klikněte pravým tlačítkem na nového uživatele, klikněte na Properties a otevřete záložku Account.
- Zaškrtněte "This account supports Kerberos AES 128 bit encryption".
- Zaškrtněte "This account supports Kerberos AES 256 bit encryption".
Nový uživatel lmio-collector je nyní připraven.
1.2. Vytvoření A záznamu v DNS serveru pro TeskaLabs LogMan.io Collector
Použití DHCP pro rezervaci IP adresy kolektoru
Pevná IP adresa MUSÍ být přidělena TeskaLabs LogMan.io Collector. To může být provedeno "rezervováním" IP adresy v DHCP serveru Active Directory.
Projděte Windows Administrative Tools > DNS > Forward Lookup Zones > DOMAIN.int
Klikněte pravým tlačítkem a vyberte "New Host (A or AAAA)…"
Přidejte záznam s názvem lmio-collector a IP adresou 10.0.2.101.
Upravte tento záznam podle IP adresy vašeho TeskaLabs LogMan.io Collector.
Klikněte na tlačítko Add Host pro dokončení.
1.3. Vytvoření hostitelského principálu
Vytvořte hostitelský principál a přidružený keytab soubor pro hostitele TeskaLabs LogMan.io Collector. Spusťte následující příkaz na příkazovém řádku serveru Active Directory Domain Controller (cmd.exe):
ktpass /princ host/lmio-collector.domain.int@DOMAIN.INT /pass Password01! /mapuser DOMAIN\lmio-collector -pType KRB5_NT_PRINCIPAL /out host-lmio-collector.keytab /crypto AES256-SHA1
Proces je citlivý na velikost písmen
Ujistěte se, že jste KAPITALIZOVALI vše, co je kapitalizováno v našich příkladech (například host/lmio-collector.domain.int@DOMAIN.INT).
Musí být KAPITALIZOVÁNO i v případě, že vaše doména obsahuje malá písmena.
Keytab soubor host-lmio-collector.keytab je vytvořen.
1.4. Vytvoření http principálu
Vytvořte servisní principál a přidružený keytab soubor pro službu:
ktpass /princ http/lmio-collector.domain.int@DOMAIN.INT /pass Password01! /mapuser DOMAIN\lmio-collector -pType KRB5_NT_PRINCIPAL /out http-lmio-collector.keytab /crypto AES256-SHA1
Keytab soubor http-lmio-collector.keytab je vytvořen.
1.5. Sběr keytab souborů ze serveru Windows
Sesbírejte dva keytab soubory z výše uvedených kroků. Nahrajete je do TeskaLabs LogMan.io v pozdějším kroku.
Skupinové politiky¶
2.1. Otevřete konzoli pro správu skupinových politik
Projděte Windows Administrative Tools > Group Policy Management, vyberte svou doménu, v tomto příkladu DOMAIN.int.
2.2. Vytvoření objektu skupinové politiky
V konzoli správy skupinových politik vyberte svou doménu, například DOMAIN.int.
Klikněte pravým tlačítkem na doménu a vyberte "Create a GPO in this domain, and Link it here....
Zadejte název nového GPO, "TeskaLabs LogMan.io Windows Event Forwarding", poté vyberte OK.
2.3. Konfigurace objektu skupinové politiky
Nové GPO je vytvořeno a připojeno k vaší doméně. Pro konfiguraci nastavení politiky klikněte pravým tlačítkem na vytvořené GPO a vyberte "Edit...".
Otevře se "Group Policy Management Editor" pro přizpůsobení GPO.
2.4. Konfigurace politiky přeposílání událostí v sekci Konfigurace počítače
V "Group Policy Management Editor" projděte Computer Configuration > Policies > Administative Templates > Windows Components a vyberte Event Forwarding.
Vyberte "Configure target Subscription Manager".
Povolte nastavení a vyberte Show.
Vyplňte umístění TeskaLabs LogMan.io Collector:
Server=http://lmio-collector.domain.int:5985/wsman/SubscriptionManager/WEC,Refresh=60
Stiskněte OK pro uložení nastavení.
2.5. Použití
Spusťte gpupdate /force v cmd.exe na serveru Windows.
Bezpečnostní log¶
WEF nemůže přistupovat k bezpečnostnímu logu Windows ve výchozím nastavení.
Pro povolení přeposílání bezpečnostního logu přidejte Network Service do WEF.
Tip
Bezpečnostní log Windows je nejdůležitějším zdrojem informací o kybernetické bezpečnosti a musí být nakonfigurován.
3.1. Otevřete konzoli pro správu skupinových politik
Projděte Windows Administrative Tools > Group Policy Management, vyberte svou doménu, v tomto příkladu DOMAIN.int.
Klikněte pravým tlačítkem a vyberte "Edit...".
Projděte Computer Configuration > Administrative Templates > Windows Components > a vyberte Event Log Service.
Potom vyberte Security.
Vyberte Configure log access.
3.2. Nastavení přístupu k logu
Do pole "Log Access" zadejte:
O:BAG:SYD:(A;;0xf0005;;;SY)(A;;0x5;;;BA)(A;;0x1;;;S-1-5-32-573)(A;;0x1;;;S-1-5-20)
Vysvětlení
- O:BA: Určuje, že vlastníkem objektu je Built-in Administrators group.
- G:SY: Určuje, že primární skupina je SYSTEM.
-
D:: Označuje, že následující část definuje Discretionary Access Control List (DACL).
-
Built-in Administrators (BA): Oprávnění pro čtení a zápis.
- SYSTEM (SY): Plná kontrola s oprávněními pro čtení a zápis a speciální oprávnění pro správu logů událostí.
- Builtin\Event Log Readers (S-1-5-32-573): Oprávnění pouze pro čtení.
- Network Service (S-1-5-20): Oprávnění pouze pro čtení.
Stiskněte OK.
3.3. Použití
Spusťte gpupdate /force v cmd.exe na serveru Windows.
Odstraňování problémů
Uživatel Network Service musí být součástí skupiny Event Log Readers, aby měl přístup k bezpečnostním logům.
Postupujte podle těchto kroků pro konfiguraci přístupu:
-
Otevřete příkazový řádek RUN pomocí Windows Key + R
-
Zadejte pro otevření Místního správce uživatelů: lusrmgr.msc (pro edici Windows Home použijte gpedit.msc)
-
Otevřete: Skupiny
-
Vyberte: Event Log Readers
-
Přidejte uživatele NT AUTHORITY\NETWORK SERVICE
- Klikněte na "Add"
- Zadejte přesný název: NT AUTHORITY\NETWORK SERVICE
- Klikněte na "Check Names" pro ověření
-
Pro autentizaci Kerberos:
- Přidejte doménový servisní účet (např.
DOMAIN\lmio-collector) - Pouze pokud používáte doménovou autentizaci
- Přidejte doménový servisní účet (např.
-
Klikněte na OK pro uložení změn
-
Otevřete příkazový řádek (
cmd.exe) jako správce -
Restartujte službu WinRM:
net stop winrm timeout /t 5 net start winrm
Poznámka: Tato konfigurace musí být aplikována na všech počítačích odesílajících bezpečnostní logy. Pro podnikové prostředí použijte nasazení pomocí skupinové politiky místo ruční konfigurace.
Standardní logování¶
Pro LogMan.io doporučujeme povolit pokročilé auditování a pokročilé nastavení politiky auditu jako standardní způsob nastavení logování Windows. Tento standardní způsob je založen na LogMira nastavení skupinové politiky.
Nahrání XML reportu skupinové politiky přímo¶
- Stáhněte si soubory Group Policy Report.
- Otevřete skupinovou politiku TeskaLabs LogMan.io Windows Event Forwarding, kterou jste vytvořili dříve v Group Policy Management Console (
gpmc.msc). - Klikněte pravým tlačítkem na politiku a vyberte Import Settings.
- V průvodci vyberte umístění, kde byla záloha uložena (pokud již není vybrána).
- Klikněte na Next přes kroky, dokud se nezobrazí tlačítko Finish, poté klikněte na Finish pro dokončení importu.
Ruční povolení pokročilého auditování a nastavení politiky auditu¶
Pokročilé auditování¶
Computer Configuration> Policies> Windows Settings> Security Settings> Local Policies> Security Options- Povolit nastavení podkategorií politiky auditu
- Povolit logování příkazového řádku
- Velikosti logů událostí
Computer Configuration> Policies> Windows Settings> Security Settings> Event Log- Nastavte následující hodnoty z tabulky níže:
| Property | Value |
|---|---|
| Application Log Size | 256k (nebo větší) |
| Security Log Size Workstations | 1,024,000kb (minimálně) |
| Security Log Size Servers | 2,048,000kb (minimálně) |
| System Log Size | 256k (nebo větší) |
Pokročilá nastavení politiky auditu¶
- Nakonfigurujte pokročilé politiky auditu
Computer Configuration> Policies> Windows Settings> Security Settings> Advanced Audit Policy Configuration> Audit Policies- Nastavte hodnoty z tabulek níže:
| Account Logon | Suggested Values |
|---|---|
| Credential Validation | Success and Failure |
| Kerberos Authentication Service | Success and Failure |
| Kerberos Service Ticket Operations | Success and Failure |
| Other Account Logon Events | Success and Failure |
| Account Management | Suggested Values |
|---|---|
| Application Group Management | Success and Failure |
| Computer Account Management | Success and Failure |
| Distribution Group Management | Success and Failure |
| Other Account Management Events | Success and Failure |
| Security Group Management | Success and Failure |
| User Account Management | Success and Failure |
| Detailed Tracking | Suggested Values |
|---|---|
| DPAPI Activity | No Auditing |
| PNP (Plug and Play) | Success |
| Process Creation | Success and Failure |
| Process Termination | No Auditing |
| RPC Events | Success and Failure |
| Token Right Adjusted | Success |
| DS Access | Suggested Values |
|---|---|
| Detailed Directory Service Replication | No Auditing |
| Directory Service Access | No Auditing |
| Directory Service Changes | Success and Failure |
| Directory Service Replication | No Auditing |
| Logon/Logoff | Suggested Values |
|---|---|
| Account Lockout | Success |
| Group Membership | Success |
| IPsec Extended Mode | No Auditing |
| IPsec Main Mode | No Auditing |
| IPsec Quick Mode | No Auditing |
| Logoff | Success |
| Logon | Success and Failure |
| Network Policy Server | Success and Failure |
| Other Logon/Logoff Events | Success and Failure |
| Special Logon | Success and Failure |
| User / Device Claims | No Auditing |
| Object Access | Suggested Values |
|---|---|
| Application Generated | Success and Failure |
| Central Access Policy Staging | No Auditing |
| Certification Services | Success and Failure |
| Detailed File Share | Success |
| File Share | Success and Failure |
| File System | Success |
| Filtering Platform Connection | Success |
| Filtering Platform Packet Drop | No Auditing |
| Handle Manipulation | No Auditing |
| Kernel Object | No Auditing |
| Other Object Access Events | No Auditing |
| Registry | Success |
| Removable Storage | Success and Failure |
| SAM | Success |
| Policy Change | Suggested Values |
|---|---|
| Audit Policy Change | Success and Failure |
| Authentication Policy Change | Success and Failure |
| Authorization Policy Change | Success and Failure |
| Filtering Platform Policy Change | Success |
| MPSSVC Rule-Level Policy Change | No Auditing |
| Other Policy Change Events | No Auditing |
| Privilege Use | Suggested Values |
|---|---|
| Non Sensitive Privilege Use | No Auditing |
| Other Privilege Use Events | No Auditing |
| Sensitive Privilege Use | Success and Failure |
| System | Suggested Values |
|---|---|
| IPsec Driver | Success |
| Other System Events | Failure |
| Security State Change | Success and Failure |
| Security System Extension | Success and Failure |
| System Integrity | Success and Failure |
| Global Object Access Auditing | Suggested Values |
|---|---|
| File System | No Auditing |
| Registry | No Auditing |
TeskaLabs LogMan.io¶
4.1. Konfigurace sběru Microsoft Events
V TeskaLabs LogMan.io přejděte na Log Sources >> Collectors >> váš Collector >> Microsoft Windows.
Vyplňte Realm a FQDN řadiče domény, přidejte keytab soubory pro host a http a stiskněte Apply.
4.2. Sběr logů je nakonfigurován
Řešení problémů¶
Keytab neobsahuje vhodné klíče¶
kinit: Keytab contains no suitable keys for http/lmio-collector.domain.int@DOMAIN.INT while getting initial credentials
Chyba znamená, že keytab použitý pro Kerberos autentizaci neobsahuje správné klíče pro zadaný principal.
Možné příčiny:
* Nesprávný název principal v příkazu ktpass při vytváření keytab
* Nesprávný název principal v konfiguraci kolektoru
* Keytab neobsahuje očekávané typy šifrování (AES256, AES128)
Doporučujeme ověřit názvy principal a typy šifrování v příkazu ktpass i v konfiguraci kolektoru a že keytab je správně vygenerován s očekávanými klíči.
Nelze kontaktovat žádný KDC pro realm¶
kinit: Cannot contact any KDC for realm 'DOMAIN.LOCAL' while getting initial credentials
Chyba znamená, že kolektor nedosáhne na řadič domény Active Directory pro získání Kerberos tiketů.
Možné příčiny:
- Síťové problémy mezi kolektorem a řadičem domény
- Nesprávná DNS konfigurace — kolektor nerozpozná hostname řadiče domény
- Firewall blokuje přístup na řadič domény na porty UDP/TCP 88 (Kerberos)
- Nesprávný realm nebo FQDN řadiče domény v konfiguraci kolektoru
Lokální doména
Doména .local je rezervovaná. V konfiguraci kolektoru klikněte na Advanced options a vyberte jiné Key Distribution Center (KDC), které kolektor dosáhne, nebo použijte IP adresu řadiče domény místo hostname.
Příkazem nltest /dsgetdc ověřte správný řadič domény a informace o realmu.
Pokročilá témata¶
Alternativy¶
- Použití HTTPS / SSL certifikátů místo Active Directory a Kerberos
- Použití lokální skupinové politiky místo Active Directory Group Policy
Forwarding Event Log¶
Kanál událostí Eventlog-forwardingPlugin/Operational loguje relevantní informace o strojích nastavených pro přesměrování logů na kolektor.
Obsahuje také informace o možných problémech s WEF subscription.
Prozkoumejte ho v aplikaci Event Viewer.
Vysoká dostupnost se dvěma kolektory¶
Pro vysokou dostupnost můžete nasadit dva LogMan.io Collectory tak, aby Windows stroje přešly z jednoho na druhý bez zdvojení provozu a bez deduplikátoru.
Nastavení:
- Oba kolektory používají stejné keytaby a stejného AD uživatele (např.
lmio-collector). - Existuje jeden DNS A záznam a jeden SPN pro toto jméno (např.
lmio-collector.domain.int). Jméno resolvuje na obě IP kolektorů přes DNS round-robin; doporučené TTL je 15 minut, aby po opětovném resolvu Windows stroj mohl dostat IP druhého kolektoru. - Oba kolektory používají stejné subscription ID ve WEC konfiguraci, aby události nebyly považovány za duplicity při přepnutí stroje mezi kolektory.
Po vypršení DNS TTL se Windows stroj může znovu připojit k druhému kolektoru. Z pohledu Kerberos je to v pořádku: tikety se získávají jednou na stroj; mezi kolektory není konflikt. Úspěšný failover jednotlivých Windows strojů byl pozorován v produkci.
Note
Tento vzor nasazení je jedna z možností HA pro WEF a měl by být monitorován ve vašem prostředí. Při duplicitních událostech nebo problémech s připojením zkontrolujte DNS TTL, subscription ID a konfiguraci kolektorů.
Sběr z více domén¶
Pro sběr Windows Events z více domén Active Directory je třeba nakonfigurovat Kerberos autentizaci pro každou doménu a sloučit keytab soubory.
Předpoklady¶
- Přístup k řadičům domény všech domén, ze kterých chcete sbírat
- Keytab soubory pro každou doménu (host a http principaly)
- Možnost upravit Kerberos konfiguraci na kolektoru
Konfigurace kolektoru¶
Nakonfigurujte WEC vstup v /conf/lmio-collector.yaml:
input:WEC:WECKerberosInput:
listen: 5985 # Just to be explicit
output: microsoft-windows-events-v1
output:CommLink:microsoft-windows-events-v1: {}
Konfigurace proměnné prostředí
Kolektor musí mít nastavenou proměnnou prostředí KRB5CCNAME pro adresářový credential cache.
Umožní to uložit více Kerberos tiketů (pro každou doménu) současně.
Pro Docker/kontejnerová nasazení přidejte do docker-compose.yaml:
services:
lmio-collector:
environment:
KRB5CCNAME: "DIR:/tmp/krb5cc_wef"
Pro ostatní typy nasazení nastavte proměnnou prostředí před startem služby kolektoru.
Konfigurace Kerberos¶
Nakonfigurujte /conf/kerberos/krb5.conf pro více domén:
[libdefaults]
default_realm = DOMAIN2.COM
dns_lookup_realm = false
dns_lookup_kdc = true
ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true
rdns = false
[domain_realms]
.DOMAIN1.COM = DOMAIN1.COM
DOMAIN1.COM = DOMAIN1.COM
.DOMAIN2.COM = DOMAIN2.COM
DOMAIN2.COM = DOMAIN2.COM
.domain1.com = DOMAIN1.COM
domain1.com = DOMAIN1.COM
domain2.com = DOMAIN2.COM
.domain2.com = DOMAIN2.COM
[realms]
DOMAIN1.COM = {
# kdc = domain1.com
admin_server = domain1.com
}
DOMAIN2.COM = {
# kdc = domain2.com
admin_server = domain2.com
}
Tip
Nahraďte DOMAIN1.COM a DOMAIN2.COM skutečnými názvy domén.
Sekce domain_realms mapuje názvy domén (bez ohledu na velikost písmen) na realmy.
Sekce realms definuje KDC a admin server pro každý realm.
Sloučení keytab souborů¶
Sloučte keytaby ze všech domén do jednoho souboru pomocí ktutil:
ktutil
ktutil: rkt /conf/kerberos/domain1-host-lmio-collector.keytab
ktutil: rkt /conf/kerberos/domain1-http-lmio-collector.keytab
ktutil: rkt /conf/kerberos/domain2-host-lmio-collector.keytab
ktutil: rkt /conf/kerberos/domain2-http-lmio-collector.keytab
ktutil: wkt /conf/kerberos/krb5.keytab
ktutil: q
Vytvoří se sloučený keytab /conf/kerberos/krb5.keytab se všemi principaly z obou domén.
Inicializace Kerberos tiketů¶
Inicializujte tikety pro každou doménu:
export KRB5CCNAME=DIR:/tmp/krb5cc_wef
kinit -kt /conf/kerberos/krb5.keytab http/lmio-collector.domain2.com@DOMAIN2.COM
kinit -kt /conf/kerberos/krb5.keytab http/lmio-collector.domain1.com@DOMAIN1.COM
Proč DIR: místo FILE:?
Prefix DIR: určuje adresářový credential cache — více tiketů v samostatných souborech v adresáři.
Je to nutné při sběru z více domén; každý kinit vytvoří samostatný soubor tiketu.
FILE: by znamenal jeden souborový cache, který drží jen jeden tiket a další kinit by ho přepsal.
Ověřte správnou inicializaci tiketů:
klist -A
Měli byste vidět tikety pro obě domény.
Warning
Cesta k keytab v příkazech kinit musí odpovídat skutečnému umístění sloučeného keytab.
Kolektor se musí umět autentizovat do obou domén pomocí sloučeného keytab.






























