Unnikked - Esperienze personali in campo informatico

Come bypassare il login SSH

Se siete stufi di inserire sempre la stessa password per accedere al vostro server remoto oppure effettuate spesso operazioni di trasferimento file tramite il comando scp o volete lanciare un comando sulla macchina remota senza però voler effettuare un accesso diretto, allora possiamo bypassare il processo di autenticazione facendo comunicare le due macchine tramite una chiave d’autenticazione comune.

La prima cosa che bisogna fare è generare una chiave (se l’avete già fatto saltate questo passaggio) tramite il comando:

ssh-keygen -t rsa

verrà chiesto di scegliere una passphrase per la chiave (opzionale).

Successivamente usiamo questo comando per inserire la chiave nel server remoto:

cat ~/.ssh/id_rsa.pub | ssh nomeutente@indirizzoip 'cat >> .ssh/authorized_keys'

dove nomeutente sta per il nome dell’utente su cui volete aggiungere la chiave e indirizzoip è l’indirizzo della macchina (o nome dominio); se non conoscete ancora la funzione di ssh leggete questo articolo. Inserite la password. Dopo di che dovreste essere in grado di accedere al server senza password, o anche usare scp o rsync senza inserire la password:

ssh nomeutente@indirizzoip

dove nomeutente sta per il nome dell’utente su cui volete aggiungere la chiave e indirizzoip è l’indirizzo della macchina (o nome dominio).

Metodo alternativo

Si può anche usare il comando ssh-copy-id. Per esempio, dopo aver generato la chiave, usate questo comando:

ssh-copy-id -i ~/.ssh/id_rsa.pub nomeutente@indirizzoip

dove nomeutente sta per il nome dell’utente su cui volete aggiungere la chiave e indirizzoip è l’indirizzo della macchina (o nome dominio).