Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di /dev/null
    Registrato dal
    May 2004
    Messaggi
    1,936

    programma con permessi di root

    Avrei bisogno di permete ad un programma di ottenere i permessi di root anche se eseguito da utente...
    Potrei farlo con sudo, ma non ho voglia di installarlo e configurarlo se esiste un altro metodo...
    Mi ricordo che esiste lo Sticky Bit, che, se assegnato a un eseguibile, permettera al programma "marchiato" di avere sempre i privilegi del proprietario del file, anche se lo esegue un altro utente...
    Però non funge
    codice:
    # ls -l
    -rwsr-xr-x  1 root root  38 Jun 15 22:57 adsl-start.sh
    -rwsr-xr-x  1 root root  27 Jun 15 22:56 adsl-stop.sh
    # exit
    exit
    $ ./adsl-start.sh
    adsl-start: You must be root to run this script
    Ecco com'e' fatto il file:
    codice:
    $ more adsl-start.sh
    #!/bin/sh
    /usr/sbin/adsl-start
    Perchè non va???


    Ultima modifica ad opera dell'utente /dev/null il 01-01-0001 alle 00:00

  2. #2
    Utente di HTML.it L'avatar di Hamish
    Registrato dal
    Jul 2001
    Messaggi
    205
    chmod a+x /usr/sbin/adsl-etcetc ?
    iBook G4 12''
    Public Key: 0x5F9D7825 wwwkeys.pgp.net
    531D 882B C083 22EA CBDC 8565 78F9 25C7 5F9D 7825

  3. #3
    Utente di HTML.it L'avatar di /dev/null
    Registrato dal
    May 2004
    Messaggi
    1,936
    Originariamente inviato da Hamish
    chmod a+x /usr/sbin/adsl-etcetc ?

    Mi sa che mi sono spiegato male...
    Io devo richiamare /usr/bin/adsl-start (quello che fa parte di rp-pppoe) da root, perchè da utente mi blocca: "adsl-start: You must be root to run this script"...
    Come aggiro lo cosa?
    Potrei usare sudo, ma non ho molta voglia di configurarlo...
    Mi ricordo che i files avevano uno speciale bit chiamato "ticky bit" tra i permessi che permette a chiunque esegua il programma di farlo eseguire come se fosse il proprietario (nel mio caso root)...
    Guarda ad esempio il programma passwd: servono indubbiamente i permessi di root perchè funzioni (se no non potrebbe modificare /etc/passwd), ma può essere eseguito da utente... Perchè? Perchè usa lo sticky bit:
    $ ls -l /usr/bin/passwd
    -rwsr-xr-x 1 root root 27600 Jun 8 02:46 /usr/bin/passwd

    Però perchè nel mio caso non funziona???
    Ultima modifica ad opera dell'utente /dev/null il 01-01-0001 alle 00:00

  4. #4
    Utente di HTML.it L'avatar di Hamish
    Registrato dal
    Jul 2001
    Messaggi
    205
    chmod +s
    iBook G4 12''
    Public Key: 0x5F9D7825 wwwkeys.pgp.net
    531D 882B C083 22EA CBDC 8565 78F9 25C7 5F9D 7825

  5. #5
    Utente di HTML.it L'avatar di /dev/null
    Registrato dal
    May 2004
    Messaggi
    1,936
    Originariamente inviato da Hamish
    chmod +s
    L'ho già fatto
    Leggi nel primo post come ce li ha i permessi:



    -rwsr-xr-x 1 root root 38 Jun 15 22:57 adsl-start.sh



    Esattamente come /usr/bin/passwd !
    Ultima modifica ad opera dell'utente /dev/null il 01-01-0001 alle 00:00

  6. #6
    Utente di HTML.it L'avatar di Hamish
    Registrato dal
    Jul 2001
    Messaggi
    205
    ma non e' che adsl-start a cui si riferisce e' quello dentro lo script e non lo script stesso ?
    codice:
    $ more adsl-start.sh
    #!/bin/sh
    /usr/sbin/adsl-start
    chmod +s /usr/sbin/adsl-start :bubu: ?
    iBook G4 12''
    Public Key: 0x5F9D7825 wwwkeys.pgp.net
    531D 882B C083 22EA CBDC 8565 78F9 25C7 5F9D 7825

  7. #7
    Utente di HTML.it L'avatar di /dev/null
    Registrato dal
    May 2004
    Messaggi
    1,936
    Originariamente inviato da Hamish
    ma non e' che adsl-start a cui si riferisce e' quello dentro lo script e non lo script stesso ?
    codice:
    $ more adsl-start.sh
    #!/bin/sh
    /usr/sbin/adsl-start
    chmod +s /usr/sbin/adsl-start :bubu: ?
    codice:
    $ /usr/sbin/adsl-start
    adsl-start: You must be root to run this script
    $ ls -l /usr/sbin/adsl-start
    -rwsr-sr-x  1 root root 5561 Jun 11 04:58 /usr/sbin/adsl-start

    Quì c'è qualcosa che non va...

    E' possibile che lo sticky bit valga solo in alcue dir... Oppure dia solo qualche privilegio? :master:


    Ho provato anche a mettere nel mio script un richiamo a /bin/whoami e mi risponde root solo se eseguo lo script da root, se lo eseguo da utente mi risponde il nome dell'utente :master:
    Ultima modifica ad opera dell'utente /dev/null il 01-01-0001 alle 00:00

  8. #8
    primo, il bit non è lo sticky ma il suid
    poi come ti han già detto + su, devi suiddare il programma che devi eseguire, nel tuo caso /usr/sbin/adsl-start non lo script che lo chiama cioè adsl-start.sh :adhone:
    @_=(115,-17,6);print+map{chr$_[$.=$_-$_]*$_**$.+++$_[$.]*$_**$.+++$_[$.]*$_**$.}$.-$...$#_

  9. #9
    Utente di HTML.it L'avatar di /dev/null
    Registrato dal
    May 2004
    Messaggi
    1,936
    Originariamente inviato da adarkar
    primo, il bit non è lo sticky ma il suid
    poi come ti han già detto + su, devi suiddare il programma che devi eseguire, nel tuo caso /usr/sbin/adsl-start non lo script che lo chiama cioè adsl-start.sh :adhone:
    Ups... Già, lo sticky serve per mettere il programma nella swap e non levarcelo più

    Comunque... Cosa cambia tra assegnare il suid ad un programma, o a un programma che richiama il primo?
    Dopotutto se il mio script avesse i permessi di root andrei a eseguire adsl-start con i permessi di root...


    Ho attivato comunque il suid anche a /usr/sbin/adsl-start, ma non cambia nulla :di56:
    Ultima modifica ad opera dell'utente /dev/null il 01-01-0001 alle 00:00

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2002
    Messaggi
    411
    Originariamente inviato da /dev/null
    Ups... Già, lo sticky serve per mettere il programma nella swap e non levarcelo più

    :di56:
    Mmmhhh... hai un concetto distorto di sticky bit...
    RTFM.
    Pessimismo e fastidio.

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.