Posso registrare l'attività di vi?


10

Esiste un metodo per registrare le attività di vi? Ho il sospetto che un altro utente stia inviando comandi andando nella shell all'interno dell'editor vi, apparentemente quei comandi non registrano nella cronologia.

Risposte:


6

Puoi anche attivare la contabilità di processo (s / can / should /!)

È quindi possibile utilizzare:

lastcomm(1)

per vedere il comando eseguito e se sono stati eseguiti dopo un fork, con o senza un exec.

In combinazione con un IDS basato su host, questo dovrebbe darti ciò di cui hai bisogno "affinché la giustizia del re possa essere fatta su di lui".


+1 per un buon punto sulla contabilità.
Phil Hollenback,

7

Come stai registrando le loro attività in questo momento? Il più semplice è impedirgli di lanciare shell da vi.

# vi /home/user/.exrc
set exrc
set shell=/bin/false
# chown root:root /home/user/.exrc
# chmod 644 /home/user/.exrc
# chattr +i /home/user/.exrc

Se stai usando una shell speciale per registrare i loro comandi, puoi cambiare vi per usare solo quella shell.


+1 per un buon modo semplice per limitare l'accesso vi.
Phil Hollenback,

2
ma sembra facile aggirare: "vim -u / dev / null".
jlliagre,

Sì, questo è essenzialmente un problema irrisolvibile. Nel momento in cui qualcuno accede al tuo sistema tramite un login, può sovvertire il computer. Il meglio che puoi fare è renderlo davvero difficile.
Phil Hollenback,

4

Stai parlando della storia delle conchiglie? vi modalità shell ( :sh) avvia la shell predefinita dell'utente Se questo è bash, puoi assicurarti che la registrazione della cronologia sia sempre abilitata modificando il globale / etc / bashrc e aggiungendo:

set HISTFILE=~/.bash_history
shopt -s histappend
PROMPT_COMMAND='history -a'

ciò assicurerà che ogni comando utente venga registrato in un file, non venga sovrascritto e verrà aggiornato ogni volta che viene visualizzato il prompt della shell.

Si noti che gli utenti possono sovrascriverlo a livello personale, ~/.bashrcquindi non è una garanzia assoluta che accada la registrazione.

Alcune versioni di vi (come nvi) supportano una modalità sicura che disabilita l'accesso alla shell, avviando vi come nvi -S. È possibile impostare un alias globale /etc/bashrcper forzare anche questa modalità per impostazione predefinita.

Si noti che in generale il problema degli utenti che accedono alla shell in modo imprevisto è un classico problema unix. Non c'è modo di disabilitarlo completamente, il meglio che puoi fare è provare a limitare l'accesso per impostazione predefinita. Un utente sofisticato (o anche un utente che sa usare google) può sempre aggirare queste restrizioni. Ad esempio, se un utente non desidera che venga registrata la cronologia della shell, potrebbe sempre eseguire una nuova copia della shell con le opzioni che desidera utilizzare.

Ecco un ottimo resoconto di come forzare la registrazione in bash e i modi in cui è possibile aggirare la registrazione.

Infine, hai considerato di parlare con l'utente per determinare cosa stanno facendo? Il 99% delle volte una semplice comunicazione verbale può chiarire qualsiasi confusione. Se stai registrando l'attività di questo utente perché non ti fidi di loro, forse puoi parlargli delle tue preoccupazioni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.