Come configurare APACHE HTTP Server come Data source

Per poter usare APACHE HTTP Server® come Data Source (sorgente dati) per Pluribus One WAS® è necessario svolgere due operazioni:

  • Configurare la Data Source.
  • Configurare i Syslog.

Le due operazioni possono essere svolte in qualunque ordine si voglia ma entrambe sono necessarie. Puoi svolgere metà della procedura e terminare la parte mancante in un secondo momento. In questa guida imparerai:

  • Come usare l'interfaccia grafica Pluribus One WAS® GUI (Graphic User Interface, interfaccia grafica da browser web) per verificare lo status del sistema.
  • Come usare la utility di configurazione Pluribus One WAS® TUI (Text-based User Interface, interfaccia grafica da terminale) per impostare la Data Source.
  • Come creare un formato di Log per consentire la comunicazione tra Pluribus One WAS® e APACHE HTTP Server®.

 

Alcuni link di interesse:

 

Monitorare lo Status

L'interfaccia grafica Pluribus One WAS® GUI fornisce nella schermata dashboard tanti utilissimi widget; un widget ti sarà particolarmente utile a monitorare lo status del sistema, si tratta del widget status. Vediamo in dettaglio quali delle tante voci presenti ti sono utili in questo momento:

  • HTTP Source - Connection - ti comunica se Pluribus One WAS® sta comunicando con successo con la tua Data Souce.
  • HTTP Source - Retrieving data - ti comunica se Pluribus One WAS® sta ricevendo dati dalla tua Data Source.

 

Come ti abbiamo anticipato, dovrai Configurare la Data Source e Configurare i Syslog; cosa succede se solo una di queste due operazioni viene compiuta? Cosa accade se entrambe le operazioni vengono effettuate ma una delle due non va a buon fine?

  • Ti basta completare Configurare la Data Source affinché il widget status ti segnali HTTP Source - Connection come funzionante.
  • Devi completare entrambe le operazioni (Configurare la Data Source e Configurare i Syslog) affinché il widget status ti segnali HTTP Source - Retrieving Data come funzionante.

Queste informazioni ti saranno molto utili sia durante il resto di questa guida che in seguito. 

 

 

Configurare la Data Source

Prima di configurare la Data Source leggi con attenzione la guida generale che trovi a questo link: Come configurare una Data source

Dovrai effettuare le stesse procedure descritte nella guida, l'unica differenza è il Passo 5 Imposta i Parametri; segui la guida dal Passo 1 al Passo 4, poi leggi di seguito.

 

Passo 5 Imposta i Parametri per APACHE®

Entra nel sotto menu HTTP Traffic Source ed imposta i parametri richiesti:

  • Hosts - elenco di tutti gli indirizzi IP dei server web da cui arriveranno i log; inserisci un indirizzo IP per per riga.
  • Generate request IDs locally - seleziona questo parametro se vuoi che venga creato un ID univoco per ogni richiesta in arrivo; seleziona questo parametro se NGINX® non può generare autonomamente tali ID.
  • Parallel processes - questo parametro ti permette di indicare quanti core vuoi che vengano usati per il servizio di lettura dei Log.

 

 

Una volta terminato il Passo 5 segui il resto della guida standard.

 

Nota: i parametri richiesti per la configurazione di APACHE HTTP Server® sono identici a quelli richiesti per la configurazione di NGINX®.

 

 

Configurare i Syslog

Per poter usare APACHE HTTP Server® come Data Source (sorgente dati) per Pluribus One WAS® è necessario compiere dei passaggi extra rispetto alla procedura base descritta in questo articolo: Come configurare una Data source. APACHE HTTP Server® può comunicare con Pluribus One WAS® tramite il meccanismo syslog; per poter rendere possibile la comunicazione è necessario compiere due passaggi aggiuntivi:

  • Passo 1 - Definire un formato di Log (Log Format).
  • Passo 2 - Inviare i Log chiamati Access & Error Log.

 

 

Per poter usare APACHE HTTP Server® come Data Source (sorgente dati) per Pluribus One WAS® è necessario compiere dei passaggi extra rispetto alla procedura base descritta in questo articolo: Come configurare una Data source.

APACHE HTTP Server® può comunicare con Pluribus One WAS® tramite il meccanismo syslog mechanism che consiste nella trasmissione di access-log in un formato specifico; per poter rendere possibile questo genere di comunicazione è necessario definire uno specifico formato per i log Access-Log .

Esistono due modi diversi per implementare il syslog mechanism, troverai entrambi nel resto del articolo:

  • OPZIONE 1 [SCONSIGLIATA]: Usare il file di configurazione generale di APACHE.
  • OPZIONE 2: Usare un file di configurazione dedicato a Pluribus One WAS®.

 

OPZIONE 1 - File di configurazione generale di APACHE

Il file di configurazione di APACHE contiene la configurazione generale per il tuo APACHE HTTP Server®; questo file non è collocato sempre nella stessa posizione e questa cambia infatti a seconda del sistema operativo usato nella macchina host dove hai installato APACHE. Tra le posizioni più comuni per questo file possiamo suggerirti: /etc/httpd/httpd.conf or /etc/httpd/conf/httpd.conf.

Ti sconsigliamo vivamente di inserire parametri di configurazione relativi a Pluribus One WAS® dentro questo file... NON FARLO! Ricorda che ogni cambiamento a questo file avrà un impatto globale sulla tua installazione di APACHE HTTP Server® e potrebbe causare errori non attesi. Ti suggeriamo di seguire quanto descritto nella Opzione 2.

 

OPZIONE 2 - File di configurazione dedicato

La soluzione che ti suggeriamo (e che preferiamo di gran lunga) è quella di separare la configurazione relativa a Pluribus One WAS® da quella generale del tuo APACHE HTTP Server®; ti suggeriamo quindi di usare un file separato così da ridurre il rischio di causare errori. Seguendo il nostro consiglio potresti comunque fare qualche errore ma le conseguenze saranno decisamente meno gravi! Cosa potrebbe accadere? Nel caso peggiore Pluribus One WAS® non sarà in grado di accedere alla Data Source (sorgente dati) ma il tuo server http continuerà a funzionare normalmente. La posizione del file di configurazione dedicato dovrebbe essere /etc/httpd/conf.d/attackprophecy_http.conf .

DISCLAIMER: APACHE consente di definire in vari Access-Logs; aggiungere una nuova definizione non sovrascriverà quindi i formati di Access-Log già definiti.

Creare e utilizzare un file di configurazione dedicato è semplice, ti basta seguire i tre passi descritti di seguito:

 

Passo 1 - Caricare il Modulo

Caricando il modulo un ID univoco verrà associato per ogni entry del Log. Per caricare il modulo ti sarà sufficiente aggiungere la seguente istruzione nel file di configurazione: LoadModule unique_id_module modules/mod_unique_id.so .

 

Passo 2 - Definire un Formato per gli Access-Log

Definire un formato specifico per gli Access-Log format di Pluribus One WAS® è facilissimo! Ti basterà includere questa definizione nel file di configurazione così da definire il LogFormat :

LogFormat "\"%{UNIQUE_ID}e\"|\"%t\"|\"%a\"|\"%{Host}i\"|
\"%U\"|\"%m\"|\"%H\"|\"%q\"|\"%{Referer}i\"|\"%>s\"|
\"%{User-Agent}i\"|\"%{Cookie}i\"|\"%{Content-Type}i\"|
\"%A\"|\"%{X-Forwarded-For}i\"|\"%{remote}p\"|\"%{local}p\"|
\"%O\"" ap_format

 

Passo 3 - Inviare gli Access-Log

L'ultimo passo necessario è inviare gli Access-Log tramite Syslog. Anche in questo caso ti sarà sufficiente inserire una istruzione nel file di configurazione:

CustomLog "|/usr/bin/logger --tag apache_ap: --udp --server IP_HOST_AP --port 514" ap_format

Note: Ricordati di sostituire la parte di testo "IP_HOST_AP" con il vero indirizzo IP del dispotivo su cui è stato installato ed è attivo Pluribus One WAS®.