È consigliabile registrare completamente l'interazione del terminale per la risposta agli incidenti?

3

Utilizzeremo una jump box per servire da ponte SSH ai nostri sistemi di produzione. Supponendo che gli operatori stiano effettivamente effettuando l'accesso a una shell sulla jump box e assumendo che sia possibile registrare le interazioni complete del terminale, è consigliabile registrare interazioni complete del terminale in questo tipo di scenario?

Penso che avere queste interazioni registrate possa essere un ottimo strumento per i report post mortem e possibilmente anche per scopi di formazione. Tuttavia, in quale documentazione ho letto sulla risposta al problema del computer, non ho mai visto alcuna menzione della registrazione del terminale durante l'incidente.

    
posta Mark Rushakoff 06.05.2013 - 22:31
fonte

3 risposte

3

Sì, è decisamente consigliabile. Nell'analizzare un incidente, vorrai sempre avere più informazioni possibili. Avere troppe informazioni è meglio che non averne abbastanza visto che non vuoi indovinare i collegamenti tra le azioni.

Per esaminare un incidente, vorrai sapere chi ha fatto cosa quando. Per fare ciò, vorrai conoscere l'autenticazione in modo da sapere chi, vorresti inserire i comandi in modo da sapere cosa e avrai bisogno di sincronizzare NTP per sapere quando.

A seconda del sistema, alcune attività potrebbero non essere acquisite completamente quando un utente con privilegi scende al prompt della shell. In questi casi è possibile implementare controlli aggiuntivi per impedire che ciò accada o aggiungere software per rilevarlo.

    
risposta data 06.05.2013 - 22:46
fonte
1

Lo raccomando anche. Per un'interazione terminale completa utilizzo il modulo pam_tty_audit PAM.

Inserisci questo:

session     required      pam_tty_audit.so enable=*

alla fine del tuo /etc/pam.d/system-auth-ac (RedHat / Fedora / CentOS) e inizierai a registrare tutte le sequenze di tasti in /var/log/audit/audit.log .

L'unico svantaggio di questo (potenzialmente un problema serio) è che registra tutte le interazioni tty comprese le password . Questo problema è indirizzato alla mia richiesta .

    
risposta data 07.05.2013 - 01:16
fonte
0

Sì, ci sono molti motivi per cui vorresti avere una traccia di controllo completa di tutto ciò che viene fatto su un determinato server (o qualsiasi cosa tu faccia su qualsiasi server), e l'auditing è solo una piccola parte di esso.

Spesso le informazioni che in seguito si rivelano critiche vengono sempre e solo scaricate sulla console (non su qualsiasi file di registro) e avere una cronologia da esaminare può essere molto utile.

Inoltre è utile in un contesto CYA ("Chi ha cancellato il file passwd ieri?") e nella risoluzione dei problemi ricorrenti.

Puoi registrare le sessioni del tuo terminale utilizzando lo script , che puoi esaminare successivamente. Ho scritto uno script bash che ho chiamato scriptssh che uso sulla mia casella locale quando voglio tenere un registro di una sessione ssh. Digito solo scriptssh anziché ssh per effettuare la connessione:

#!/bin/bash
# TODO: can choke on commands containing quotes.

BASE_DIR=$HOME/ssh-archive/
DT='date +%Y-%m-%d'
TM='date +%H.%M.%S'

# new directory for each day (makes filesystem much faster)
DIR=$BASE_DIR/$DT
[[ -d $DIR ]] || mkdir -p $DIR

# Sanitized for your protection
ARGLIST=$(sed 's/[^A-Za-z0-9.-]/_/g' <<< "$*")
# build filename based on date and passed-in arguments
FNAME=$DIR/$TM--$ARGLIST

# make sure filename is unique
if [[ -f $FNAME ]]; then
    $I=0
    while [[ -f $FNAME.$I ]] ; do (( $I += 1 )); done
    FNAME=$FNAME.$I
fi

exec script -a -c "/usr/bin/ssh $*" $FNAME
    
risposta data 23.03.2014 - 20:52
fonte

Leggi altre domande sui tag