-
Você pode iniciar
ssh-agentno shell subsequente e ao novo exportar a variável de ambiente (por exemplo, de um arquivo criado no primeiro)ssh-agent > ~/.ssh_agent_env source ~/.ssh_agent_env -
Você pode receber uma senha usando um prompt da GUI, que é fornecido para
sshpela variável de ambienteSSH_ASKPASS. No Linux, geralmentegnome-askpassou similar. Haverá algo semelhante no cygwin também. -
Existe a opção
AddKeysToAgent, que adicionará as chaves usadas recentemente à execuçãossh-agentpara obter o que você precisa.
Ambos precisariam de algumas codificações / verificações antes de chamar o% final ssh , por exemplo, um script bash que você pode chamar no RemoteShell exex /path/to/my/script.sh , por exemplo:
#!/bin/bash
ps aux | grep ssh-agent | grep -v grep
if [ "$?" = "1" ]; then
# start a new agent (in a background) and store its environent
ssh-agent > ~/.ssh_agent_env
end
# load existing ssh-agent connection
source ~/.ssh_agent_env
/bin/xterm.exe -e /usr/bin/ssh -oAddKeysToAgent=yes -Yl <user> RemoteHost
# or do whatever magic you want