Impostazione delle autorizzazioni VSFTPD con server Apache


8

Ho una VM con Ubuntu 10.10. Sto usando Netbeans e sto caricando file su un ftp sulla macchina virtuale. Sto usando vsftpd.

Il problema che sto riscontrando è che il proprietario della cartella /var/wwwè l'utente apacheaffinché il server apache sia in grado di leggere i file. Fin qui tutto bene.

Ma quando provo a caricare un file dall'utente ftp user1non sono in grado di farlo. So qual è il problema. La mia domanda è: come impostare correttamente le autorizzazioni per l'utente apachee user1poter scrivere / leggere tutti i file nella directory / var / www?

Risposte:


17

Crea un gruppo www-userse rendilo il proprietario del gruppo /var/www. Quindi assegnare gli utenti apachee user1al gruppo e impostare i permissons nella /var/wwwdirectory su 775. Ciò consentirà a user1tutti gli altri utenti del www-usersgruppo di leggere e scrivere /var/www; faciliterà anche l'autorizzazione di altri utenti a scrivere /var/www- semplicemente assegnando l'utente al www-usersgruppo.

Modifica: le autorizzazioni corrette /var/wwwsono 2775, che include setgid in modo che i file e le directory all'interno /var/wwwereditino la proprietà del gruppo di /var/www.


Bella risposta. Tranne Apache non è in grado di leggere i file dopo inserisco qualcosa con user1Ho eseguito i seguenti comandi: chown -R apache:www-users /var/www, usermod -g www-users apache, usermod -g www-users user1, chmod 775 /var/www. Mi sto perdendo qualcosa?
Tek,

L'umask può essere impostato per negare autorizzazioni di lettura da altri; vedere se cambiare umask aiuta.
bwDraco,

Sì. Ne faceva parte.
Tek,

10
Ecco i passaggi nel caso in cui un googler abbia bisogno di un suggerimento. 1) set up vsftpd for umask 0027 (/etc/vsftpd.conf) [local_umask=0027] 2) create www-users group (groupadd www-users) 3) add user to group (usermod -a -G group user) 4) Set apache to run as www-users group (httpd.conf) 5) chgrp www-users /var/www 6) chmod 2775 /var/www
Tek,

2
Inoltre, prova ad aggiungere il permesso setgid alla directory: chmod g+s /var/www. Ciò assicurerà che i file e le directory creati all'interno della directory siano di proprietà del gruppo proprietario della directory.
bwDraco,
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.