防止 ssh-agent 在 Ubuntu 16.04 中启动

防止 ssh-agent 在 Ubuntu 16.04 中启动

我开始ssh-agent使用:

eval $(ssh-agent)
ssh-add /path/to/key

在其中一台服务器(Ubuntu 16.04)上允许rsync,并且原以为 的会话ssh-agent将在注销后过期。

它没有,而是每次我登录时都会启动,并且由于密钥在几个服务器之间共享,因此所有服务器现在都会自动进行身份验证,而无需请求密码。

我尝试过ssh-agent -k,但总是抛出异常SSH_AGENT_PID not set, cannot kill agent

如果我确实ssh-agent要获取 PID,那么sudo kill -9 [PID]另一个ssh-agent进程将使用新的 PID 启动。

我想完全关闭ssh-agent并防止它在每次登录所有受影响的服务器时启动。

答案1

~/.bash_logout, 做

eval $(ssh-agent -k)

或者,对于非bashshell,ssh-agent

if [ -z "$SSH_AUTH_SOCK" ]; then
  ssh-agent myshell
fi

例如或其他东西myshell在哪里。dashksh93

在你的最后做这个登录shell初始化文件, 通常~/.profile。当你退出时,代理就会死亡。

ssh-agent清理错误启动的剩余进程(这将终止全部其中):

$ pkill ssh-agent

相关内容