ssh-add
viene utilizzato per aggiungere chiavi private a ssh-agent
locale. Ciò significa che la chiave privata sarà accessibile all'agente (probabilmente può essere letta dalla memoria da un account amministrativo). Ma normalmente non dovrebbe mai lasciare il computer locale (dalla pagina man di ssh-agent):
The agent will never send a private key over its request channel.
Instead, operations that require a private key will be performed by the
agent, and the result will be returned to the requester. This way, private keys are not exposed to clients using the agent.
Se pensi di poterti fidare della tua macchina locale, il rischio dovrebbe essere accettabile. E comunque, non dovresti mai usare una chiave privata su una macchina di cui non ti fidi, sia tramite ssh-agent o direttamente.
Tieni presente che ssh-agent
può inoltrare l'uso della chiave privata su un canale ssh.
Authentication data need not be stored on any other machine, and
authentication passphrases never go over the network. However, the connection to the agent is forwarded over SSH remote logins, and the user
can thus use the privileges given by the identities anywhere in the network in a secure way.
Ciò significa che se lo si utilizza mentre è connesso a una macchina ostile, un utente malintenzionato non può mai acquisire la propria chiave privata, ma potrebbe effettuare connessioni autenticate ad altre macchine della rete per conto del proprio account. Se si tratta di un problema, in realtà dipende da come ti fidi dei computer a cui ti colleghi.