Vorrei creare uno script automatizzato che chiami ssh-keygen
e crei delle coppie di pub / private che userò in seguito. In linea di principio, tutto funziona bene con ...
ssh-keygen -b 2048 -t rsa -f /tmp/sshkey -q
... tranne per il fatto che mi chiede la passphrase che crittograferebbe le chiavi. Questo rende -attuale difficile l'automazione.
Potrei fornire una passphrase tramite l'argomento della riga di comando -N thepassphrase
, in modo da impedire la visualizzazione del prompt. Tuttavia non desidero nemmeno avere le chiavi, ulteriormente protette dalla crittografia , e voglio che le coppie di chiavi siano in chiaro.
Qual è la (migliore) soluzione a questo problema?
L' -q
opzione che presumibilmente significa "silenzioso / silenzioso" non evita ancora l'interazione passphrase. Inoltre non ho trovato qualcosa del genere
ssh-keygen ...... -q --no-passphrase
Per favore, non iniziare a predicare o insegnarmi ai pro e contro della "passphrase mancante", ne sono consapevole. Nel modulo interattivo (non come uno script) l'utente può semplicemente premere [INVIO] due volte e la chiave verrà salvata come testo in chiaro. Questo è ciò che voglio ottenere in uno script come questo:
#! / Bin / bash command1 comando2 var = $ (Command3) # questo non dovrebbe fermare lo script e chiedere la password ssh-kegen -b 2048 -t rsa -f / tmp / sshkey -q
/tmp/sshkey
esista già, si ottiene un prompt di sovrascrittura. Questo può essere evitato reindirizzando / chiudendo lo stdin, ad esempio aggiungendo0>&-
.