~/.bash_logout
file:if [[ -n $SSH_AUTH_SOCK && -z $SSH_CONNECTION && $SHLVL = 1 ]] ; then ssh-add -D sudo -K fi
One caveat: the above only works using the shell's
exit
(or logout
or Ctrl + D), not with iTerm2's close button. However, that can be fixed by using an exit trap in .bash_profile
instead, like so:clearKeys() { ssh-add -D sudo -K } if [[ -n $SSH_AUTH_SOCK && -z $SSH_CONNECTION && $SHLVL = 1 ]] ; then trap clearKeys EXIT fi
To be clear, the latter version requires no changes/additions to
.bash_logout
.Rationale: I usually work on a desktop, and keep a copy of my work in sync on a laptop using unison. Making the SSH connection from the laptop adds the key to the session's ssh-agent, but I don't want that to persist after sync is finished. I don't want keys to stay active while I'm not planning on using them soon.
No comments:
Post a Comment