利用 ssh config 来控制 gpg agent 使用的 key

在 ssh 密钥还是文件的时候,控制 ssh key 在哪个 host 使用不是一个特别困难的选项,但是当密钥文件换成了 key 呢?本文就来介绍一下这个情况下的控制密钥使用

本文适用在 ssh 其它 key 都可以被接受但是只有某个 key 能起作用的情况

原答案: StackExchange

使用方法

首先先把 pub key 导出来,保存成文件

$ gpg --export-ssh-key 123456789012345678901234567890 > ~/.ssh/1234.pub

之后打开 ~/.ssh/config 文件,添加上你需要利用这个 key 访问的域名,配置文件如下所示

host example.com
#   hostname example.com
    IdentityFile ~/.ssh/1234.pub
    IdentitiesOnly yes
    PasswordAuthentication no
    PubkeyAuthentication yes

如果有需要一个 host 多 key 用的话,可以 host 后面写别名,而后在下面写 hostname 来做不同 key 的使用区别。