Recipe 6.11 Terminating an SSH Agent on Logout

6.11.1 Problem

When you log out, you want the ssh-agent process to be terminated automatically.

6.11.2 Solution

For bash:

~/.bash_profile: trap 'test -n "$SSH_AGENT_PID" && eval `/usr/bin/ssh-agent -k`' 0

For csh or tcsh:

~/.logout: if ( "$SSH_AGENT_PID" != "" ) then         eval `/usr/bin/ssh-agent -k` endif

6.11.3 Discussion

SSH agents you invoke yourself don't die automatically when you log out: you must kill them explicitly. When you run an agent, it defines the environment variable SSH_AGENT_PID. [Recipe 6.9] Simply test for its existence and kill the agent with the -k option.

6.11.4 See Also

ssh-agent(1).



Linux Security Cookbook
Linux Security Cookbook
ISBN: 0596003919
EAN: 2147483647
Year: 2006
Pages: 247

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net