Post Meta
-
Indietro
-
January 23, 2008 -
Appunti, Linux -
One Comments
-
Letto 848 volte
-
Comments Feed -
Stampa questo Post
23rd
JAN
SSH senza password
Posted by deepred | Filed under Appunti, Linux
In questo HowTo cercherò di spiegare come è possibile riuscire ad accedere in maniera protetta e sicura ad un sistema remoto senza aver bisogno di digitare password o passphrase. L’HowTo è pensato per utenti KDE.

Per ottenere tale risultato è innanzitutto necessario adottare un riconoscimento remoto tramite l’uso di chiavi di crittografia. Farlo è molto semplice. Innanzitutto bisognerà lanciare il comando:
ssh-keygen -t dsa
durante l’esecuzione ti sarà chiesto dove salvare la chiave e ti sarà chiesto l’inserimento di una passphrase.
ATTENZIONE: inserisci sempre una passphrase altrimenti sarà possibile per chiunque accedere al tuo computer remoto semplicemente copiando il file appena creato.
Dopo aver generato la propria coppia di chiavi pubbliche e privata, sarà necessario installare la chiave pubblica sul server. Per farlo è possibile usare la notazione seguente:
ssh-copy-id ~/.ssh/id_dsa.pub username@remotebox
sostituendo il primo parametro con il path della chiave pubblica (differente solo se durante la generazione delle chiavi non hai accettato il path suggerito) ed il secondo con il nome della macchina remota a cui vuoi accedere e il nome dell’utente con cui vuoi accedere sulla macchina remota. In tale fase ti sarà chiesta la password usata per eseguire il login di tale utente.
Fatto ciò bisognerà far sì che un agente ssh sia avviato all’avvio di KDE: basterà editare i file
/usr/kde/KDE_VERSION/env/agent-startup.sh
e
/usr/kde/KDE_VERSION/shutdown/agent-shutdown.sh
decommentando le righe corrispondenti al ssh-agent.
A tale agente dovrà essere aggiunta ad ogni avvio di KDE la propria chiave: per farlo inseriamo nella directory Autostart di kde (~/.kde/Autostart) il seguente script
#!/bin/sh
export SSH_ASKPASS=/path/to/ssh_wallet.sh
/usr/bin/ssh-add
Non ci rimane ora che scrivere lo script ssh_wallet.sh che restituisca la passphrase necessaria per accedere alla nostra chiave. Il modo con cui possiamo farlo è attraverso kwallet, il portafoglio delle chiavi di KDE.
Apriamo il gestore dei portafogli (Centro di Controllo -> Sicurezza e Privacy -> Portafogli di KDE -> Avvia il gestore dei portafogli), selezioniamo il portafoglio desiderato e creiamo una cartella “SSH_Agent” (File -> Nuova Cartella), quindi, all’interno della cartella aggiungeremo un valore “SSH” (Tasto destro su Password -> Nuovo), di cui editeremo in contenuto (selezionare voce -> Mostra il contenuto), inserendo la nostra passphrase e salvando.
Inserita la password nel portafoglio non ci rimane che recuperarla agevolmente: questo è quello che fa il seguente script ssh_wallet.sh
#!/bin/bash
handle=`dcop kded kwalletd open "nome_vostro_wallet" kdewalet`
dcop kded kwalletd readPassword $handle "SSH_Agent" "SSH"
E questo è tutto. Basterà riavviare KDE e l’unica password necessaria per accedere ad SSH sarà quella del portafoglio di KDE, necessaria per accedere a qualsiasi password richiesta dalle applicazioni KDE.
Tags: certificati > dsa > kde > kdewallet > passphrase > password > ssh > ssh-agent


…
…