Premetto che questo piccolo programma può essere molto utile a chi utilizza frequentemente il protocollo FTP
Oggi vi mostro un’programma che per molti può essere interessante, ma allo stesso tempo per molti può sembrare stupido
Il protocollo FTP è uno dei protocolli di rete più frequentemente utilizzati. Il protocollo più utilizzato è HTTP, quello che utilizziamo tutti i giorni per fare ricerche, etc…
- Il protocollo FTP (File Transfer Protocol) è disponibile sulla porta 21 e serve principalmente per scaricare files. Ogni browser web interpreta il layout della pagina del sito FTP in modo differente.
- Il protocollo HTTP (HyperText Transfer Protocol) è disponibile sulla porta 80 ed è utilizzato per la “visualizzazione” dei siti web nei nostri browser. Vengono interpretati dal browser grazie a un linguaggio di markup che si chiama HTML. Insieme ad HTML sono utilizzati PHP, JavaScript, che rappresentano i linguaggi di scripting più utilizzati per il web, ma non è escluso l’utilizzo di Python, per definire gli stili delle pagine web invece si utilizza CSS (fogli di stile). I linguaggi di scripting si dividono in lato client(JS) e lato server(PHP).
Entrambi i protocolli hanno la possibilità di utilizzare connessioni criptate, ovvero SSL o TLS (HTTPS, FTPS).
HTTPS è ormai sempre più utilizzato, ed è bene che sia così, uno sniffer di rete (ES. il potente Wireshark) sniffando i pacchetti che transitano nella rete, la sua possibilità di trovare username e password di Pippo (un esempio) è quasi impossibile, oppure se anche le riuscisse a sniffare i dati sono criptati secondo un determinato algoritmo md5 o sha1 (se non sbaglio).
Dopo questa parentesi vediamo il programma
Intanto scarichiamo il codice sorgente con questo comando da linea di comando:
$ git clone https://github.com/StefanoBelli/ftp-handler quindi eseguiamo un change directory:
$ cd ftp-handler
e eseguiamo “./install.sh” come utenti root
# ./install.sh
quindi eseguiamo il comando ftph per vedere se il programma è utilizzabile:
$ ftph
La sintassi di utilizzo è:
ftph (livello di debug)
dove può corrispondere a:
ftp.debian.org, localhost (se avete un FTP attivo sulla vostra macchina)
url può essere utilizzato anche per “–help” per ottenere aiuto in Inglese.
e (livello di debug)[Non obbligatorio] può corrispondere a:
0,1,>=2
In pratica il quando il secondo argomento viene specificato, ftplib invia al server la richiesta di mostrargli tutte le informazioni della sessione, le quali vengono mostrate a schermo.
Il valore di default è 0,
1 richiede un debugging minimo,
mentre un valore maggiore o uguale a 2 richiede un debugging più elevato.
Questa che vedete in basso è la schermata di login, lasciate vuoto per entrare in anonimato.
Se avete completato il login vi ritroverete in questa schermata, che mostra l’avviso per il comando ‘h’, la data e l’ora dell’accesso al server, informazioni su chi siete, il messaggio di benvenuto del server, le informazioni sulla directory corrente e il suo contenuto. Quello sarà sempre presente.
Non appena eseguirete un comando messaggi di benvenuto, etc spariranno, ma non facciamo casini quindi l’output viene “pulito” e poi viene richiesto l’input. Questo continuerà finchè non eseguirete il comando ‘ex’ che serve per uscire dal programma e chiudere la connessione col server.
Nel ‘riquadro’ di “DIRECTORY” c’è l’IP del server e chi è l’utente che sta utilizzando quel server.
Quelle 3 parentesi acute blu rappresentano il contenuto della directory, quelle verdi il prompt in attesa.
Eseguiamo il comando ‘h’ per ottenere aiuto e vedere i comandi che ci servono.
E’ obbligatorio lasciare uno spazio tra una frase e l’altra.
Esempi di comandi:
osh #esegue la shell locale /bin/sh fcmd RETR something #esegue comando FTP ex #Esce dal programma md MY-DIR #crea una directory cd MY-DIR #cambia la directory corrente rn MY-FILE FILE #cambia i nomi di MY-FILE a FILE rd MY-DIR #rimuove directory rf FILE #rimuove file sz FILE #mostra la grandezza in Bytes di FILE dlb FILE file_locale #Scarica FILE che verrà rinominato in file_locale dla FILE file_locale_ascii #Stessa cosa solo in modalità ASCII (search the web ;) ) ulb file_locale #Carica un file locale sul server FTP ula file_locale_ascii #Stessa cosa solo in modalità ASCII
Nel caso si voglia rimuovere ftph è sufficiente cambiare directory in ftp-handler ed eseguire il comando:
# ./uninstall.sh
come utente root.
Per ottenere le ultime modifiche eseguire i seguenti comandi in ftp-handler:
$ git pull # ./install.sh
Semplicemente git scansiona il repository remoto (origin), se l’esito è positivo eseguite install.sh, vi verrà mostrato un messaggio che dice che ftph è già presente, quindi verrà sovrascritto.
Repository di FTP-Handler qui
Profilo di GitHub
Attenzione, per via di caratteri speciali e alcuni comandi come “clear” il programma non funziona correttamente su Windows
Interprete: Python 2, /usr/bin/python2
Il post FTP Handler: Browser FTP testuale è stato pubblicato su InTheBit - Il Blog sulla Tecnologia che alimenta le tue passioni!.
Leggi il contenuto originale su Linux – InTheBit – Il Blog sulla Tecnologia che alimenta le tue passioni!