如何通过终端在 Mac OS X 中重新加载 ssh 配置文件

Dan*_*son 17 ssh terminal bash macos

当我更新我的 ssh 配置文件以便我可以切换我当前的 github 帐户时,除非我重新启动 iTerm,否则更改将无法正常工作。我正在编写一个脚本来自动化 github 帐户切换,我想让脚本在更新的配置文件中重新加载配置设置。我怎样才能做到这一点?

小智 6

您可能需要查看有关使用多个身份的Atlassian 文档。像我认为您所描述的那种情况(切换帐户)可能最好使用 SSH 配置文件来处理,该文件同时容纳多个帐户,而不是编写脚本。

他们在 ~/.ssh/config 中提供了以下文件示例config

# Default GitHub user
Host github.com
 HostName github.com
 PreferredAuthentications publickey
 IdentityFile ~/.ssh/personalid

# Work user account
Host bitbucket.org
 HostName bitbucket.org
 PreferredAuthentications publickey
 IdentityFile ~/.ssh/workid
Run Code Online (Sandbox Code Playgroud)


小智 6

就我而言,我终于发现问题不在于配置文件(ssh -vvv -F /dev/null -i /some/path/some_other_key甚至将旧密钥移到~/.ssh/其他地方,但仍然设法使旧密钥无处不在),而是ssh agent. 我不得不用ssh-add -D.

man ssh_config阐明-ionssh应该优先于~/.ssh/config文件;因此,如果您正在执行此操作但它仍然无法正常工作,那么一些未记录的更高优先级的权力正在介入。

  • `ssh-add -D` 成功了 (2认同)