outra solução, aprimorando a segurança e facilitando para você, para que você não precise digitar sua senha o tempo todo:
se você quiser criptografar sua chave privada, poderá usar ssh-agentem sua estação de trabalho para 'armazenar em cache' a chave não criptografada. quando você deseja armazenar sua chave descriptografada, executa ssh-add ~/.ssh/id_rsaou qualquer que seja o nome da sua chave privada. você será solicitado a fornecer a senha e a chave descriptografada estará disponível para suas conexões ssh até que você efetue logout, ssh-agentinterrupção ou desligamento.
você pode usar killas chaves armazenadas ssh-agent -ke pode atribuir uma vida útil para a chave estar na memória com ssh-agent -t [seconds]isso, por exemplo; se você não deseja manter sua chave descriptografada para sempre, mas deseja fazer uma grande quantidade de sessões em torno de seus hosts, pode definir o tempo limite para 5 a 10 minutos. para que você não precise inserir continuamente a senha da sua chave.
novamente, tudo isso tem a ver com a confiança que você tem com a segurança de sua / estação de trabalho /, que, se você é o único que tem acesso a ela, e possui uma senha local bastante segura, e você não convide explorações e rootkits, a sua chave privada sem senha é razoavelmente segura.
se você é como eu e mantém sua chave privada em um pendrive, você definitivamente vai querer criptografar isso, mesmo que seja apenas uma chave privada (uma chave separada da qual eu uso na minha estação de trabalho, por isso, se eu perco minha chave, posso facilmente remover a chave pública do pen-drive da ~/.ssh/authorized_keyslista do meu servidor , o que também traz um / excelente / motivo para adicionar comentários ÚTEIS às suas chaves públicas)
na sua resposta a uma resposta anterior, você disse que apenas as pessoas em quem você confia têm acesso à máquina com as chaves. Eu só quero esclarecer que sua chave privada NÃO precisa estar no servidor ao qual você está se conectando, caso seja o que você está fazendo. apenas sua chave pública precisa estar no servidor, e isso não é problema, e é por isso que é uma chave 'pública'.
esqueci de mencionar; i lançar ssh-agentquando eu começar a X, caso contrário, as chaves de-crypted i loja com ssh-addnão são mantidas através de diferentes xtermsessões, e eu tenho que re-digitar a senha cada vez que eu fechar o xtermi lançado ssh-addno em minha. ~/.xinitrcarquivo, eu tenho:
if [ -x /usr/bin/ssh-agent ]; then
eval $(/usr/bin/ssh-agent)
fi
Eu tenho a chamada para ssh-agentencerrar evalporque ssh-agent retorna algumas variáveis de ambiente que precisam ser definidas quando são executadas e executadas a partir de ~/.xinitrc, as variáveis de ambiente são constantes durante toda a sessão X.