Forwarder Google Security Operations per Windows su Docker
Questo documento descrive come installare e configurare il forwarding di Google Security Operations per Windows su Docker.
Requisiti di sistema
Di seguito sono riportati alcuni consigli di carattere generale. Per consigli specifici per i tuoi di sistema, contatta l'assistenza di Google Security Operations.
- Versione Windows Server: il forwarding di Google Security Operations è supportato su Microsoft Windows Server 2022.
- RAM: 1,5 GB per ogni tipo di log raccolto. Ad esempio, endpoint rilevamento e risposta (EDR), DNS e DHCP sono tutti tipi di log separati. Tu sarebbero necessari 4,5 GB di RAM per raccogliere i dati di tutti e tre. Per un elenco di Parser predefiniti e tipi di log supportati, vedi Parser predefiniti supportati.
- CPU: 2 CPU sono sufficienti per gestire meno di 10.000 eventi al secondo (EPS) totale per tutti i tipi di dati. Se prevedi di inviare più di 10.000 EPS, sono necessarie da 4 a 6 CPU.
Disco: 100 MB di spazio su disco sono sufficienti, indipendentemente dalla quantità di dati gestisce l'inoltro di Google Security Operations. Puoi eseguire il buffering del disco aggiungendo i parametri
write_to_disk_buffer_enabled
ewrite_to_disk_dir_path
nel file di configurazione.Ad esempio:
- <collector>: common: ... write_to_disk_buffer_enabled: true write_to_disk_dir_path: directory_path ...
Intervalli di indirizzi IP di Google
Potresti dover aprire l'intervallo di indirizzi IP durante la configurazione di una configurazione di forwarding di Google Security Operations. ad esempio durante l'impostazione della configurazione del firewall. Google non può fornire un elenco specifico di indirizzi IP. Tuttavia, puoi ottenere intervalli di indirizzi IP di Google.
Verifica la configurazione del firewall
Se hai firewall o proxy autenticati tra il container di forwarding di Google Security Operations e internet, richiedono regole per consentire l'accesso ai seguenti host Google Cloud:
Tipo di connessione | Destinazione | Port (Porta) |
TCP | malachiteingestion-pa.googleapis.com | 443 |
TCP | asia-northeast1-malachiteingestion-pa.googleapis.com | 443 |
TCP | asia-south1-malachiteingestion-pa.googleapis.com | 443 |
TCP | asia-southeast1-malachiteingestion-pa.googleapis.com | 443 |
TCP | australia-southeast1-malachiteingestion-pa.googleapis.com | 443 |
TCP | europe-malachiteingestion-pa.googleapis.com | 443 |
TCP | europe-west2-malachiteingestion-pa.googleapis.com | 443 |
TCP | europe-west3-malachiteingestion-pa.googleapis.com | 443 |
TCP | europe-west6-malachiteingestion-pa.googleapis.com | 443 |
TCP | europe-west12-malachiteingestion-pa.googleapis.com | 443 |
TCP | me-central1-malachiteingestion-pa.googleapis.com | 443 |
TCP | me-central2-malachiteingestion-pa.googleapis.com | 443 |
TCP | me-west1-malachiteingestion-pa.googleapis.com | 443 |
TCP | northamerica-northeast2-malachiteingestion-pa.googleapis.com | 443 |
TCP | accounts.google.com | 443 |
TCP | gcr.io | 443 |
TCP | oauth2.googleapis.com | 443 |
TCP | storage.googleapis.com | 443 |
Puoi verificare la connettività di rete a Google Cloud seguendo questa procedura:
Avvia Windows PowerShell con i privilegi di amministratore (fai clic su Start, digita
PowerShell
, fai clic con il tasto destro del mouse su Windows PowerShell e fai clic su Esegui come amministratore).Esegui questo comando.
C:\> test-netconnection <host> -port <port>
Il comando restituisce che
TcpTestSucceeded
ètrue
.Ad esempio:
C:\> test-netconnection malachiteingestion-pa.googleapis.com -port 443 ComputerName : malachiteingestion-pa.googleapis.com RemoteAddress : 198.51.100.1 RemotePort : 443 InterfaceAlias : Ethernet SourceAddress : 203.0.113.1 TcpTestSucceeded : True
Installa Docker su Microsoft Windows
Questa sezione descrive come installare Docker su Microsoft Windows utilizzando il a interfaccia a riga di comando e PowerShell.
Vantaggi dello strumento di inoltro di Google Security Operations mediante l'utilizzo di un container:
- Maggiore sicurezza grazie all'isolamento:
- L'ambiente e i requisiti del cliente non influiscono su Google Security Operations spedizioniere.
- L'ambiente di inoltro e i requisiti di Google Security Operations non influiscono il cliente.
- Il meccanismo di distribuzione dei container esiste già e può essere privato. separatamente per Google Cloud e per i clienti. Per ulteriori informazioni, vedi Artifact Registry.
Completa i passaggi seguenti su Microsoft Windows Server Core 2022.
Attiva la funzionalità del contenitore di Microsoft Windows.
Install-WindowsFeature containers -Restart
Esegui questo comando nella modalità di amministratore di PowerShell per installare Docker CE:
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" -o install-docker-ce.ps1 .\install-docker-ce.ps1
Testa l'interfaccia a riga di comando Docker eseguendo il comando
docker ps
, che restituisce un elenco dei container in esecuzione. Se il comando non elenca qualsiasi container in esecuzione, l'installazione è riuscita. Se Docker non è installato correttamente, viene visualizzato un errore.Per ulteriori informazioni, consulta la guida introduttiva: preparazione di Windows per i container.
Per le implementazioni aziendali, installa Mirantis Container Runtime, noto anche come Docker EE.
Configura l'inoltro di Google Security Operations
Per configurare il forwarding di Google Security Operations per Windows su Docker, vedi Gestire le configurazioni di forwarding tramite la UI di Google Security Operations.
Quando configuri il forwarding di Google Security Operations, assicurati che tutti i percorsi nel server di inoltro inizino con il prefisso "c:".
Eventuali modifiche apportate al file di configurazione verranno applicate automaticamente dall'inoltro di Google Security Operations entro 5 minuti.
Per raccogliere i dati dei pacchetti utilizzando il forwarding di Google Security Operations per Windows su Docker, vedi Raccogli i dati dei pacchetti.
Esegui il forwarding di Google Security Operations all'interno del container Docker
Se esegui l'upgrade dello strumento per l'inoltro di Google Security Operations, inizia con la pulizia nelle esecuzioni precedenti di Docker. Nell'esempio seguente, il nome del Docker il container è
cfps
.docker stop cfps docker rm cfps
Recupera l'immagine Docker più recente da Google Cloud utilizzando questo pull Docker .
docker pull gcr.io/chronicle-container/cf_production_stable_windows
Avvia il forwarding di Google Security Operations dal container Docker.
docker run ` --detach ` --name cfps ` --restart=always ` --log-opt max-size=100m ` --log-opt max-file=10 ` -p 10514:10514 ` -v C:\config\:C:/opt/chronicle/external ` gcr.io/chronicle-container/cf_production_stable_windows
Puoi aggiungere più porte utilizzando più opzioni o intervalli. Ad esempio:
-p 3001:3000 -p 2023:2022
o-p 7000-8000:7000-8000
Visualizza log di forwarding
Per visualizzare i log del forwarding di Google Security Operations, esegui questo comando:
sudo docker logs cfps
Per visualizzare il percorso del file in cui sono archiviati i log, esegui questo comando:
docker inspect --format='{{.LogPath}}' CONTAINER_NAME
Per visualizzare i log in esecuzione, esegui questo comando:
sudo docker logs cfps -f
Per archiviare i log in un file, esegui questo comando:
sudo docker logs cfps &> logs.txt
Disinstalla lo strumento per l'inoltro di Google Security Operations
I seguenti comandi Docker consentono di arrestare, disinstallare o rimuovere Forwarder di Google Security Operations.
Questo comando arresta il container di forwarding di Google Security Operations:
docker stop cfps
Questo comando rimuove il container di forwarding di Google Security Operations:
docker rm cfps
Esegui l'upgrade del servizio di forwarding di Google Security Operations
Il forwarding di Google Security Operations per Windows su Docker viene costantemente aggiornato utilizzando uno script shell nell'immagine Docker pertanto non è necessario fornire alcun file eseguibile.
Raccogliere i dati
Le sezioni seguenti aiutano a configurare l'inoltro di Google Security Operations per l'importazione di diversi tipi di dati, ovvero inoltrato all'istanza Google Security Operations.
Non configurare un valore superiore a 1 MB per batch_n_bytes
. Se configuri un valore superiore a 1 MB, il valore verrà reimpostato automaticamente su 1 MB.
Raccogli dati Splunk
Puoi configurare lo strumento di inoltro di Google Security Operations in modo che inoltri i dati di Splunk a Google Security Operations. Google Cloud configura il forwarding di Google Security Operations con le seguenti informazioni per inoltrare i dati da Splunk:
URL dell'API REST Splunk (ad esempio,
https://10.0.113.15:8089
).Query Splunk per generare dati per ciascuno dei tipi di dati richiesti (ad esempio,
index=dns
).
FORWARDER_NAME.conf output: collectors: - splunk: common: enabled: true data_type: WINDOWS_DNS data_hint: "#fields ts uid id.orig_h id.orig_p id.resp_h id.resp_p proto trans_id query qclass qclass_name" batch_n_seconds: 10 batch_n_bytes: 819200 url: https://127.0.0.1:8089 is_ignore_cert: true minimum_window_size: 10s maximum_window_size: 30s query_string: search index=* sourcetype=dns query_mode: realtime
- Rendi disponibili le credenziali del tuo account Splunk per Google Security Operations
spedizioniere. Puoi farlo creando un file
creds.txt
.
Per usare un file creds.txt
:
Crea un file locale per le tue credenziali di Splunk e assegnagli il nome
creds.txt
.Inserisci il tuo nome utente nella prima riga e la password nella seconda riga:
cat creds.txt myusername mypassword
Per utilizzare il servizio di inoltro di Google Security Operations per accedere a uno Splunk copia il file
creds.txt
nella directory di configurazione (lo stesso in cui si trovano i file di configurazione). Ad esempio:cp creds.txt c:/opt/chronicle/config/creds.txt
Verifica che il file
creds.txt
si trovi nella posizione corretta:ls c:/opt/chronicle/config
Raccogli i dati di syslog
Il server di inoltro di Google Security Operations può funzionare come server syslog. Puoi configurare qualsiasi appliance o server che supporta l'invio di dati syslog tramite TCP o UDP connessione per inoltrare i relativi dati al forwarding di Google Security Operations. Puoi controllare gli esatti dati inviati dall'appliance o dal server Forwarder di Google Security Operations. L'inoltro di Google Security Operations può quindi inoltrare i dati a Google Security Operations.
Il file di configurazione FORWARDER_NAME.conf
(fornito da
Google Cloud) specifica quali porte monitorare per ciascun tipo
dati inoltrati (ad esempio, porta 10514). Per impostazione predefinita, Google Security Operations
il server di forwarding accetta connessioni TCP e UDP.
Configura rsyslog
Per configurare rsyslog, devi specificare una destinazione per ogni porta (ad esempio, ciascun tipo di dati). Consulta la documentazione del sistema per la sintassi corretta. La i seguenti esempi illustrano la configurazione della destinazione rsyslog:
Traffico dei log TCP:
dns.* @@192.168.0.12:10514
Traffico dei log UDP:
dns.* @192.168.0.12:10514
Abilita TLS per le configurazioni syslog
Puoi abilitare TLS per la connessione syslog a Google Security Operations
spedizioniere. Nel file di configurazione dell'inoltro di Google Security Operations
(FORWARDER_NAME.conf
), specifica la tua località
il certificato e la chiave del certificato generati, come mostrato nell'esempio seguente:
certificato | c:/opt/chronicle/external/certs/client_generated_cert.pem |
certificate_key | c:/opt/chronicle/external/certs/client_generated_cert.key |
In base all'esempio mostrato, modifica lo strumento di inoltro di Google Security Operations
di configurazione del deployment (FORWARDER_NAME.conf
) come segue:
collectors: - syslog: common: enabled: true data_type: WINDOWS_DNS data_hint: batch_n_seconds: 10 batch_n_bytes: 1048576 tcp_address: 0.0.0.0:10515 tcp_buffer_size: 65536 connection_timeout_sec: 60 certificate: "c:/opt/chronicle/external/certs/client_generated_cert.pem" certificate_key: "c:/opt/chronicle/external/certs/client_generated_cert.key" minimum_tls_version: "TLSv1_3"
Alcuni punti importanti da ricordare:
Puoi configurare la dimensione del buffer TCP. Dimensione predefinita del buffer TCP è di 64 kB.
Il valore predefinito e consigliato per
connection_timeout
è 60 secondi. Se la connessione non è attiva per un determinato periodo di tempo, la connessione TCP viene terminata.La versione TLS minima viene verificata rispetto alla versione TLS del richiesta di input. La versione TLS della richiesta di input deve essere superiore a la versione TLS minima. La versione TLS minima deve essere una delle i seguenti valori:
TLSv1_0
,TLSv1_1
,TLSv1_2
,TLSv1_3
.
Puoi creare una directory certs sotto la directory di configurazione e archiviare del certificato.
Raccogli i dati dei file
Un raccoglitore di file è progettato per recuperare i log da un file. Il file dovrebbe essere associate al container Docker.
Utilizza questa opzione se vuoi caricare manualmente i log da un singolo file di log. Questo può essere utilizzato per eseguire il backfill dei log per un determinato file di log.
Avvia il forwarding di Google Security Operations dal container Docker:
docker run ` --name cfps ` --log-opt max-size=100m ` --log-opt max-file=10 ` -p 10514:10514 ` -v c:/opt/chronicle/config:c:/opt/chronicle/external ` -v c:/var/log/crowdstrike/falconhoseclient:c:/opt/chronicle/edr ` gcr.io/chronicle-container/cf_production_stable
Puoi aggiungere più porte utilizzando più opzioni o intervalli. Ad esempio: -p 3001:3000 -p 2023:2022
o -p 7000-8000:7000-8000
Questo comando docker run
è fondamentale per mappare il volume di carico al container.
In base a questo esempio, devi modificare lo strumento di inoltro di Google Security Operations
configurazione (FORWARDER_NAME.conf
file) come segue.
Il file sample.txt
deve essere presente nella
/var/log/crowdstrike/falconhostclient
cartella.
collectors: - file: common: enabled: true data_type: CS_EDR data_hint: batch_n_seconds: 10 batch_n_bytes: 1048576 file_path: c:/opt/chronicle/edr/output/sample.txt filter:
Configurazioni di flag
skip_seek_to_end
(bool): questo flag è impostato su false
per impostazione predefinita e il file
invia solo nuove righe di log come input. Se viene impostato su true
, vengono causati
righe di log precedenti da inviare di nuovo durante i riavvii dell'inoltro. Questo fa sì che log
duplicati. L'impostazione di questo flag su true
è utile in alcuni
(ad esempio durante le interruzioni), perché il riavvio del server di inoltro invia
mancano di nuovo le righe di log.
poll
(bool): il raccoglitore di file utilizza la libreria Tail per verificare la presenza di modifiche in
del file system. Se imposti questo flag su true
, la libreria Tail utilizza i sondaggi
anziché il metodo di notifica predefinito.
Raccogli i dati dei pacchetti
Il forwarding di Google Security Operations può acquisire i pacchetti direttamente da un'interfaccia di rete utilizzando Npcap sui sistemi Windows.
I pacchetti vengono acquisiti e inviati a Google Cloud anziché le voci di log. L'acquisizione viene eseguita solo da un'interfaccia locale.
Contatta l'assistenza di Google Security Operations per aggiornare il file di configurazione del forwarding di Google Security Operations in modo che supporti l'acquisizione dei pacchetti.
Per eseguire un forwarding Packet Capture (PCAP), devi disporre di quanto segue:
Installa Npcap sull'host Microsoft Windows.
Concedi a Google Security Operations i privilegi root o di amministratore per l'inoltro per monitorare l'interfaccia di rete.
Non sono necessarie opzioni della riga di comando.
Nell'installazione di Npcap, attiva la modalità di compatibilità di WinPcap.
Per configurare un forwarding PCAP, Google Cloud ha bisogno del GUID dell'interfaccia utilizzata per acquisire i pacchetti.
Esegui getmac.exe
sul computer su cui prevedi di installare il forwarding Google Security Operations
(il server o la macchina in ascolto sulla porta span) e inviano l'output a Google Security Operations.
In alternativa, puoi modificare il file di configurazione. Individua la sezione PCAP e sostituisci il valore GUID mostrato accanto all'interfaccia con il GUID visualizzato dall'esecuzione di getmac.exe.
Ad esempio, ecco una sezione originale PCAP:
- pcap:
common:
enabled: true
data_type: PCAP_DNS
batch_n_seconds: 10
batch_n_bytes: 1048576
interface: \Device\NPF_{1A7E7C8B-DD7B-4E13-9637-0437AB1A12FE}
bpf: udp port 53
Ecco l'output dell'esecuzione di getmac.exe
:
C:\>getmac.exe
Physical Address Transport Name
===========================================================================
A4-73-9F-ED-E1-82 \Device\Tcpip_{2E0E9440-ABFF-4E5B-B43C-E188FCAD1234}
Infine, ecco la sezione PCAP revisionata con il nuovo GUID:
- pcap:
common:
enabled: true
data_type: PCAP_DNS
batch_n_seconds: 10
batch_n_bytes: 1048576
interface: \Device\NPF_{2E0E9440-ABFF-4E5B-B43C-E188FCAD9734}
bpf: udp port 53
Raccogli dati dall'argomento Kafka
Puoi importare i dati dagli argomenti Kafka esattamente come da syslog. La i gruppi di consumer vengono utilizzati per consentirti di eseguire il deployment di un massimo di tre inoltro e eseguire il pull dei dati dallo stesso argomento Kafka. Per ulteriori informazioni, consulta Kafka.
Per saperne di più sui gruppi di consumer Kafka, consulta Gruppi di consumer Kafka
Configurazione di esempio: input Kafka
La seguente configurazione dell'inoltro di Google Security Operations mostra come impostare l'inoltro di Google Security Operations per l'importazione dagli argomenti Kafka.
File FORWARDER_NAME.conf
collectors: - kafka: common: batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:NIX_SYSTEM
enabled: true topic: example-topic group_id: chronicle-forwarder timeout: 60s brokers: ["broker-1:9092", "broker-2:9093"] tls: insecureSkipVerify: true certificate: "c:/path/to/cert.pem" certificate_key: "c:/path/to/cert.key" - syslog: common: batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:WINEVTLOG
enabled: true tcp_address: 0.0.0.0:30001 connection_timeout_sec: 60
File FORWARDER_NAME_auth.conf
collectors: - kafka: username: user password: password - syslog:
Raccogli dati WebProxy
L'inoltro di Google Security Operations può acquisire i dati WebProxy direttamente da una rete utilizzando Npcap e la invii a Google Cloud.
Per attivare l'acquisizione dei dati di WebProxy per il tuo sistema, contatta l'assistenza di Google Security Operations.
Prima di eseguire un forwarding WebProxy, segui questi passaggi:
Installa Npcap sull'host Microsoft Windows. Attiva compatibilità WinPcap durante l'installazione.
Concedi i privilegi root o di amministratore all'utente che esegue l'inoltro di Google Security Operations per monitorare l'interfaccia di rete.
Per configurare un forwarding WebProxy, Google Cloud ha bisogno del GUID per utilizzata per acquisire i pacchetti WebProxy.
Esegui
getmac.exe
sul computer in cui vuoi installare Google Security Operations per l'inoltro e inviare l'output a Google Security Operations. In alternativa, puoi modificare il file di configurazione. Individua la sezione WebProxy e sostituisci il GUID visualizzato accanto all'interfaccia con il GUID visualizzato dopo l'esecuzione digetmac.exe
.Modifica la configurazione dell'inoltro di Google Security Operations (
FORWARDER_NAME.conf
) come segue:- webproxy: common: enabled : true data_type: <Your LogType> batch_n_seconds: 10 batch_n_bytes: 1048576 interface: \Device\NPF_{2E0E9440-ABFF-4E5B-B43C-E188FCAD9734} bpf: tcp and dst port 80
Personalizza configurazioni
Nella tabella seguente sono elencati i parametri importanti utilizzati nel file di configurazione del server di inoltro.
Parametro | Descrizione |
---|---|
data_type | Il tipo di dati di log che il raccoglitore può raccogliere ed elaborare. |
metadati | Metadati, che eseguono l'override dei metadati globali. |
max_file_buffer_bytes | Numero massimo di byte che possono essere accumulati nel disco o nel buffer dei file. Il valore predefinito è 1073741824 , ovvero 1 GB. |
max_memory_buffer_bytes | Numero massimo di byte che possono essere accumulati nel buffer di memoria. La
il valore predefinito è 1073741824 , ovvero 1 GB. |
write_to_disk_dir_path | Il percorso da utilizzare per il buffer del file o del disco. |
write_to_disk_buffer_enabled | Se true , viene utilizzato il buffer del disco al posto del buffer di memoria. Il valore predefinito è false .
|
batch_n_bytes | Numero massimo di byte che possono essere accumulati dal raccoglitore dopo
che vengono raggruppati in batch. Il valore predefinito è 1048576 , ovvero
1 MB |
batch_n_seconds | Il numero di secondi dopo i quali i dati raccolti dal raccoglitore vengono raggruppati. Il valore predefinito è 11 secondi. |
data_hint | Formato dei dati che il raccoglitore può ricevere (di solito l'intestazione del file di log che descrive il formato). |
Per un elenco completo dei parametri utilizzati nel file di configurazione, vedi Campi di configurazione dello strumento di forwarding e Campi di configurazione del raccoglitore.
Attiva/disattiva la compressione dei dati
La compressione dei log riduce il consumo di larghezza di banda di rete durante il trasferimento dei log su Google Security Operations. Tuttavia, la compressione potrebbe causare un aumento dell'utilizzo della CPU. Il compromesso tra l'utilizzo della CPU e la larghezza di banda dipende da molti fattori, tra cui: tipo di dati di log, la comprimibilità di tali dati, la disponibilità di CPU cicli sull'host che esegue il forwarding di Google Security Operations e sulla necessità di ridurre il consumo della larghezza di banda.
Ad esempio, i log basati su testo si comprimono bene e possono fornire una larghezza di banda considerevole di risparmio con un utilizzo ridotto della CPU. Tuttavia, i payload crittografati dei pacchetti non elaborati si comprimono bene e comportano un maggiore utilizzo della CPU.
Per impostazione predefinita, la compressione dei log è disattivata. L'attivazione della compressione dei log potrebbe per ridurre il consumo di larghezza di banda. Tuttavia, l'abilitazione della compressione dei log potrebbe aumenta l'utilizzo della CPU. Tieni presente i compromessi.
Per abilitare la compressione dei log, imposta il campo compression
su
true
nel file di configurazione dell'inoltro di Google Security Operations come
mostrato nell'esempio che segue:
File FORWARDER_NAME.conf
output: compression: true url: malachiteingestion-pa.googleapis.com:443 identity: identity: collector_id: 10479925-878c-11e7-9421-10604b7cb5c1 customer_id: ebdc4bb9-878b-11e7-8455-10604b7cb5c1 ...
Il file FORWARDER_NAME_auth.conf
output: identity: secret_key: | { "type": "service_account", ... }
Configura il buffering del disco
Il buffering del disco consente di eseguire il buffer dei messaggi in backlog sul disco, la memoria. I messaggi in backlog possono essere archiviati in caso di arresto anomalo o di arresto del sistema di inoltro di Google Security Operations gli arresti anomali dell'host sottostante. Tieni presente che l'attivazione del buffering del disco può influire delle prestazioni.
Se il buffering del disco è disattivato, il forwarding di Google Security Operations utilizza 1 GB di memoria (RAM) per ogni
tipo di log (ad esempio, per ciascun connettore). Specifica il valore max_memory_buffer_bytes
di configurazione del deployment. La memoria massima consentita è di 4 GB.
Puoi configurare il buffering del disco automatico in modo da utilizzare un buffer condiviso dinamicamente raccoglitori, che gestisce meglio i picchi di traffico. Per abilitare la funzionalità buffer condiviso, aggiungi quanto segue nella configurazione del forwarding:
auto_buffer: enabled: true target_memory_utilization: 80
Se il buffering del disco automatico è abilitato,
target_memory_utilization
non è definito, utilizza un valore predefinito
di 70
.
Se esegui il forwarding di Google Security Operations utilizzando Docker, Google consiglia di montare un separato da quello di configurazione ai fini dell'isolamento. Inoltre, ogni input deve essere isolato con la propria directory o volume per evitare conflitti.
Configurazione di esempio: buffering del disco
La configurazione seguente include la sintassi per abilitare il buffering del disco:
collectors: - syslog: common: write_to_disk_buffer_enabled: true # c:/buffers/NIX_SYSTEM
is part of the external mounted volume for the forwarder write_to_disk_dir_path: c:/buffers/NIX_SYSTEM
max_file_buffer_bytes: 1073741824 batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:NIX_SYSTEM
enabled: true tcp_address: 0.0.0.0:30000 connection_timeout_sec: 60 - syslog: common: batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:WINEVTLOG
enabled: true tcp_address: 0.0.0.0:30001 connection_timeout_sec: 60
Imposta filtri per espressioni regolari
I filtri basati su espressioni regolari consentono di filtrare i log in base alle espressioni regolari con i log non elaborati.
I filtri utilizzano la sintassi RE2.
I filtri devono includere un'espressione regolare e, facoltativamente, definire un comportamento in caso di corrispondenza. Il comportamento predefinito per una corrispondenza è il blocco (puoi configurarla esplicitamente come blocco).
In alternativa, puoi specificare i filtri con il comportamento allow
. Se specifichi
un filtro allow
, il forwarding di Google Security Operations blocca tutti i log che non corrispondono ad almeno uno
Filtro allow
.
È possibile definire un numero arbitrario di filtri. Blocca filtri applicati
precedenza su allow
filtro.
Quando vengono definiti, i filtri devono avere un nome. I nomi delle persone attive i filtri verranno segnalati a Google Security Operations utilizzando metriche di integrità dello strumento di inoltro. Filtri definiti alla base della configurazione vengono uniti ai filtri definiti alla a livello di raccoglitore. I filtri a livello di raccoglitore hanno la precedenza nei casi di nomi in conflitto. Se non è definito nessun filtro nella directory principale o nel raccoglitore livello, il comportamento è consentire tutti.
Configurazione di esempio: filtri basati su espressioni regolari
Nella seguente configurazione del forwarding di Google Security Operations, WINEVTLOG
registra che
non corrispondono al filtro principale (allow_filter
) sono bloccati. Data la regolarità
, il filtro autorizza solo i log con priorità comprese tra 0 e 99.
Tuttavia, tutti i log NIX_SYSTEM
contenenti "foo" o "bar" sono bloccati,
nonostante allow_filter
. perché i filtri utilizzano un operatore logico OR. Tutti
vengono elaborati fino all'attivazione di un filtro.
regex_filters: allow_filter: regexp: ^<[1-9][0-9]?$>.*$ behavior_on_match: allow collectors: - syslog: common: regex_filters: block_filter_1: regexp: ^.*foo.*$ behavior_on_match: block block_filter_2: regexp: ^.*bar.*$ batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:NIX_SYSTEM
enabled: true tcp_address: 0.0.0.0:30000 connection_timeout_sec: 60 - syslog: common: batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:WINEVTLOG
enabled: true tcp_address: 0.0.0.0:30001 connection_timeout_sec: 60
Configura etichette arbitrarie
Le etichette vengono utilizzate per collegare metadati arbitrari ai log utilizzando coppie chiave-valore. Le etichette possono essere configurate per un intero forwarding di Google Security Operations o all'interno di un raccoglitore specifico di uno spedizioniere di Google Security Operations. Se vengono fornite entrambe le opzioni, le etichette vengono unite a quelle del raccoglitore chiavi che hanno la precedenza su quelle del server di inoltro di Google Security Operations, se le chiavi si sovrappongono.
Configurazione di esempio: etichette arbitrarie
Nella seguente configurazione per l'inoltro di Google Security Operations, le chiavi foo=bar
e meow=mix
e
sono collegate sia ai log WINEVTLOG
sia ai valori foo=baz
e
meow=mix
coppie chiave-valore sono collegate ai log NIX_SYSTEM
.
metadata: labels: foo: bar meow: mix collectors: syslog: common: metadata: labels: foo: baz meow: mix batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:NIX_SYSTEM
enabled: true tcp_address: 0.0.0.0:30000 connection_timeout_sec: 60 syslog: common: batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:WINEVTLOG
enabled: true tcp_address: 0.0.0.0:30001 connection_timeout_sec: 60
Configura spazi dei nomi
Utilizza le etichette dello spazio dei nomi per identificare i log di segmenti di rete distinti o eliminare i conflitti di indirizzi IP sovrapposti. Puoi configurare un'etichetta dello spazio dei nomi per l'intero mittente di Google Security Operations o all'interno di un raccoglitore specifico dello strumento di inoltro di Google Security Operations. Se entrambi sono incluso, lo spazio dei nomi del raccoglitore specifico ha la precedenza.
Ogni spazio dei nomi configurato per il forwarding di Google Security Operations viene visualizzato con gli asset associati in l'interfaccia utente di Google Security Operations. Puoi anche cercare spazi dei nomi utilizzando funzionalità di ricerca di Google Security Operations.
Per informazioni su come visualizzare gli spazi dei nomi nell'interfaccia utente di Google Security Operations, consulta questa pagina.
Configurazione di esempio: spazi dei nomi
Nella seguente configurazione del forwarding di Google Security Operations, i log WINEVTLOG
sono
collegato allo spazio dei nomi FORWARDER e i log NIX_SYSTEM
collegato allo spazio dei nomi CORPORATE.
metadata: namespace: FORWARDER collectors: - syslog: common: metadata: namespace: CORPORATE batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:NIX_SYSTEM
enabled: true tcp_address: 0.0.0.0:30000 connection_timeout_sec: 60 - syslog: common: batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:WINEVTLOG
enabled: true tcp_address: 0.0.0.0:30001 connection_timeout_sec: 60
Configura le opzioni di bilanciamento del carico e alta disponibilità
È possibile eseguire il deployment del forwarding di Google Security Operations per Windows su Docker in un ambiente in cui è installato un bilanciatore del carico di livello 4 tra l'origine dati e il forwarding di Google Security Operations di Compute Engine. Ciò ti consente di distribuire la raccolta di log tra più forwardinger Google Security Operations oppure, in caso di errore, invia i log a un altro server di forwarding di Google Security Operations. Questo è supportata solo con il tipo di raccolta syslog.
Il forwarding di Google Security Operations per Windows su Docker include un server HTTP integrato che risponde all'integrità HTTP dal bilanciatore del carico. Il server HTTP aiuta anche a garantire che i log non venga perso durante l'avvio o l'arresto di un forwarding di Google Security Operations.
Configura il server HTTP, il bilanciamento del carico e le opzioni per l'alta disponibilità
nella sezione server
del file di configurazione dell'inoltro di Google Security Operations. Queste opzioni
supporto dell'impostazione della durata del timeout e dei codici di stato restituiti in risposta a
controlli di integrità ricevuti nello scheduler dei container e basati sull'orchestrazione
oltre che dai bilanciatori del carico convenzionali.
Usa i seguenti percorsi dell'URL per i controlli di integrità, idoneità e attività.
I valori <host:port>
sono definiti nella configurazione dell'inoltro di Google Security Operations.
http://<host:port>/meta/available
: controlli di attività per il container scheduler/orchestratori, come Kubernetes.http://<host:port>/meta/ready
: controlli di idoneità e caricamento tradizionale di integrità dei bilanciatori del carico.
La seguente configurazione del forwarding di Google Security Operations è un esempio per bilanciamento del carico e disponibilità:
collectors: - syslog: common: batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:NIX_SYSTEM
enabled: true tcp_address: 0.0.0.0:30000 connection_timeout_sec: 60 - syslog: common: batch_n_bytes: 1048576 batch_n_seconds: 10 data_hint: null data_type:WINEVTLOG
enabled: true tcp_address: 0.0.0.0:30001 connection_timeout_sec: 60 server: graceful_timeout: 15s drain_timeout: 10s http: port: 8080 host: 0.0.0.0 read_timeout: 3s read_header_timeout: 3s write_timeout: 3s idle_timeout: 3s routes: - meta: available_status: 204 ready_status: 204 unready_status: 503
Percorso di configurazione | Descrizione |
---|---|
server : tolleranza_grazia | La quantità di tempo in cui lo strumento di inoltro di Google Security Operations restituisce un controllo di idoneità/integrità scadente e accetta ancora nuove connessioni. Questo è anche il tempo di attesa tra ricevere un segnale per interrompere e avviare effettivamente l'arresto della sul server stesso. In questo modo concedi al bilanciatore del carico il tempo di rimuovere il forwarding Google Security Operations dalla piscina. |
server : scratch_timeout | Il tempo di attesa per l'inoltro di Google Security Operations prima che le connessioni attive chiudersi autonomamente prima di essere chiusi dal server. |
server : porta http : | Il numero di porta su cui il server HTTP rimane in ascolto per i controlli di integrità provenienti dall' con il bilanciatore del carico di rete passthrough esterno regionale. Il valore deve essere compreso tra 1024 e 65535. |
server : http : host | L'indirizzo IP, o nome host che può essere risolto in indirizzi IP, che deve rimanere in ascolto. Se vuoto, il valore predefinito è local system (0.0.0.0). |
server : http : tempo_di_lettura | Utilizzato per ottimizzare il server HTTP. In genere, non è necessario cambiare l'impostazione predefinita. Il tempo massimo consentito per leggere l'intero richiesta, sia l'intestazione che il corpo. Puoi impostare sia read_timeout che read_header_timeout. |
server : http : read_header_timeout | Utilizzato per ottimizzare il server HTTP. In genere, non è necessario cambiare l'impostazione predefinita. Il tempo massimo consentito per leggere la richiesta intestazioni. La lettura della connessione alla scadenza viene reimpostata dopo aver letto il intestazione. |
server : http : write_timeout | Utilizzato per ottimizzare il server HTTP. In genere, non è necessario cambiare l'impostazione predefinita. Il tempo massimo consentito per inviare una risposta. Viene reimpostata quando viene letta l'intestazione di una nuova richiesta. |
server : http : idle_timeout | Utilizzato per ottimizzare il server HTTP. In genere, non è necessario cambiare l'impostazione predefinita. Il tempo massimo di attesa per il successivo quando vengono abilitate le connessioni inattive. Se idle_timeout è pari a zero, è utilizzato il valore read_timeout. Se entrambi sono pari a zero, il valore read_header_timeout in uso. |
route : meta : ready_status | Il codice di stato restituito dal server di inoltro di Google Security Operations quando è pronto ad accettare il traffico
in una delle seguenti situazioni:
|
route : meta : unready_status | Il codice di stato restituito dal server di inoltro di Google Security Operations quando non è pronto ad accettare per via del traffico. |
route : meta : available_status | Il codice di stato restituito dal server di inoltro di Google Security Operations alla ricezione di un controllo di attività e lo strumento di inoltro di Google Security Operations è disponibile. Scheduler/orchestratori di container come Kubernetes invia spesso controlli di attività. |