使用 ssh public key 來達成無密碼登入相當方便,照理來說,可以使用
ssh -i identity_file
來指定特定的 private key,但如果已經有預設的 identity, eg.
identity id_rsa id_dsa
而且也用 ssh-add 儲存起來,這時 -i 可能會失效。
解決方法為,用 .ssh/config 建立一個 host alias:
Host alias_name HostName foo.example.bar IdentityFile id_file IdentitiesOnly yes
此時 ssh alias_name 即會使用該指定的 identity 進行登入。
為什麼要在同一個 host 上設定兩個不同的 identity 呢?因為想要在後面執行不同的 command 啦!以我為例,是想建立一個 ssh tunnel 來做 MacPorts 的 selfupdate。
2012.09.01
Pingback: 透過 SSH Tunnel 來進行 port selfupdate | Tsai I-Ta’s Blog