In questo articolo voglio mostrarvi qualche utilizzo, non banale, di ssh, ma per prima cosa :
Cos’è SSH ?
SSH (Secure SHell, shell sicura) è un protocollo che permette di stabilire una sessione remota cifrata ad interfaccia a linea di comando con un altrohost.
Il client SSH ha una interfaccia a linea di comando simile a quella di telnete rlogin, ma l’intera comunicazione (ovvero sia l’autenticazione che la sessione di lavoro) avviene in maniera cifrata. Per questo motivo, SSH è diventato uno standard di fatto per l’amministrazione remota di sistemi unixe di dispositivi di rete, rendendo obsoleto il protocollo telnet, giudicato troppo pericoloso per la sua mancanza di protezione contro le intercettazioni.
Il client ed il server SSH sono installati o installabili su molte versioni diUNIX, GNU/Linux, Mac OS X e Microsoft Windows. Inoltre è disponibile come strumento di amministrazione su alcuni apparati di rete
Normalmente l’autenticazione si esegue con l’invio della password, ma è possibile generare una chiave pubblica sul proprio PC ed esportarla sul host remoto, in questo modo le autenticazioni future saranno eseguite in automatico.
Vedi anche questo tutorial
Qualche uso, dal più semplice ai più complicati:
ssh user@host
Permette il login di user su host attraverso protocollo ssh.
——————————————————————
ssh -X user@host
Permette il login di user so host e reindirizza il protocollo X11 attraverso ssh, ovvero le finestre grafiche si apriranno sul nostro computer locale.
——————————————————————
ssh user@host remote command
Esegue un comando remoto su Host autenticandosi con user
——————————————————————
for host in host1 host2 host3; do echo -n $host:; ssh $host uptime; done;
Esegue un comando su più host in parallelo (vi consiglio uno scambio di chiavi pubbliche prima, altrimenti dovrete dare più volte la password)
——————————————————————
$ssh-copy-id user@host
Copia le chiavi ssh su user@host per abilitare il login senza password.
——————————————————————
cat ~/.ssh/id_rsa.pub | ssh user@machine “mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys”
Copia la propria chiave pubblica ssh su un server da una macchina che non ha ssh-copy-id, ad esempio Mac OS X o altre varianti di *nix
——————————————————————
ssh -N -L2001:localhost:80 user@somemachine
Inizializza un tunnel ssh che redirige la porta 80 remota (della macchina somemachine) sulla porta 2001 di localhost.
Adesso è possibile aprire il browser e puntarlo su http://localhost:2001 per vedere quello normalmente erogato su http://somemachine:80
——————————————————————
ssh user@host cat /path/to/remotefile | diff /path/to/localfile –
Esegue un diff tra un file remoto ed un file locale, utile per vedere le differenze.
——————————————————————
ssh -t reachable_host ssh unreachable_host
Connessione SSH tramite host nel mezzo
Unreachable_host non è disponibile dalla rete locale, ma è disponibile da rete di reachable_host. Questo comando crea una connessione a unreachable_host attraverso la “connessione” nascosta a reachable_host.
——————————————————————
ssh -t remote_host screen -r
Esegue un attach del comando screen attraverso ssh
In questo modo una sessione successiva può essere ricollegata alla stessa sessione
——————————————————————
yes | pv | ssh $host “cat > /dev/null”
Ssh network throughput test
Si connette a host via ssh e mostra la velocità di trasferimento, redirezionando tutti i dati trasferiti su /dev/null
Requisitio: pv installed
Debian/Ubuntu: ‘apt-get install pv’
Fedora: ‘yum install pv’ (Potrebbe servire il repository extra)
——————————————————————
ssh user@host cat /path/to/some/file | xclip
Copia stdin sul buffer X11
Avete mai usato scp per fare una copia di un file sul vostro computer di lavoro, per copiare il suo contenuto in una mail? xclip ti può aiutare in questo. Si copia lo stdin nel buffer di X11, quindi tutto quello che dovete fare è spingere il bottone centrale del mouse per incollare il contenuto di tale file luuungo sulla vostra email.
——————————————————————
sshfs name@server:/path/to/folder /path/to/mount/point
Esegue un mount di path/to/folder attraverso SSH
Requisito: SSHFS scaricabile da http://fuse.sourceforge.net/sshfs.html
Permette di fare il mount remoto di una directory attraverso il protocollo sicuro ssh
[amazon_enhanced asin=”0596008953″ price=”All” background_color=”332610″ link_color=”FFFFFF” text_color=”D4CE99″ /]
[amazon_enhanced asin=”1590594762″ price=”All” background_color=”332610″ link_color=”FFFFFF” text_color=”D4CE99″ /]
Popular Posts:
- None Found
Hi,
very nice tricks
I wrote a few SSH tricks myself http://diogomelo.net/blog/10/ssh-tricks 😀
Thanks for the contribute
Linuxaria Thank you very much. Greats commands and great blog. 🙂
Thanks, glad you like my Blog.