Faça com que SSH_AUTH_SOCK seja sempre o mesmo arquivo

Faça com que SSH_AUTH_SOCK seja sempre o mesmo arquivo

Eu preciso ser capaz de fazer com que o ssh-agent use o mesmo arquivo para seu soquete toda vez que eu fizer login. Atualmente ele usa um arquivo aleatório em uma pasta temporária, e isso está causando problemas para um serviço systemd no vagrant.

Executamos um comando para criar um arquivo env que define o local do arquivo de soquete para o systemd usar, mas ele continua mudando de local a cada login e, portanto, após provisões do vagrant, o local gravado no arquivo env mudou e não é mais válido.

Existe alguma maneira de forçá-lo a ser sempre, /etc/ssh/ssh_auth_socketpor exemplo?

Responder1

Não. Não é possível com default ssh-agent. Ele também cria arquivos $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>conforme observado na página de manual. É para garantir que o soquete esteja seguro (não acessível apenas pelo seu usuário).

Mas você pode usar gnome-keyring. Eles criam um soquete no /run/user/1000/keyring/ssh, portanto ele fica em local seguro e usa o mesmo protocolo (comum em desktops Gnome).

Para que você precisa disto? Se você tiver o caminho na variável, poderá simplesmente criar .bashrcum link simbólico do seu local "conhecido" para o local real.

informação relacionada