• Super User

    Il gruppo : proprietario che hai assegnato non mi sembrano corretti.
    Devi invece creare creare un gruppo di tipo "client" e un proprietario del tipo "web1, web2, etc."

    I file di configurazione di nginx non vanno modificati, perché non assegnano permessi a file e cartelle.


  • Moderatore

    Ho trovato il problema e ho risolto:

    L'incriminato era php5-fpm e il suo file di configurazione www.conf che si trova in /etc/php5/fpm/pool.d.
    In questo file ci sono sia user che group ai quali ho messo quello che uso per l'accesso ssh, ora wordpress installa tutto e filezilla mi fa creare i file come volevo io (ovviamente ho cambiato proprietario con chown ai file in www uguali a quelli inseriti in www.conf).

    Abituato ad Apache non avevo considerato che ci potesse essere un servizio esterno a gestire i permessi.

    @francois007 said:

    Il gruppo : proprietario che hai assegnato non mi sembrano corretti.

    A quali ti riferisci? www-data?

    @francois007 said:

    Devi invece creare creare un gruppo di tipo "client" e un proprietario del tipo "web1, web2, etc."

    Ma poi nel file www.conf ci sta solo un proprietario e un gruppo.

    @francois007 said:

    I file di configurazione di nginx non vanno modificati, perché non assegnano permessi a file e cartelle.

    Me ne sono accorto 😛

    Ciao
    Enea


  • Super User

    Ciao overclokk. Lieto della soluzione che hai trovato da solo scavando nei config dei processi.
    Intanto benvenuto nel mondo di nginx! In questo mondo tutti i moduli php sono gestiti da un unico processo, il php-fpm, che nello specifico assegna user e group, oltre a gestire ogni singolo sito web come un processo unico (in /etc/php5/fpm/pool.d troverai tutte le configurazioni dei siti che gestirai sul server)!
    In ogni caso un chown www-data:www-data è fin troppo generico, se pensi di gestire più siti assegna degli user differenti proprio per le motivazioni che ti ho appena descritto sul php-fpm.
    A presto.


  • Moderatore

    Ciao francois007,

    @francois007 said:

    In questo mondo tutti i moduli php sono gestiti da un unico processo, il php-fpm,

    Me ne sono accorto 😛

    @francois007 said:

    che nello specifico assegna user e group, oltre a gestire ogni singolo sito web come un processo unico (in /etc/php5/fpm/pool.d troverai tutte le configurazioni dei siti che gestirai sul server)!

    Ovviamente mi sono segnato il percorso così non me lo dimentico 🙂

    @francois007 said:

    In ogni caso un chown www-data:www-data è fin troppo generico, se pensi di gestire più siti assegna degli user differenti proprio per le motivazioni che ti ho appena descritto sul php-fpm.

    Si, potrei gestire più siti, per il momento ho dato chown mio_utente:mio_gruppo, assegnare più user (con stesso gruppo) è meglio anche per la sicurezza? Diciamo che con uno è più comodo se devo modificare più siti (e non accedere ogni volta con utenti differenti).

    Ad ogni modo al mio utente ho creato una chiave SSH e disabilitato l'accesso con psw.

    Ciao
    Enea


  • Super User

    Per quanto riguarda l'aspetto della sicurezza non credo ci siano dei problemi. In ogni modo non ho mai testato la gestione di più domini con un singolo user : group (in php ogni dominio ha la sua configurazione php e un PID univoco assegnato dal mio pannello di gestione di hosting).

    Proverò su una macchina locale questo aspetto e ti farò sapere.
    Ciao Enea, a presto 😉


  • Moderatore

    Farò delle prove anch'io 🙂

    Grazie mille francois007

    Ciao
    Enea


  • Super User

    Ho testato e non funziona... in sostanza ogni dominio resta in ascolto su una porta locale, esempio:

    [web1]

    listen = 127.0.0.1:9010
    listen.allowed_clients = 127.0.0.1

    user = web1
    group = client1

    pm = dynamic
    pm.max_children = 10
    pm.start_servers = 2
    pm.min_spare_servers = 1
    pm.max_spare_servers = 5
    pm.max_requests = 0

    chdir = /

    php_admin_value[open_basedir] = /var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/NomeDominio.tld/web:/srv/www/NomeDominio.tld/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin
    php_admin_value[session.save_path] = /var/www/clients/client1/web1/tmp
    php_admin_value[upload_tmp_dir] = /var/www/clients/client1/web1/tmp
    php_admin_value[sendmail_path] = "/usr/sbin/sendmail -t -i [email][email protected][/email]"

    Questo dominio è in ascolto sulla porta locale 9010:
    listen = 127.0.0.1:9010
    listen.allowed_clients = 127.0.0.1

    Una sola raccomandazione, i processi CGI e FastCGI nginx li gestisce (in un server debian stable) il pacchetto fcgiwrap! Se non è presente installalo!

    A presto Enea.


  • Moderatore

    Ciao francois007,

    ho provato anch'io e ho aggiunto un dominio fake ma non ho avuto bisogno di settare un utente aggiuntivo, uso sempre il mio e funzionano entrambi.

    Con FcgiWrap devo anche fare i settaggi come indicato nella guida qui? https://help.ubuntu.com/community/FcgiWrap

    Ciao
    Enea


  • Super User

    Penso proprio di no, dalla guida è evidente che hanno compilato i sorgenti, credo che tu abbia installato il pacchetto direttamente da repositorio!


  • Moderatore

    Ottimo, perfetto.

    Grazie mille per l'aiuto 🙂

    Ciao
    Enea


  • Super User

    Ottimo overclockk, felice che questo test sia andato a buon fine... a presto 😉