Discussione:Registrare i log di Iptables in MySQL

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca

Guida da adottare

Provando a verificarla per Debian 8 (Jessie), ho rilevato diverse criticità:

  • i pacchetti ulogd e ulogd-mysql sono soltanto dei metapacchetti per ulogd2 e ulogd2-mysql, che saranno presenti in via esclusiva a partire da Debian 9 (Stretch);
  • non esiste un file di documentazione/esempio /usr/share/doc/ulogd-mysql/mysql.table, ora sostituito da diverse altre tabelle, la più semplice delle quali e l'unica che sembra funzionare senza modificare troppo il file di configurazione è /usr/share/doc/ulogd2/sqlite3.table;
  • il formato di /etc/ulogd.conf è cambiato, e in particolare sia il plugin utilizzato che la sezione "MYSQL", sostituita da altre due, in base al log per pacchetto o flusso;
  • sono riuscito a verificare la guida, ma solo dopo aver tentato varie tabelle MYSQL, diverse configurazioni di ulog.conf (decommentando la riga per plugin, commentando quelle sugli altri plugin non richiesti, decommentando quella sulla stack relativa a mysql2, commentando gli altri stack, e configurando la sezione "mysql2" per la tabella "ulog_ct", modificando "procedure" in "INSERT"), ma servirebbe approfondire la documentazione per assicurarsi che sia tutto a posto, che ho solo consultato per chiarimenti sulla sintassi del file di configurazione (per maggiori informazioni: /usr/share/doc/ulogd/ulogd.txt.gz);
  • il manuale di iptables sulle estensioni (man iptables-extension) alla voce ULOG afferma che è deprecato in favore di NFLOG.

HAL 9000 21:10, 28 mag 2017 (CEST)


Mi ero scordato di segnalare che i link a fine guida sono da sostituire.
Riguardo il resto, un aggiornamento veloce:
  • importando il file di configurazione /usr/share/doc/ulogd2/mysql-ulogd2.sql.gz per la creazione delle tabelle del database sono definite anche le funzioni "INSERT_PACKET_FULL" (per il singolo pacchetto) e "INSERT_CT" (per la connessione), richiamate nelle sezioni [mysql1] e [mysql2] di /etc/ulogd.conf;
  • resta quindi solo da decommentare la riga plugin relativa a mysql1/mysql2 (a seconda del log desiderato), e analogamente quella dello stack, per il file di configurazione /etc/ulogd.conf;
  • ulogd2 funziona anche tramite NFLOG, è sufficiente modificare la chiamata di iptables con -J NFLOG; e il gruppo utilizzato con --nflog-group deve essere quello indicato in [log1] (per [mysql2]) e [log2] (per [mysql1])); (sì i numeri sono invertiti, non è un errore);
Aspetto l'uscita di Debian Stretch per verificare tutto di nuovo, ma salvo nuovi problemi, penso che la guida possa essere verificata senza problemi con solo qualche aggiustamento per via dell'aggiornamento a ulogd2. Per il momento mi limito a segnalarne la non compatibilità per tutte le versioni e a rimuovere il template "Da controllare".
HAL 9000 20:56, 29 mag 2017 (CEST)