logo

Archive for SSH

SSH: autenticazione tramite chiave

SSH è un protocollo di rete che ci permette di stabilire una connessione remota cifrata tra un client ed un server.

Alla autenticazione tramite password è preferibile scegliere l’autenticazione tramite chiave ed inserimento di una passphrase per lo sblocco di quest’ultima.

Il primo passo è generare sul MAC una coppia di chiavi, una privata da inserire sul device che funge da client ed una pubblica da inserire sul server.

Apriamo il terminale e digitiamo:

ssh-keygen -t dsa

il terminale riporta:

Generating public/private dsa key pair.
Enter file in which to save the key (/Users/Max/.ssh/id_dsa):

Premiamo invio o personalizziamo la directory di destinazione (default User/.ssh/), successivamente inseriamo due volte una passphrase da noi scelta che ci sarà richiesta durante le connessioni per sbloccare la chiave:

Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/Max/.ssh/id_dsa.
Your public key has been saved in /Users/Max/.ssh/id_dsa.pub.
The key fingerprint is:
08:47:e1:D6:d7:bd:D1:f3:6b:cc:4d:0c:e3:76:54:fe [email protected]
The key’s randomart image is:
+–[ DSA 1024]—-+
| o. +|
| o* . . +.|
| . + . . +o=|
| + . . . =*|
| D o.F|
| .*.o|
| +.|
| . |
| |
+—————–+

Sotto la directory /.ssh/ sono stati così creati due file contenenti rispettivamente la chiave privata e la chiave pubblica:

– id_dsa

– id_dsa.pub

Successivamente digitiamo il comando ssh-add:la passphrase delle chiavi:

ssh-add ~/.ssh/id_dsa

e reinseriamo la passphrase:

Enter passphrase for /Users/Max/.ssh/id_dsa:
Identity added: /Users/Max/.ssh/id_dsa (/Users/Max/.ssh/id_dsa)

L’inserimento della chiave pubblica sul mio provider (siteground) è alquanto semplice, basta aprire la chiave pubblica con un editor di testo e copiare il contenute nell’apposita finestra:

SSH Upload

Diversamente è possibile inserire manualmente la chiave copiando il contenuto della chiave pubblica sul file authorized_key presente sul server:

~/.ssh/authorized_keys

Metodi alternativi sono utilizzare i comandi ssh-copy-idscp:

 scp -P porta ~/.ssh/id_dsa.pub [email protected]:~/.ssh/authorized_keys

Se ricevete l’errore:

Permission denied (publickey)

Impostate i permessi sul server come segue:

$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/authorized_keys

Per provare la connessione digitiamo da terminale:

[email protected] -p porta

Per l’utilizzo di SSH tramite  iPad vi rimando al prossimo articolo.

SSH su Ipad: come inserire una chiave di autenticazione

Se vogliamo utilizzare l’iPad come client SSH abbiamo bisogno di un’app dedicata a tale scopo, le applicazioni  scelte per l’articolo sono due: iSSH e Prompt (personalmente preferisco iSSH, che supporta anche connessioni VNC e X-Server).

Dopo aver generato le due chiavi secondo le istruzioni riportate nell’articolo SSH: autenticazione tramite chiave, possiamo procedere ad inserire la chiave privata nelle applicazioni SSH dell’iPad.

iSSH

Aprite l’app e andate su General Setting:

general setting

Cliccate su Configure SSH Keys e successivamente su Import Key:

private key

Possiamo generare le chiavi anche direttamente da iSSH, ovvero cliccando su Generate Key è possibile generare una nuova chiave, inserire la passphrase ed esportare sia la chiave pubblica che quella privata:


key generator

key

Qualora la chiave è già disponibile sul Mac, aprite con un editor di testo il file  id_dsa, copiate il contento, andate su import key ed incollatelo all’interno della finestra, nella parte superiore inserite la passphrase e salvate:

key import

Avviate la connessione, inserite la passphrase, e sarete autenticati e connessi:

Passphrase

SSH Connection

SSH su Ipad: Prompt

– Prompt

Dopo aver generato le due chiavi secondo le istruzioni riportate nell’articolo SSH: autenticazione tramite chiave, possiamo procedere ad inserire la chiave privata nelle applicazioni Prompt dell’iPad.

L’importazione della chiave su Prompt può essere fatta invece in due modi differenti, il primo è simile a quello utilizzato per iSSH, ovvero basta cliccicare sull’icona a forma di chiave accanto al campo password e copiare il contenuto del file  id_dsa all’interno della finestra Keys:

import key

Il secondo metodo consiste nel collegare l’iPad tramite itunes e copiare la chiave id_dsa nella sezione condivisione file relativa l’applicazione Prompt, la chiave così inserita sarà disponibile per essere importata:

prompt

passphrase