SSH: acronimo di Secure Shell
Sempre per chi, come me, si trova nella necessitÓ di dover attivare dei servizi ma non vuole che certi servizi vengano "troppo" esposti a tutti, con tutte le conseguenze annesse e connesse sul piano della sicurezza, ve ne Ŕ uno che Ŕ in grado di "conglobare" tutti i servizi in un unico "tunnel", attraverso il quale passano tutti i vari servizi criptati in maniera molto sicura (non mi addentro sui temi della sicurezza e delle vulnerabilitÓ di un servizio come ssh, rimando a riguardo alle infinite librerie in materia).
Siccome sotto il cofano di OSX gira il motore di UNIX, come tutti i sistemi nix, questi hanno in dotazione standard il servizio ssh (non Ŕ sempre vero in quanto alcune distribuzioni Linux non hanno preinstallato il server ssh ma solo il client. Nel caso di OSX si trovano giÓ in dotazione sia il server che il client). Per quanto riguarda i sistemi operativi non nix, tipo Windows, bisogna affidarsi a programmi terze parti.
Vediamo dapprima cosa fa in pratica il servizio ssh:
al lato pratico traduce tutti i servizi attivi su una porta verso la porta 22 da cui transitano in maniera criptata in remoto verso un altro computer su di una porta predeterminata. Ma non solo questo! In realtÓ ssh permette di entrare ed utilizzare i comandi da terminale direttamente sulla macchina remota.
Prima di vedere come funziona questo servizio con degli esempi, Ŕ necessario fare una cosa: attivare il servizio sul mac da controllare o che offre i servizi. Come? Semplice: dal men¨ mela>Preferenze di Sistema>Condivisione attivare Login Remoto come da figura:

screenshot_23

Se avete un router o un firewall attivare il port forwarding sulla porta 22

Se volete ad es. attivare il server VNC sul computer da controllare, non dovete fare altro che lanciare il server vnc. Di solito questo si attiva di default sulla porta 5900 o 5901. Nel caso mio ho scelto la 5901

Sul computer vostro, invece, lanciate terminale da
Applicazioni>Utility>Terminale
ComparirÓ una finestra a righe di comando....niente panico :)
scrivete
ssh -L 5910:localhost:5901 -f -N username@ip.o.host.della.macchina.da.controllare


Inserire la password ed uscire da terminale.

Lanciare il client VNC

screenshot_26

Dove scrive Server inserire 127.0.0.1:5910 (io per comoditÓ mia ho scelto 5911) e fare click su Connect

screenshot_27

Inserire la propria password di VNC


screenshot_29

Ed ecco il risultato :)

L'esempio fatto riguarda VNC con ssh. In realtÓ lo stesso giochino lo possiamo fare con qualsiasi servizio.
Pensiamo al controllo remoto di aMule: in questo caso, oltre ad attivare sul server il remote login, lanceremo aMule ed attiveremo il controllo remoto di aMule via web sulla porta 4711 (rimando ai vari tutorial di aMule per ulteriori dettagli).

Sul nostro mac lanciamo il terminale e questa volta scriviamo
ssh -L 4711:localhost:4711 -f -N username@ip.o.host.della.macchina.da.controllare
ci autentichiamo
usciamo da terminale

Lanciamo il nostro browser web (solitamente Safari per chi usa Mac) e nella barra degli indirizzi scriviamo
http://127.0.0.1:4711
come da figura comparirÓ questa finestrella:

screenshot_30

fate il login con la password che avete impostato nelle preferenze di aMule ed il gioco Ŕ fatto :)

Si potrebbe andare avanti poi all'infinito per ogni genere e specie di servizio attivabile sulla macchina.
Pi¨ in generale, si potrebbe scrivere una sintassi generica per ssh in questi termini:
ssh -L numero porta locale su cui si vuole attivare il servizio:localhost:numero porta del servizio remoto -f -N username@ip.o.host.della.macchina.da.controllare

Di certo non Ŕ il massimo in termini di fruibilitÓ...una cosa semplice semplice da fare Ŕ per˛ salvarsi delle shell specifiche in maniera tale che si attivino direttamente con questo o quel comando.
Lanciando terminale, si pu˛ andare sul men¨ Documento>Registra con nome

screenshot_01

Fare click su Esegui questo comando
inserire nella casella di input il comando
ssh -L 4711:localhost:4711 -f -N username@ip.o.host.della.macchina.da.controllare
Spuntare Esegui comando in una shell
Scegliere il percorso dove salvare il file e dargli un nome (io ho scelto amulewebssh)
Click su Registra

Ne risulterÓ un file di nome amulewebssh.term

screenshot_34

Al posto di dover rifare ad ogni collegamento tutta la procedura, basterÓ semplicemente fare doppio click sul file appena salvato: questi provvederÓ poi da solo a lanciare il Terminale ed a scrivere tutta la paappardellona vista prima. A voi resterÓ solo il compito di autenticarvi e di divertirvi :)

Pi¨ in generale, ssh (detto anche remote login), serve per poter accedere da remoto in modalitÓ testuale ad un'altra macchina.
Lanciando terminale e scrivendo
ssh nomeuser@ip.o.host.della.macchina.da.controllare
verrÓ richiesta la password d'accesso e comparirÓ sulla propria finestra di terminale il prompt come se si stesse lavorando sulla macchina remota

[IKEE:~] ikee% ssh aa@10.0.1.6
aa@10.0.1.6's password:
Last login: Sun Apr 1 10:48:41 2007
Welcome to Darwin!
[Computer-di-a-a:~] aa%

E' chiaro che da questo punto per poter operare Ŕ necessario avere un minimo di conoscenze di comandi per poter navigare, copiare, rinominare e fare.....ma questa Ŕ un'altra storia ;)

Buon lavoro e buon divertimento