GNU/Linux >> Linux Esercitazione >  >> Linux

Eseguito accidentalmente chown www-data:www-data / -R come root

Soluzione 1:

Utente RedHat:

chown 0:0 /bin/rpm && rpm -qa | xargs rpm --setugids

Utente Debian/Ubuntu:

chown 0:0 /bin/*  /usr/bin/*
chown daemon:daemon /usr/bin/at
chown 0:utmp /usr/bin/screen
chmod 02755 /usr/bin/screen
chmod u+s /bin/fusermount /bin/mount /bin/su /bin/mount
chmod u+s /usr/bin/sudo /usr/bin/passwd
screen

Mentre lo schermo è in esecuzione, fallo almeno due volte:

dpkg --get-selections | awk '{ if ($2 == "install") print $1}' \
    | xargs apt-get install --reinstall --

Paga molto prestare molta attenzione all'output perché se si lamenta di qualcosa che ha i permessi sbagliati, dovresti correggerlo su un'altra finestra dello schermo.

Corso intensivo sullo schermo:

Control+A     - command key
Control+A a   - emit a control+A
Control+A n   - next "screen"
Control+A c   - create "screen"

Utente Solaris:

Sei fottuto.

pkgchk -R / -f -a

ripristinerà tutti i permessi, ma la setuidità verrà comunque interrotta. Usa un backup o un'altra macchina solaris per cercare script e file setuid/setgid e correggerli manualmente.

LA COSA IMPORTANTE SUI BACKUP

È che puoi recuperarli, non che li prendi.

Altre persone ti hanno consigliato di eseguire i backup, ma voglio aggiungere che dovresti testarli. Se utilizzi un sistema unix, non c'è alcun motivo che non puoi scaricare periodicamente i file su un'altra macchina e assicurarti che tutto funzioni.

Soluzione 2:

Quasi tutto in /bin/ dovrebbe essere di proprietà di root:root, quindi se esegui quanto segue puoi correggere la proprietà su quei file:

chown root:root -R /bin/ 

Potresti anche voler assicurarti che il bit setuid sia impostato correttamente su /bin/su, cosa che puoi correggere con quanto segue:

chmod 4755 /bin/su

Soluzione 3:

Tieni presente che anche i flag set-uid su tutti i binari interessati potrebbero essere stati rimossi; questa è una caratteristica di sicurezza di chown. Controlla con qualche altro sistema quali binari hanno i flag set-uid o set-gid e assicurati di impostarli anche sui tuoi binari.

Soluzione 4:

Stavo per spiegare i dettagli dell'utilizzo di RPM per reimpostare i permessi dei file, ma ho trovato un sito con molte più informazioni. Menziona anche che Ubuntu/Debian (quindi .deb in generale) non lo supportano.

Ma in generale l'opzione che stai cercando sarebbe sulla falsariga:

rpm --setugids {packagename}

Soluzione 5:

Se questo fosse un sistema Debian, aptitude reinstallerei tutto.


Linux
  1. Come cambiamo la password di root?

  2. Risoluzione dello schermo non elencata?

  3. Chown accidentale sotto / come radice?

  4. Reimposta una password di root MySQL

  5. chown:comando non trovato

Aggiornamento di ISPConfig 3.1 a ISPConfig 3.2

Suggerimenti per l'utilizzo dello schermo

Rinomina la sessione dello schermo

Recuperare la password di root

Operazione chown non consentita per root

Systemctl comanda il timeout quando viene eseguito come root