Ir al contenido

ssh-agent gobernado

kovra puede actuar como ssh-agent: habla el protocolo ssh-agent sobre un socket local y firma cada desafío de autenticación en memoria con un keypair custodiado. La clave privada nunca sale de kovra y nunca toca ~/.ssh.

kovra ssh-agent corre en primer plano, imprime el socket a exportar y sirve hasta que se lo detenga. Se niega a arrancar si $SSH_AUTH_SOCK ya está definido — nunca secuestra otro agente:

zsh
~ % kovra ssh-agent
kovra ssh-agent listening on ~/.vaults/agent.sock
Export it in the shells that should use kovra as their agent:
export SSH_AUTH_SOCK=~/.vaults/agent.sock
Serving in the foreground — press Ctrl-C to stop.

Exportar el socket en otro shell y usar SSH normalmente; el desafío de cada conexión es firmado por kovra:

Ventana de terminal
export SSH_AUTH_SOCK=~/.vaults/agent.sock
ssh deploy@server

Una clave high/prod pide hacer bioProve en cada firma (una verificación biométrica rápida — Touch ID, Windows Hello) y queda auditada; las claves low/medium firman en silencio. Qué claves servirá el agente lo gobierna el scope en <vault-root>/agent.toml, el mismo modelo de scope que usan los agentes.

Si se prefiere mantener el agente habitual, kovra ssh-add carga una clave custodiada en el ssh-agent en ejecución, solo en memoria — nunca escrita en ~/.ssh. Cargar una clave high/prod pide hacer bioProve:

Ventana de terminal
kovra ssh-add secret:dev/ssh/deploy

kovra gobierna el evento de autenticación — el momento en que la clave prueba la identidad — no la sesión SSH que se abre después. Una vez que una conexión queda autorizada, lo que ocurre dentro de esa sesión es entre el usuario y el host remoto. kovra hace que la clave sea imposible de copiar y que su uso sea atribuible; no se interpone en medio del shell.