Raccogliere i log di Aruba ClearPass
Questo documento spiega come importare i log di Aruba ClearPass in Google Security Operations utilizzando l'agente Bindplane.
Aruba ClearPass Policy Manager genera messaggi syslog per l'autenticazione RADIUS, TACACS+, l'autenticazione web, la postura dell'endpoint, l'accesso ospite, i record di controllo e gli eventi di sistema. Il parser mappa i campi estratti a Unified Data Model (UDM).
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Un'istanza Google SecOps
- Windows Server 2016 o versioni successive oppure host Linux con
systemd - Connettività di rete tra l'agente Bindplane e ClearPass Policy Manager
- Se l'agente viene eseguito dietro un proxy, assicurati che le porte del firewall siano aperte in base ai requisiti dell'agente Bindplane
- Accesso con privilegi alla console di ClearPass Policy Manager
Recuperare il file di autenticazione importazione di Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Agenti di raccolta.
- Scarica il file di autenticazione importazione.
Salva il file in modo sicuro sul sistema in cui verrà installato l'agente Bindplane.
Recuperare l'ID cliente Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Profilo.
Copia e salva l'ID cliente dalla sezione Dettagli dell'organizzazione.
Installa l'agente Bindplane
Installa l'agente Bindplane sul sistema operativo Windows o Linux seguendo le istruzioni riportate di seguito.
Installazione di Windows
- Apri Prompt dei comandi o PowerShell come amministratore.
Esegui questo comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietAttendi il completamento dell'installazione.
Verifica l'installazione eseguendo:
sc query observiq-otel-collectorIl servizio dovrebbe essere visualizzato come IN ESECUZIONE.
Installazione di Linux
- Apri un terminale con privilegi di root o sudo.
Esegui questo comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.shAttendi il completamento dell'installazione.
Verifica l'installazione eseguendo:
sudo systemctl status observiq-otel-collectorIl servizio dovrebbe essere visualizzato come attivo (in esecuzione).
Risorse aggiuntive per l'installazione
Per ulteriori opzioni di installazione e risoluzione dei problemi, consulta la guida all'installazione dell'agente Bindplane.
Configura l'agente Bindplane per importare syslog e inviarli a Google SecOps
Individua il file di configurazione
Linux:
sudo nano /etc/bindplane-agent/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Modifica il file di configurazione
Sostituisci l'intero contenuto di
config.yamlcon la seguente configurazione:receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/clearpass: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: CLEARPASS raw_log_field: body service: pipelines: logs/clearpass_to_chronicle: receivers: - udplog exporters: - chronicle/clearpass
Parametri di configurazione
Sostituisci i seguenti segnaposto:
Configurazione del ricevitore:
listen_address: Indirizzo IP e porta da ascoltare:0.0.0.0per ascoltare su tutte le interfacce (consigliato)- La porta
514è la porta syslog standard (richiede l'accesso root su Linux; utilizza1514per l'accesso non root)
Configurazione dell'esportatore:
creds_file_path: percorso completo del file di autenticazione importazione:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
customer_id: ID cliente copiato dalla console Google SecOpsendpoint: URL endpoint regionale:- Stati Uniti:
malachiteingestion-pa.googleapis.com - Europa:
europe-malachiteingestion-pa.googleapis.com - Asia:
asia-southeast1-malachiteingestion-pa.googleapis.com - Per un elenco completo, vedi Endpoint regionali.
- Stati Uniti:
Salvare il file di configurazione
- Dopo la modifica, salva il file:
- Linux: premi
Ctrl+O, poiEntere infineCtrl+X. - Windows: fai clic su File > Salva.
- Linux: premi
Riavvia l'agente Bindplane per applicare le modifiche
Per riavviare l'agente Bindplane in Linux, esegui questo comando:
sudo systemctl restart observiq-otel-collectorVerifica che il servizio sia in esecuzione:
sudo systemctl status observiq-otel-collectorControlla i log per individuare eventuali errori:
sudo journalctl -u observiq-otel-collector -f
Per riavviare l'agente Bindplane in Windows, scegli una delle seguenti opzioni:
Prompt dei comandi o PowerShell come amministratore:
net stop observiq-otel-collector && net start observiq-otel-collectorConsole Services:
- Premi
Win+R, digitaservices.msce premi Invio. - Individua observIQ OpenTelemetry Collector.
- Fai clic con il tasto destro del mouse e seleziona Riavvia.
Verifica che il servizio sia in esecuzione:
sc query observiq-otel-collectorControlla i log per individuare eventuali errori:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- Premi
Configurare il server syslog Aruba ClearPass
- Accedi alla console ClearPass Policy Manager.
- Seleziona Amministrazione > Server esterni > Destinazioni Syslog.
- Fai clic su Aggiungi.
- Nella finestra Aggiungi destinazione syslog visualizzata, specifica i seguenti dettagli:
- Indirizzo host: inserisci l'indirizzo IP di Bindplane.
- Porta server: inserisci il numero di porta di Bindplane.
- Protocollo: seleziona UDP (puoi anche selezionare TCP, a seconda della configurazione di Bindplane).
- Fai clic su Salva.
Configurare i filtri di esportazione syslog
- Vai a Amministrazione > Server esterni > Filtri di esportazione Syslog.
- Fai clic su Aggiungi.
- Nella finestra Aggiungi filtri Syslog visualizzata, specifica quanto segue nella scheda Generale:
- Nome: inserisci il nome del filtro di esportazione syslog in base alla tabella in Elementi del modello di esportazione.
- Esporta modello: seleziona il modello di esportazione appropriato in base alla tabella in Elementi del modello di esportazione.
- Tipo di formato di esportazione eventi: seleziona Standard.
- Server Syslog: seleziona l'indirizzo IP di Bindplane.
- Nell'elenco Modello di esportazione, quando selezioni i modelli di esportazione Sessione o Approfondimento, la scheda Filtro e colonne è attivata. Completa i seguenti passaggi:
- Fai clic sulla scheda Filtro e colonne.
- Filtro dati: assicurati che sia selezionato il valore predefinito Tutte le richieste.
- Selezione delle colonne: seleziona il gruppo di campi predefinito in base alla tabella in Elementi del modello di esportazione.
- Colonne selezionate: verifica che i campi compilati automaticamente corrispondano alla tabella in Elementi del modello di esportazione.
- Fai clic sulla scheda Riepilogo.
- Fai clic su Salva.
- Nell'elenco Modello di esportazione, quando selezioni i modelli di esportazione Eventi di sistema e Record di controllo, la scheda Filtro e colonne non è abilitata. Vai alla scheda Riepilogo e fai clic su Salva.
- Ripeti i passaggi per aggiungere i filtri di esportazione syslog per tutti i modelli di esportazione Sessione, Approfondimento, Record di controllo ed Eventi di sistema in base ai dettagli della tabella in Elementi del modello di esportazione.
Esportare gli elementi del modello
La tabella seguente descrive gli elementi che devi configurare per ogni modello di esportazione. I campi predefiniti elencati in Colonne selezionate sono supportati per l'analisi degli eventi. Assicurati che tutti i campi menzionati nella tabella in Colonne selezionate (predefinite) siano presenti e nello stesso ordine. Assicurati di creare i modelli di filtro di esportazione syslog esattamente come forniti nella tabella, incluso il nome del filtro sensibile alle maiuscole.
| Nome del filtro di esportazione Syslog (sensibile alle maiuscole) | Modello di esportazione | Gruppi di campi predefiniti | Colonne selezionate (impostazione predefinita) |
|---|---|---|---|
ACPPM_radauth |
Log degli insight | Autenticazioni Radius | Auth.Username, Auth.Host-MAC-Address, Auth.Protocol, Auth.NAS-IP-Address, CppmNode.CPPM-Node, Auth.Login-Status, Auth.Service, Auth.Source, Auth.Roles, Auth.Enforcement-Profiles |
ACPPM_radfailedauth |
Log degli insight | Autenticazioni Radius non riuscite | Auth.Username, Auth.Host-MAC-Address, Auth.NAS-IP-Address, CppmNode.CPPM-Node, Auth.Service, CppmErrorCode.Error-Code-Details, CppmAlert.Alerts |
ACPPM_radacct |
Log degli insight | RADIUS Accounting | Radius.Username, Radius.Calling-Station-Id, Radius.Framed-IP-Address, Radius.NAS-IP-Address, Radius.Start-Time, Radius.End-Time, Radius.Duration, Radius.Input-bytes, Radius.Output-bytes |
ACPPM_tacauth |
Log degli insight | Autenticazione tacacs | tacacs.Username, tacacs.Remote-Address, tacacs.Request-Type, tacacs.NAS-IP-Address, tacacs.Service, tacacs.Auth-Source, tacacs.Roles, tacacs.Enforcement-Profiles, tacacs.Privilege-Level |
ACPPM_tacfailedauth |
Log degli insight | tacacs Failed Authentication | tacacs.Username, tacacs.Remote-Address, tacacs.Request-Type, tacacs.NAS-IP-Address, tacacs.Service, CppmErrorCode.Error-Code-Details, CppmAlert.Alerts |
ACPPM_webauth |
Log degli insight | WEBAUTH | Auth.Username, Auth.Host-MAC-Address, Auth.Host-IP-Address, Auth.Protocol, Auth.System-Posture-Token, CppmNode.CPPM-Node, Auth.Login-Status, Auth.Service, Auth.Source, Auth.Roles, Auth.Enforcement-Profiles |
ACPPM_webfailedauth |
Log degli insight | WEBAUTH Failed Authentications | Auth.Username, Auth.Host-MAC-Address, Auth.Host-IP-Address, Auth.Protocol, Auth.System-Posture-Token, CppmNode.CPPM-Node, Auth.Login-Status, Auth.Service, CppmErrorCode.Error-Code-Details, CppmAlert.Alerts |
ACPPM_appauth |
Log degli insight | Autenticazione delle applicazioni | Auth.Username, Auth.Host-IP-Address, Auth.Protocol, CppmNode.CPPM-Node, Auth.Login-Status, Auth.Service, Auth.Source, Auth.Roles, Auth.Enforcement-Profiles |
ACPPM_failedappauth |
Log degli insight | Autenticazione dell'applicazione non riuscita | Auth.Username, Auth.Host-IP-Address, Auth.Protocol, CppmNode.CPPM-Node, Auth.Login-Status, Auth.Service, CppmErrorCode.Error-Code-Details, CppmAlert.Alerts |
ACPPM_endpoints |
Log degli insight | Endpoint | Endpoint.MAC-Address, Endpoint.MAC-Vendor, Endpoint.IP-Address, Endpoint.Username, Endpoint.Device-Category, Endpoint.Device-Family, Endpoint.Device-Name, Endpoint.Conflict, Endpoint.Status, Endpoint.Added-At, Endpoint.Updated-At |
ACPPM_cpguest |
Log degli insight | Clearpass Guest | Guest.Username, Guest.MAC-Address, Guest.Visitor-Name, Guest.Visitor-Company, Guest.Role-Name, Guest.Enabled, Guest.Created-At, Guest.Starts-At, Guest.Expires-At |
ACPPM_onbenroll |
Log degli insight | Registrazione a bordo | OnboardEnrollment.Username, OnboardEnrollment.Device-Name, OnboardEnrollment.MAC-Address, OnboardEnrollment.Device-Product, OnboardEnrollment.Device-Version, OnboardEnrollment.Added-At, OnboardEnrollment.Updated-At |
ACPPM_onbcert |
Log degli insight | Certificato di bordo | OnboardCert.Username, OnboardCert.Mac-Address, OnboardCert.Subject, OnboardCert.Issuer, OnboardCert.Valid-From, OnboardCert.Valid-To, OnboardCert.Revoked-At |
ACPPM_onboscp |
Log degli insight | OCSP integrato | OnboardOCSP.Remote-Address, OnboardOCSP.Response-Status-Name, OnboardOCSP.Timestamp |
ACPPM_cpsysevent |
Log degli insight | Eventi di sistema Clearpass | CppmNode.CPPM-Node, CppmSystemEvent.Source, CppmSystemEvent.Level, CppmSystemEvent.Category, CppmSystemEvent.Action, CppmSystemEvent.Timestamp |
ACPPM_cpconfaudit |
Log degli insight | Clearpass Configuration Audit | CppmConfigAudit.Name, CppmConfigAudit.Action, CppmConfigAudit.Category, CppmConfigAudit.Updated-By, CppmConfigAudit.Updated-At |
ACPPM_possummary |
Log degli insight | Riepilogo della postura | Endpoint.MAC-Address, Endpoint.IP-Address, Endpoint.Hostname, Endpoint.Usermame, Endpoint.System-Agent-Type, Endpoint.System-Agent-Version, Endpoint.System-Client-OS, Endpoint.System-Posture-Token, Endpoint.Posture-Healthy, Endpoint.Posture-Unhealthy |
ACPPM_posfwsummary |
Log degli insight | Riepilogo del firewall della postura | Endpoint.MAC-Address, Endpoint.IP-Address, Endpoint.Hostname, Endpoint.Usermame, Endpoint.System-Agent-Type, Endpoint.System-Agent-Version, Endpoint.System-Client-OS, Endpoint.System-Posture-Token, Endpoint.Firewall-APT, Endpoint.Firewall-Input, Endpoint.Firewall-Output |
ACPPM_poavsummary |
Log degli insight | Riepilogo di Posture Antivirus | Endpoint.MAC-Address, Endpoint.IP-Address, Endpoint.Hostname, Endpoint.Usermame, Endpoint.System-Agent-Type, Endpoint.System-Agent-Version, Endpoint.System-Client-OS, Endpoint.System-Posture-Token, Endpoint.Antivirus-APT, Endpoint.Antivirus-Input, Endpoint.Antivirus-Output |
ACPPM_posassummary |
Log degli insight | Riepilogo di Posture Antispyware | Endpoint.MAC-Address, Endpoint.IP-Address, Endpoint.Hostname, Endpoint.Usermame, Endpoint.System-Agent-Type, Endpoint.System-Agent-Version, Endpoint.System-Client-OS, Endpoint.System-Posture-Token, Endpoint.Antispyware-APT, Endpoint.Antispyware-Input, Endpoint.Antispyware-Output |
ACPPM_posdskencrpsummary |
Log degli insight | Riepilogo della postura DiskEncryption | Endpoint.MAC-Address, Endpoint.IP-Address, Endpoint.Hostname, Endpoint.Usermame, Endpoint.System-Agent-Type, Endpoint.System-Agent-Version, Endpoint.System-Client-OS, Endpoint.System-Posture-Token, Endpoint.DiskEncryption-APT, Endpoint.DiskEncryption-Input, Endpoint.DiskEncryption-Output |
ACPPM_loggedusers |
Log delle sessioni | Utenti che hanno eseguito l'accesso | Common.Username, Common.Service, Common.Roles, Common.Host-MAC-Address, RADIUS.Acct-Framed-IP-Address, Common.NAS-IP-Address, Common.Request-Timestamp |
ACPPM_failedauth |
Log delle sessioni | Autenticazioni non riuscite | Common.Username, Common.Service, Common.Roles, RADIUS.Auth-Source, RADIUS.Auth-Method, Common.System-Posture-Token, Common.Enforcement-Profiles, Common.Host-MAC-Address, Common.NAS-IP-Address, Common.Error-Code, Common.Alerts, Common.Request-Timestamp |
ACPPM_radacctsession |
Log delle sessioni | RADIUS Accounting | RADIUS.Acct-Username, RADIUS.Acct-NAS-IP-Address, RADIUS.Acct-NAS-Port, RADIUS.Acct-NAS-Port-Type, RADIUS.Acct-Calling-Station-Id, RADIUS.Acct-Framed-IP-Address, RADIUS.Acct-Session-Id, RADIUS.Acct-Session-Time, RADIUS.Acct-Output-Pkts, RADIUS.Acct-Input-Pkts, RADIUS.Acct-Output-Octets, RADIUS.Acct-Input.Octets, RADIUS.Acct-Service-Name, RADIUS.Acct-Timestamp |
ACPPM_tacadmin |
Log delle sessioni | Amministrazione di tacacs+ | Common.Username, Common.Service, tacacs.Remote-Address, tacacs.Privilege.Level, Common.Request-Timestamp |
ACPPM_tacacct |
Log delle sessioni | tacacs+ Accounting | Common.Username, Common.Service, tacacs.Remote-Address, tacacs.Acct-Flags, tacacs.Privilege.Level, Common.Request-Timestamp |
ACPPM_webauthsession |
Log delle sessioni | Autenticazione web | Common.Username, Common.Host-MAC-Address, WEBAUTH.Host-IP-Address, Common.Roles, Common.System-Posture-Token, Common.Enforcement-Profiles, Common.Request-Timestamp |
ACPPM_guestacc |
Log delle sessioni | Accesso ospite | Common.Username, RADIUS.Auth-Method, Common.Host-MAC-Address, Common.Roles, Common.System-Posture-Token, Common.Enforcement-Profiles, Common.Request-Timestamp |
ACPPM_auditrecords |
Record di controllo | Non applicabile | Non applicabile |
ACPPM_systemevents |
Eventi di sistema | Non applicabile | Non applicabile |
Tabella di mappatura UDM
| Campo log | Mappatura UDM | Logic |
|---|---|---|
Action |
security_result.action |
Il valore viene mappato dal campo "Azione" se il suo valore è "ALLOW" o "BLOCK". |
Auth.Enforcement-Profiles |
security_result.detection_fields.value |
Il valore è mappato dal campo "Auth.Enforcement-Profiles" |
Auth.Host-MAC-Address |
principal.mac |
Il valore viene mappato dal campo "Auth.Host-MAC-Address" dopo la conversione nel formato dell'indirizzo MAC separato da due punti |
Auth.Login-Status |
security_result.detection_fields.value |
Il valore è mappato dal campo "Auth.Login-Status" |
Auth.NAS-IP-Address |
target.ip |
Il valore è mappato dal campo "Auth.NAS-IP-Address" |
Auth.Protocol |
intermediary.application |
Il valore viene mappato dal campo "Auth.Protocol" |
Auth.Service |
security_result.detection_fields.value |
Il valore è mappato dal campo "Auth.Service" |
Auth.Source |
principal.hostname |
Il valore viene mappato dal campo "Auth.Source" dopo aver rimosso eventuali caratteri alfanumerici e spazi iniziali |
Auth.Username |
principal.user.user_display_name |
Il valore è mappato dal campo "Auth.Username" |
Category |
metadata.event_type |
Se il valore è "Logged in" (Accesso eseguito), il campo UDM è impostato su "USER_LOGIN" (Accesso utente). Se il valore è "Logged out", il campo UDM è impostato su "USER_LOGOUT" |
Common.Alerts |
security_result.description |
Il valore viene mappato dal campo "Common.Alerts" |
Common.Enforcement-Profiles |
security_result.detection_fields.value |
Il valore è mappato dal campo "Common.Enforcement-Profiles" |
Common.Login-Status |
security_result.detection_fields.value |
Il valore viene mappato dal campo "Common.Login-Status" |
Common.NAS-IP-Address |
target.ip |
Il valore viene mappato dal campo "Common.NAS-IP-Address" |
Common.Roles |
principal.user.group_identifiers |
Il valore è mappato dal campo "Common.Roles" |
Common.Service |
security_result.detection_fields.value |
Il valore è mappato dal campo "Common.Service" |
Common.Username |
principal.user.userid |
Il valore è mappato dal campo "Common.Username" |
Component |
intermediary.application |
Il valore viene mappato dal campo "Componente" |
Description |
metadata.description |
Il valore viene mappato dal campo "Descrizione" dopo aver sostituito i caratteri di nuova riga con il simbolo della barra verticale. Se il campo "Descrizione" contiene "User", "Address" e "Role", viene analizzato come coppie chiave-valore e mappato ai campi UDM corrispondenti. Se il campo "Descrizione" contiene "Impossibile connettersi a", il nome host di destinazione viene estratto e mappato a "target.hostname" |
EntityName |
principal.hostname |
Il valore viene mappato dal campo "EntityName" |
InterIP |
target.ip |
Il valore è mappato dal campo "InterIP" |
Level |
security_result.severity |
Se il valore è "ERROR" o "FATAL", il campo UDM è impostato su "HIGH". Se il valore è "WARN", il campo UDM è impostato su "MEDIUM". Se il valore è "INFO" o "DEBUG", il campo UDM è impostato su "LOW" |
LogNumber |
metadata.product_log_id |
Il valore è mappato dal campo "LogNumber" |
RADIUS.Acct-Framed-IP-Address |
principal.ip |
Il valore è mappato dal campo "RADIUS.Acct-Framed-IP-Address" |
Timestamp |
metadata.event_timestamp |
Il valore viene mappato dal campo "Timestamp" dopo la conversione in UTC e l'analisi come timestamp |
User |
principal.user.userid |
Il valore viene mappato dal campo "Utente" |
agent_ip |
principal.ip,, principal.asset.ip |
Il valore è mappato dal campo "agent_ip" |
community |
additional.fields.value.string_value |
Il valore è mappato dal campo "community" |
descr |
metadata.description |
Il valore è mappato dal campo "descr" |
enterprise |
additional.fields.value.string_value |
Il valore viene mappato dal campo "enterprise" |
eventDescription |
metadata.description |
Il valore viene mappato dal campo "eventDescription" dopo la rimozione delle virgolette |
generic_num |
additional.fields.value.string_value |
Il valore è mappato dal campo "generic_num" |
prin_mac |
principal.mac |
Il valore viene mappato dal campo "prin_mac" dopo la conversione nel formato dell'indirizzo MAC separato dai due punti |
prin_port |
principal.port |
Il valore viene mappato dal campo "prin_port" e convertito in numero intero |
specificTrap_name |
additional.fields.value.string_value |
Il valore è mappato dal campo "specificTrap_name" |
specificTrap_num |
additional.fields.value.string_value |
Il valore è mappato dal campo "specificTrap_num" |
uptime |
additional.fields.value.string_value |
Il valore è mappato dal campo "uptime" |
version |
metadata.product_version |
Il valore è mappato dal campo "version" |
extensions.auth.type |
Il valore è impostato su "SSO" | |
metadata.event_type |
Il valore viene determinato in base a vari campi di log e alla logica del parser. Per maggiori dettagli, consulta il codice del parser | |
metadata.log_type |
Il valore è impostato su "CLEARPASS" | |
metadata.product_name |
Il valore è impostato su "ClearPass" | |
metadata.vendor_name |
Il valore è impostato su "ArubaNetworks" |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.