Visualizzazione dei risultati da 1 a 5 su 5

Discussione: eseguire uno script SH

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2004
    Messaggi
    58

    eseguire uno script SH

    Salve a tutti,
    dovrei eseguire uno script SH che al suo interno include links ad altri script che necessitano dei permessi dell'user root. In un primo momento ho provato con il PHP e con shell_exec ma naturalmente l'apache mi eseguiva lo script sh ma non avendo i permessi root non mi eseguiva lo script. Poi dopo mi è stato consigliato di usare un wrapper CGI (suEXEC) che mi avrebbe permesso di eseguire codice con i permessi del proprietario. Il fatto è che se io "chowno" il file .cgi a root quando lo vado a richiamare da browser mi viene restituito l'errore 505 (perché il suEXEC vede che la cartella in cui eseguo lo script non ha i permessi root), se imposto come owner della cartella l'user "root" mi viene dato da browser l'errore 403 (Forbidden...in poche parole Accesso negato...) e comunque non riesco a vedere nulla.

    Ormai non so più cosa fare, ho letto anche molte delle discuss che sono state postate qui....ed ho letto della funz. sudo, ma il fatto è che non so come usarla "in una unica riga" cioè senza dover scrivere io la pwd dopo l'invio del comando.
    Vi pregherei di esser il più chiari possibile...visto che mi sono avvicinato da poco al CGI.

    Grazie a tutti coloro che mi risponderanno,

    XXXXXXXXXXXXXX

  2. #2
    prova a chiedere al newsgroup it.comp.os.linux.iniziare come fare ad eseguire una sudo su unica riga...

    poi prova a chiedere a it.comp.lang.perl come risolvere i tuoi problemi con gli errori che hai riportato...

  3. #3
    Ciao,

    poiché avevo + o - il tuo stesso problema (sto su uno spazio a pagamento che offre il PdC Plesk, quindi ho un virtualhost) ho cercato in giro ed ho trovato questo script perl http://search.cpan.org/~landman/Sudo-0.10/lib/Sudo.pm

    L'unico prob è che non ci ho capito nulla di come farlo andare :master: :master:

    Spero che questo mex possa aiutare sia te che me Amir

    Aspetto le vostre risposte,

    Ciao

  4. #4
    codice:
    use Sudo;
      my $su;
      
      $su = Sudo->new(
                      {
                       sudo         => '/usr/bin/sudo',
                       username     => $name, 
                       password     => $pass,
                       program      => '/usr/bin/programma da eseguire',
                       program_args => '...argomenti da passare al programma da eseguire'
                      }
                     );
       
      $result = $su->sudo_run();
      if (exists($result->{error})) 
         { 
           &handle_error($result); 
         }
        else
         {
           printf "STDOUT: %s\n",$result->{stdout};
           printf "STDERR: %s\n",$result->{stderr};
           printf "return: %s\n",$result->{rc};
         }

  5. #5
    Originariamente inviato da Claudio Vituzzi
    codice:
    use Sudo;
      my $su;
      
      $su = Sudo->new(
                      {
                       sudo         => '/usr/bin/sudo',
                       username     => $name, 
                       password     => $pass,
                       program      => '/usr/bin/programma da eseguire',
                       program_args => '...argomenti da passare al programma da eseguire'
                      }
                     );
       
      $result = $su->sudo_run();
      if (exists($result->{error})) 
         { 
           &handle_error($result); 
         }
        else
         {
           printf "STDOUT: %s\n",$result->{stdout};
           printf "STDERR: %s\n",$result->{stderr};
           printf "return: %s\n",$result->{rc};
         }
    Non va...perché devo installare prima quella libreria e mi hanno detto che non va bene perché il Plesk fa casini

    Non potrei eseguire un comando tipo "su use"r e poi metter il comando?
    Come passo poi la pwd senza doverla metter io come faccio da shell?

    a me servirebbe solo eseguire un comando in automatico con un .cgi o pl come user root o admin.

    Ps. Avendo un serv. virtuale col plesk posso fare anche piccole modifiche a file di configurazione...ma non a programmi.

    Sareste così gentili da dirmi 2-3 righe di cod. CGI o pl per far ciò?

    Un bacione a tutti,
    Silvia.

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.