[Python] quesito python ssh

Iacopo Masi iacopo.masi a gmail.com
Sab 24 Feb 2007 19:48:36 CET


Il 24/02/07, Manlio Perillo <manlio_perillo a libero.it> ha scritto:
>
> Iacopo Masi ha scritto:
> > Salve a tutti,
> > sono Iacopo, uno studente che vorrebbe usare python, combinando le
> librerie
> > pySNMP e pySSh (oppure paramiko), per poter sviluppare un applicazione
> in
> > grado di gestire un apparecchio generico che esponga un agent SNMPv3 e
> un
> > server OpenSSh in azione. Ad esempio una qualsiasi macchina Gnu/linux
> con
> > suddetti demoni.
>
> Ciao Iacopo.
>
> > Supponendo che la rete da gestire sia di dimensioni abbastanza grosse,
> si vuol
> > creare questa applicazione grafica in maniera tale da non andare su ogni
> > singolo host tramite ssh a modificare ad esempio il firewall con il tool
> > iptables; questo ovviamente per ragioni di scalabilità della rete.
> Quindi
> > Vogliamo che questa applicazioni ci semplifichi il lavoro, esponendo un
> > accattivante interfaccia grafica (invece della linea di comando) che
> > però "sotto il cofano" lavori nel solito modo in cui si lavora da
> terminale
> > con ssh. Ecco perchè avevo optato di usare le librerie che interfacciano
> > python e ssh.
> >
> >  Esempio: Se si vuole attuare:
> > ssh username a hostname
> > pass:****
> > $iptables -L
> > $output di iptables.
> >
> > Si dovrebbe avere una popup che permetta di inserire username e
> password,
> > e un eventuale menu con Firewall>>Lista Regola. Se l'utente clicca si
> > formatta la stringa "iptables -L" mappata su quella funzione del menu e
> > tramite le librerie ssh di python si invia la richiesta e si visualizza
> la
> > risposta in un frame.
> >
> > Questo ovviamente è un esempio ma dovrebbe essere estendibile anche a
> tutti i
> > comandi presenti su Linux che accettano argomenti.
> >
> > La domanda finale è quindi:
> > E' sensato tramite pySSh o paramiko programmare un client python
> affinché
> > esegua i comandi da ssh con i relativi argomenti ( vedi -L in quel
> caso)  e
> > poi faccia vedere il risultato da interfaccia grafica? e oltre essere
> > sensato, è fattibile o è una soluzione non pratica?
> >
>
> Si a tutte le domande.
> Ma non è la soluzione più furba.
>
> La soluzione più furba è cercare di scrivere il meno software possibile.
>
> Quindi prendi un programma (ad esempio un applicazione web) che fa
> quello che vuoi -- ad esempio una interfaccia web ad iptables, phpadmin,
> o altro -- ed implementa un proxy che riceve una richiesta da un client
> e la forwarda agli N server.


mi sono dimenticato di dirti che gli agent sono macchine con risorse mooolto
spicciole. Tipo poca ram e soprattutto poco HD. Ovviamente il webserver
sarebbe solo lato manager giusto? quindi non dovrebbe intaccare le risorse
degli agenti, esatto?

Ci sono alcuni aspetti da gestire con un pò di attenzione (ad esempio
> che fare se n su N dei server ritorna un errore), ma ti evita di dover
> scrivere da zero una applicazione non banale.
>
> Inoltre un proxy del genere dovrebbe essere facilmente riutilizzabile
> per applicazioni web generiche.
>
>
> > Per il resto le librerie pySnmp si dovrebbero interfacciare benissimo
> con
> > Net-Snmp, l'agent di Linux. Non ci dovrebbero essere problemi.
> >


grazie mille per la pronta risposta ;)

Saluti  Manlio Perillo
>



-- 
Iacopo Masi

web: http://www.iacopomasi.net
email: iacopo.masi a gmail.com
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://lists.python.it/pipermail/python/attachments/20070224/3678b773/attachment.htm


Maggiori informazioni sulla lista Python