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

    Cambio utente da codice.

    Ciao a tutti...

    in questi giorni sto pasticciando da paura con i permessi di linux, e siccome sembra non esserci modo di dire ad apache sotto quale utente girare, ho pensato, che forse, con la funzione system() di php(stesso di perl) fosse possibile cambiare utente, come si fa normalmente da shell con il comando $su root e poi miapassword. (ovviamente il problema è che dando comandi da php con la funzione system(), non ho nessun permesso di scrittura perchè apache gira con l'utente nobody, e non posso di certo dare a tutto / un chmod 777)


    Da codice ho provato a fare

    system("su root");
    system("mia password");


    ma sembra non funzionare, visto che ho gli stessi permessi di prima.




  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Squall approccio sbagliato, continua sulla via precedente.

    ciao

  3. #3
    già provato...


    conclusione:

    chown -R nobody:vmail /home/vmail
    chmod -R 770 /home/vmail


    e così funziona perfettamente, si con l'utente nobody, che con gli utente del gruppo vmail scrivo dappertutto...


    cmq il problema è di nuovo lo stesso:se creo un file o una dir con l'utente vmail... se faccio ls -l vedo che la cartella creata ha vmail:vmail e rxw - rx - x.

    se creo con l'utente nobody --> nobody:nogroup e rxw - rx -r.

    e siamo punto e a capo perchè con l'altro gruppo non scrivo dentro, e non posso neanche fare un chmod o chown.


    Ora scrivo tutto in c e fanculo

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Forse ti ho trovato la soluzione, prova a dare un occhio a quello che ho fatto nella mia home directory.

    Ciao

    codice:
    gianiaz:/home/gianiaz# whoami
    root
    gianiaz:/home/gianiaz# mkdir Squall22
    gianiaz:/home/gianiaz# ls -la Squall22/
    totale 8
    drwxr-xr-x    2 root    root      48 2004-11-23 10:29 .
    drwxr-xr-x  110 gianiaz gianiaz 7560 2004-11-23 10:29 ..
    gianiaz:/home/gianiaz# chown gianiaz:www-data Squall22/
    gianiaz:/home/gianiaz# ls -la Squall22/
    totale 8
    drwxr-xr-x    2 gianiaz www-data   48 2004-11-23 10:29 .
    drwxr-xr-x  110 gianiaz gianiaz  7560 2004-11-23 10:29 ..
    gianiaz:/home/gianiaz# chmod g+s Squall22/
    gianiaz:/home/gianiaz# ls -la Squall22/
    totale 8
    drwxr-sr-x    2 gianiaz www-data   48 2004-11-23 10:29 .
    drwxr-xr-x  110 gianiaz gianiaz  7560 2004-11-23 10:29 ..
    gianiaz:/home/gianiaz# touch filediprova.txt
    gianiaz:/home/gianiaz# ls -la filediprova.txt
    -rw-r--r--  1 root root 0 2004-11-23 10:29 filediprova.txt
    gianiaz:/home/gianiaz# cd Squall22/
    gianiaz:/home/gianiaz/Squall22# touch filediprova.txt
    gianiaz:/home/gianiaz/Squall22# ls -la filediprova.txt
    -rw-r--r--  1 root www-data 0 2004-11-23 10:30 filediprova.txt
    gianiaz:/home/gianiaz/Squall22#

  5. #5
    ho provato ma :master:


    poi alla fine, il risultato è stato sempre lo stesso...

    l'utente vmail mi crea sempre cartelle con vmail:vmail e con peremssi di scrittura solo all'utente principale... e a quel punto, non posso più eseguire il chmod ne il chown con l'utente vmail




    Ho scritto un cazzo di codice c e l'ho compilato. Il problema in parte è migliorato... se lo eseguo come root funziona alla grande... se lo eseguo sempre con system() da php, viene eseguito sempre come nobody e non funziona


    Quindi, devo trovare il modo di eseguire questo programmino da root, ma fare in modo che php gli passi dei parametri

  6. #6
    una soluzione sarebbe usare delle tabelle temporanee di mysql e mettere lo script in cron... ma non so usare il c così bene da poter interagire con un db...


    ma un file di testo? :master:

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 © 2024 vBulletin Solutions, Inc. All rights reserved.