Data publikacji: Apr 13, 2016 8:25:10 AM
Wydaje mi się, że znalazłem rozwiązanie problemu, który mnie trapił. Loguję się przy pomocy SSH (z ForwardAgent yes), uruchamiam sesję screena.
Z poziomu tej sesji jestem w stanie, dalej korzystając z ForwardAgent logować się na inne konta.
Następnie odłączam się z sesji screena, wylogowuje z serwera.
Ponownie loguje się na serwer, przyłączam się do sesji screena i ... trace możliwość logowania na inne konta.
Oto rozwiązanie (za http://superuser.com/a/424588/237155), cytuje:
if [ -S "$SSH_AUTH_SOCK" ] && [ ! -h "$SSH_AUTH_SOCK" ]; then
ln -sf "$SSH_AUTH_SOCK" ~/.ssh/ssh_auth_sock
fi
export SSH_AUTH_SOCK=~/.ssh/ssh_auth_sock
I wytłumacznie:
That reads "if $SSH_AUTH_SOCK is a socket (-S) and not a symbolic link (! -h), create a new symbolic link at the known path. In all cases, redefine SSH_AUTH_SOCK to point to the known path.
The ! -h avoids creating a circular reference if you run this multiple times.
Also, if you use byobu, it does this automatically, without needing to edit any config files.
The only bug I've found in this (byobu has it too) is if you open a second ssh -A or ForwardAgent connection it will overwrite the first socket, and if you close the second connection before the first, you will lose your only good socket.