quando dovrei usare “apache: apache” o “nessuno: nessuno” sul mio file server web?
Domanda
Sfondo: Mi ricordo che al mio vecchio posto di lavoro come l'amministratore del server web sarebbe sempre farmi cambiare le directory di upload di file httpd-accessibili in modo che essi erano di proprietà di apache: apache o nessuno: nessun .
Ha detto che questo è stato per motivi di sicurezza.
Domanda: Puoi dirmi che cosa in particolare sono state le implicazioni di sicurezza di questo? Inoltre v'è un modo per ottenere Apache per l'esecuzione come nessuno: nessuno, e ci sono implicazioni di sicurezza per quello pure
TIA
Soluzione
C'è un motivo valido, supponendo che il httpd (Apache) è stato di proprietà di root e appartiene alla radice gruppo ha anche, e che c'era una vulnerabilità che è stato trovato nel codice stesso, per esempio, un utente malintenzionato ha richiesto un URL che è più lungo del previsto e il httpd seg-ineccepibili. Ora, che sfruttano ha scoperto accesso radice che significa, che ha il controllo del sistema e, quindi, un utente malintenzionato finirebbe prendere il controllo e creare il caos sulla scatola.
Questa è una ragione per la quale la proprietà del demone httpd viene eseguito con nessuno: nessuno o apache: apache. Si è effettivamente una misura preventiva per garantire che nessun exploit / vulnerabilità esporrà accesso root. Immaginate le implicazioni di sicurezza se fosse per accadere.
Per fortuna, ora, a seconda della distribuzione Linux, BSD varianti (OpenBSD / FreeBSD / NetBSD) o Unix commerciale varianti, il demone httpd viene eseguito con un gruppo di utenti che ha i privilegi minimi. E inoltre, sarebbe sicuro di dire che un sacco di codice di Apache è stato ben testato abbastanza e stabile. Circa il 49% dei server in tutti i domini sono in esecuzione Apache. IIS di Microsoft funziona al 29% dei domini. Questo è secondo il sito sondaggio Netcraft qui .
In un altro contesto, dimostra che avere un programma in esecuzione sotto privilegi minimi sarebbe considerato 'sicuro' e attenua eventuali possibilità di exploit, vulnerabilità.
Altri suggerimenti
Questo è il sito sbagliato per questa domanda. Normalmente si non vuole il codice sorgente deve essere di proprietà dello stesso utente di Apache. Se una falla di sicurezza in Apache o il vostro script lato server sorgere, un utente malintenzionato potrebbe maliziosamente modificare i file del tuo sito web senza privilegi.
L'unica eccezione sarebbe directory di upload di file, come hai detto. In questo caso, si vuole Apache per apportare modifiche alla directory.