Raccogli i log della VPN SSL di Array Networks

Versione parser: 1.0

Supportata in:

Questo documento spiega come importare i log della VPN SSL di Array Networks in Google Security Operations utilizzando l'agente Bindplane.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Un'istanza Google SecOps
  • Un host Windows 2016 o versioni successive o Linux con systemd
  • Se l'esecuzione avviene tramite un proxy, assicurati che le porte del firewall siano aperte in base ai requisiti dell'agente Bindplane
  • Accesso con privilegi alla console di gestione o all'appliance (serie AG o vxAG) della VPN SSL di Array Networks

Recupera le credenziali di Google SecOps per l'agente Bindplane

Per autenticare l'agente Bindplane in Google SecOps, scegli uno dei seguenti metodi:

  • Nuovi deployment: utilizza l'API Chronicle (opzione 1).
  • Deployment precedenti: continua a utilizzare il file di autenticazione dell'importazione (opzione 2) fino alla dismissione dell'API Ingestion il 20 luglio 2027.
  1. Accedi alla Google Cloud console e seleziona il Google Cloud progetto collegato alla tua istanza Google SecOps.
  2. Vai a IAM e amministrazione > Service account.
  3. Fai clic su Crea service account.
  4. Fornisci i seguenti dettagli di configurazione:
    • Nome service account: inserisci un nome per l'account (ad esempio, bindplane-ingest).
    • Descrizione service account: inserisci una descrizione (ad esempio, Bindplane agent log ingestion).
  5. Fai clic su Crea e continua.
  6. Nella sezione Concedi a questo account di servizio l'accesso al progetto, fai clic su Seleziona un ruolo e seleziona Editor Chronicle.
  7. Fai clic su Continua e poi su Fine.
  8. Fai clic sul account di servizio che hai creato, quindi vai alla scheda Chiavi.
  9. Fai clic su Aggiungi chiave > Crea nuova chiave.
  10. Seleziona JSON e fai clic su Crea. Il file della chiave viene scaricato sul computer.
  11. Salva il file della chiave come ingestion-auth.json nella directory del raccoglitore Bindplane (/opt/observiq-otel-collector/ingestion-auth.json su Linux o C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json su Windows) oppure aggiorna creds_file_path in config.yaml in modo che corrisponda al percorso in cui lo salvi.
  12. Vai a IAM e amministrazione > Impostazioni e copia il numero di progetto. Ti servirà per la configurazione dell'esportatore.

Opzione 2: scarica il file di autenticazione dell'importazione (legacy)

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Agenti di raccolta.
  3. Scarica il file di autenticazione dell'importazione.
  4. Salva il file in modo sicuro sul sistema in cui verrà installato l'agente Bindplane.

Recupera l'ID cliente Google SecOps

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Profilo.
  3. 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

  1. Apri il prompt dei comandi o PowerShell come amministratore.
  2. Esegui questo comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Installazione di Linux

  1. Apri un terminale con privilegi di root o sudo.
  2. Esegui questo comando:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Risorse di installazione aggiuntive

Per ulteriori opzioni di installazione, consulta questa guida all'installazione.

Configura l'agente Bindplane per importare Syslog e inviarlo a Google SecOps

  1. Accedi al file di configurazione:

    • Individua il file config.yaml. In genere si trova nella directory /opt/observiq-otel-collector/ su Linux o nella directory di installazione su Windows.
    • Apri il file utilizzando un editor di testo (ad esempio nano, vi o Blocco note).
  2. Modifica il file config.yaml come segue:

    receivers:
      udplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: <CUSTOMER_ID>
        endpoint: chronicle.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'ARRAYNETWORKS_VPN'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
    • Sostituisci la porta e l'indirizzo IP in base alle esigenze della tua infrastruttura.
    • Sostituisci <CUSTOMER_ID> con l'ID cliente effettivo.
    • Aggiorna /path/to/ingestion-authentication-file.json al percorso del file in cui è stato salvato il file della chiave del account di servizio (opzione 1) nel passaggio 1.
    • Sostituisci <LOCATION> con la regione della tua istanza Google SecOps (ad esempio, us, europe, o asia-southeast1). L'esportatore antepone chronicle.googleapis.com a questo valore. Per l'elenco completo, consulta Endpoint regionali.
    • Sostituisci <PROJECT_NUMBER> con il numero di progetto da IAM e amministrazione > Impostazioni.

Esportatore dell'API Ingestion legacy

  • Se utilizzi il file di autenticazione dell'importazione dell'opzione 2, sostituisci il blocco exporters con il seguente. Imposta creds_file_path sul percorso del file di autenticazione dell'importazione e, se la tua istanza si trova al di fuori degli Stati Uniti, sostituisci malachiteingestion-pa.googleapis.com con l'endpoint regionale (ad esempio, europe-malachiteingestion-pa.googleapis.com).

    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: <CUSTOMER_ID>
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'ARRAYNETWORKS_VPN'
        raw_log_field: body
        ingestion_labels:
    

Riavvia l'agente Bindplane per applicare le modifiche

  1. Per riavviare l'agente Bindplane in Linux, esegui questo comando:

    sudo systemctl restart observiq-otel-collector
    
  2. Per riavviare l'agente Bindplane in Windows, puoi utilizzare la console Servizi o inserire il seguente comando:

    net stop observiq-otel-collector && net start observiq-otel-collector
    

Configura l'inoltro di Syslog sulla VPN SSL di Array Networks

  1. Accedi alla console di gestione della VPN SSL di Array Networks (interfaccia utente web).
  2. Nel menu di navigazione a sinistra, fai clic su STRUMENTI DI AMMINISTRAZIONE.
  3. Fai clic su Monitoraggio.
  4. Fai clic sulla scheda Logging.
  5. Fai clic sulla sottoscheda Server Syslog.
  6. Nella sezione CONFIGURAZIONE SERVER SYSLOG REMOTO, fai clic su Aggiungi voce server.
  7. Fornisci i seguenti dettagli di configurazione:
    • IP host: inserisci l'indirizzo IP dell'agente Bindplane.
    • Porta host: inserisci il numero di porta dell'agente Bindplane (ad esempio, 514).
    • Protocollo: seleziona UDP o TCP, a seconda della configurazione dell'agente Bindplane.
    • Porta di origine: lascia il valore predefinito o specifica se richiesto dalla configurazione di rete.
    • Livello: seleziona il livello di gravità minimo da inoltrare (ad esempio, Informazioni, Avviso, Errore).
  8. Fai clic su Aggiungi o Salva per applicare la configurazione.
  9. Fai clic su Salva configurazione nella parte superiore della pagina per rendere permanenti le modifiche.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
clientip principal.ip L'indirizzo IP del client estratto dal campo clientip nel messaggio di log non elaborato.
column1 principal.ip Indirizzo IP estratto da column1 nel log non elaborato.
column1 principal.asset.ip Indirizzo IP estratto da column1 nel log non elaborato.
column3 network.received_bytes Il numero di byte ricevuti, convertito in un numero intero senza segno.
column4 network.http.method Il metodo HTTP estratto da column4 nel log non elaborato.
column7 target.ip L'indirizzo IP di destinazione estratto da column7 nel log non elaborato.
dport target.port Porta di destinazione, convertita in un numero intero.
dst target.ip Indirizzo IP di destinazione.
dst target.asset.ip Indirizzo IP di destinazione.
hostname principal.hostname Il nome host estratto dal campo hostname nel messaggio di log non elaborato.
hostname principal.asset.hostname Il nome host estratto dal campo hostname nel messaggio di log non elaborato.
http_method network.http.method Il metodo HTTP estratto dal messaggio di log non elaborato.
id principal.application L'ID applicazione dal log non elaborato.
mac principal.mac L'indirizzo MAC estratto dal campo mac nel messaggio di log non elaborato.
msg metadata.product_event_type Il campo del messaggio dal log non elaborato, utilizzato come tipo di evento del prodotto. Utilizzato anche per security_result.description dopo aver rimosso le barre rovesciate e le virgolette.
product_name metadata.product_name Il nome del prodotto estratto dal messaggio di log non elaborato.
prxy_ip intermediary.ip Indirizzo IP del proxy.
prxy_port intermediary.port Porta proxy, convertita in un numero intero.
response_code network.http.response_code Il codice di risposta HTTP, convertito in un numero intero.
security_result.action security_result.action Determinato dalla logica del parser in base al valore di column2. "BLOCK" se column2 contiene "TCP_MISS", "UNKNOWN_ACTION" in caso contrario.
security_result.description security_result.description Il campo del messaggio dal log non elaborato, dopo aver rimosso le barre rovesciate e le virgolette.
sport principal.port Porta di origine, convertita in un numero intero.
src principal.ip Indirizzo IP di origine.
src principal.asset.ip Indirizzo IP di origine.
target_hostname target.hostname Il nome host di destinazione estratto dal messaggio di log non elaborato.
timestamp metadata.event_timestamp Il timestamp estratto dal messaggio di log non elaborato e analizzato in un oggetto timestamp.
uri target.url Parte dell'URL di destinazione. Combinato con uri_param per formare l'URL completo.
uri_param target.url Parte dell'URL di destinazione. Combinato con uri per formare l'URL completo.
user target.user.userid Il nome utente estratto dal messaggio di log non elaborato.
user_agent_string network.http.user_agent La stringa dello user agent estratta dal messaggio di log non elaborato.
vpn target.user.group_identifiers Il nome della VPN estratto dal messaggio di log non elaborato.
metadata.event_type metadata.event_type Determinato dalla logica del parser in base a una combinazione di campi come has_principal, has_target, has_http_value e user. Può essere "NETWORK_HTTP", "NETWORK_CONNECTION", "STATUS_UPDATE", "USER_UNCATEGORIZED" o "GENERIC_EVENT".
network.ip_protocol network.ip_protocol Impostato su "TCP" se il messaggio contiene "TCP".

Log delle modifiche

Visualizza il log delle modifiche per questo parser

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.