O Mac solicita `Digite a senha da chave em cada login

O Mac solicita `Digite a senha da chave em cada login

Eu uso regularmente meu Mac para sshoutros sistemas na minha rede local.

Tenho uma chave pública/privada (criada há 6 anos) para poder me conectar sem usar senha.

Recentemente (provavelmente desde a atualização para 10.12.4), o Mac solicita a senha Enter para a chave '/Users/user/.ssh/id_rsa':

Por que isso de repente começou a acontecer? (Presumo que isso tenha algo a ver com mudanças em ssh OpenSSH_7.4p1, LibreSSL 2.5.0)

Posso me sshconectar sem pedir senha?

Alternativamente, posso usar um novo par de chaves, mas posso ssh-keygenremover a senha sem afetar a chave pública?

Parece haver uma série de questões relacionadas, mas nenhuma solução que pareça aplicável ao Mac.

Informações possivelmente úteis: -

id_rsa

Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,0F1575DBFB9CA6CD

ssh-add -lmostra

2048 SHA256:XQGzZVv9orlvUu6t7XIfxi89EaroG9CU2Z2WQ71kST8 ~/.ssh/id_rsa (RSA)

ssh-agent

SSH_AUTH_SOCK=/var/folders/b7/k8m8pvdx0kl3kjhbk8q2kchm0000gn/T//ssh-gmetYqUf36ZC/agent.10219; export SSH_AUTH_SOCK;
SSH_AGENT_PID=10220; export SSH_AGENT_PID;
echo Agent pid 10220;

Responder1

Se você gerou o par de chaves com uma senha, este é o comportamento desejado. Se você não quiser inserir uma senha, escolha uma vazia.

Se fosse possível gerar uma nova chave com a mesma chave pública, não haveria mais segurança, então não dá para fazer isso.

Sugiro deixar o Keychain inserir a senha para você. Edite ~/.ssh/confige adicione a opção:

Host *
    UseKeychain yes

informação relacionada