cosa chmod e proprietario: le impostazioni del gruppo sono le migliori per un'applicazione web?

stiamo configurando un'applicazione web PHP su CentOS e abbiamo tutti i nostri file attualmente in / var / www / html / project /

Apache è configurato per eseguire come apache: apache e ha accesso alla directory di cui sopra. Adesso i nostri file e directory hanno i seguenti diritti:

  • Come posso impostare le autorizzazioni predefinite per i file caricati da apache2?
  • Qual è la differenza tra *: 80 e _default_: 80 in Apache2?
  • Cosa significa VC9 nella versione PHP?
  • Perché htop mostra un sacco di processi apache2 da ps aux non?
  • Qual è il miglior antivirus per una networking di dominio di Windows?
  • come riavviare / cancellare memcache senza riavviare l'integer server web?
  • proprietario = root group = apache

    DIRECTORIES: drwxr-x — root apache

    FILE: -rw-r —– root apache

    È una configuration sicura? Oppure è meglio utilizzare un nuovo utente, ad esempio "progetto", per essere proprietario di tutti i file e directory?

  • Dovrebbe un virtualhost utilizzare sempre il dominio nudo come ServerName?
  • Apache / httpd non si avvia automaticamente all'avvio
  • scrivi l'authorization negata via filezilla sftp a / var / www / html
  • Come eseguire le intestazioni di cache HTTP
  • Impostazione di host virtuali SSL in Apache
  • sia ssl che non ssl su una port singola
  • 2 Solutions collect form web for “cosa chmod e proprietario: le impostazioni del gruppo sono le migliori per un'applicazione web?”

    È una pratica migliore per avere il proprietario qualsiasi account utente limitato utilizzato per caricare / gestire i file sul server. Il gruppo è spesso l'account che php sta eseguendo sotto, quindi in questo caso apache sarebbe corretto. Le altre autorizzazioni dovrebbero essere impostate a nulla, come sono. Sei vicino alla perfezione.

    Se si ha una situazione in cui più account possono modificare / modificare i file è ansible creare un script cron che chowns il dir recursivamente each ora per mantenere la properties; corretta. La stessa tecnica funziona per mantenere le autorizzazioni corrette pure.

    Inoltre, è ansible modificare l'umask dell'account utente limitato che ha la properties; per essere in linea con il tuo schema di autorizzazioni.

    Stai giocando sicuramente.

    Le tue impostazioni ti impediranno di creare cartelle aggiuntive in DIRECTORIES che dovreste avere su richiesta tramite apache.

    Suggerisco di utilizzare le seguenti autorizzazioni:

    DIRECTORIES: drwxrwx--- root apache FILES: -rw-rw---- root apache 

    Aggiungere gli sviluppatori al gruppo apache in modo che possa continuare a scrivere su questi file se wheressero accedere tramite ssh o ftp.

    È ansible avere permessi di file liberi se si può fidare di quali utenti li eseguono. Se sei un codice solido, puoi consentire al gruppo apache di fare di più con le autorizzazioni.

    Modifica: In generale apache:

     rwx if it needs to create folders rw if it needs to create files r if everything is static 

    Alla fine ciò che si riduce a è solo dare le autorizzazioni che devi. Renderli più conservatori ansible e aprirli mentre sviluppi l'applicazione se avete bisogno.

    Una piccola cosa sui gruppi. Vedrai alcuni esempi che mostrano questo (anche queste sono le impostazioni corrette):

     DIRECTORIES: drwxrwxrw- root somegroup FILES: -rw-rw-r-- root somegroup 

    Queste autorizzazioni sono necessarie per un'applicazione Web da eseguire perché l' utente apache non fa parte delle autorizzazioni di gruppo . In questo caso, apache è considerato tutti, quindi è necessario impostare le autorizzazioni per consentire a tutti di interagire con il tuo sito web. Da tutti non voglio dire tutti nel mondo (anonimi). Voglio dire chiunque sia attualmente un utente sul tuo server (guarda in / etc / passwd per get un elenco).

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.