Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    aggiungere utente con shell_exec

    ciao, vorrei aggiungere un utente anche sul server (per l'accesso ftp) dopo averlo inserito nel database.

    sto cercando di fare così:

    codice:
            shell_exec("useradd -d /var/www/aamedia.eu/hermes/files/ricevuti/" . $username . " -g www-data -p " . $password . " " . $username);
            shell_exec("mkdir /var/www/aamedia.eu/hermes/files/inviati/" . $username);
            shell_exec("chown aamedia:www-data /var/www/aamedia.eu/hermes/files/inviati/". $username);
            shell_exec("chmod 775 /var/www/aamedia.eu/hermes/files/ricevuti/" . $username);
            shell_exec("chmod 775 /var/www/aamedia.eu/hermes/files/inviati/" . $username);
            shell_exec("echo " . $username . " >> /etc/vsftpd.user_list");
    purtroppo alcuni comandi non vanno con useradd (chiaramente da shell funzionano)

    non funziona neanche se cerco di far partire uno script:

    es: script shell
    codice:
    #!/bin/sh
    useradd -d /var/www/aamedia.eu/hermes/files/ricevuti/$1 -g www-data -p $2 $1
    mkdir /var/www/aamedia.eu/hermes/files/inviati/$1
    chown aamedia:www-data /var/www/aamedia.eu/hermes/files/inviati/$1
    chmod 775 /var/www/aamedia.eu/hermes/files/inviati/$1
    echo $1 >> /etc/vsftpd.user_list

    chiamata:

    codice:
            shell_exec("sh /root/aggiungi.sh " . $username . " " . $password );


    come posso risolvere?
    ciao e grazie

  2. #2
    Probabilmente questo accade perchè l'utente che esegue lo script NON ha i sufficienti privilegi per eseguire quei comandi.

    Puoi far si che l'utente che esegue gli script abbia i privilegi richiesti (sconsigliato), usare sudo o comando equivalente oppure creare uno script eseguito tramite cron che esegua quei comandi esternamente al web server.

    In ogni caso, ha ben poco a che fare con il PHP.

  3. #3
    l'utente dell'apache è www-data e penso sia con quello che viene eseguito il comando.

    lo script sh ha i permessi 777 ma non funziona lo stesso.


    ho la necessità di farlo partire, come posso fare?

    come dovrei cambiargli i privilegi al volo?




    ho messo anche come proprietario del file www-data ma niente

    grazie

  4. #4
    Originariamente inviato da verardoelvis
    l'utente dell'apache è www-data e penso sia con quello che viene eseguito il comando.

    lo script sh ha i permessi 777 ma non funziona lo stesso.
    Quelli sono i permessi di un file, NON i privilegi dell'utente che esegue lo script.

    Per il resto, ho già indicato le possibili alternative.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.