Openssh
MacOS:通過 brew 安裝了 openssh,如何將密鑰添加到鑰匙串?
我通過
brew install openssh
. 我將以下內容添加到我的 .profile 中:export SSH_AUTH_SOCK="~/.ssh/agent.$HOST.sock" ssh-add -l 2>/dev/null >/dev/null if [ $? -ge 2 ]; then ssh-agent -a "$SSH_AUTH_SOCK" >/dev/null fi
然後我必須執行以下操作:
ssh-add ~/.ssh/id_ecdsa_sk Enter passphrase for /Users/myuser/.ssh/id_ecdsa_sk: Identity added: /Users/myuser/.ssh/id_ecdsa_sk
即使我的 ~/.ssh/config 中有以下內容:
Host * IgnoreUnknown UseKeychain UseKeychain yes AddKeysToAgent yes IdentityFile ~/.ssh/id_ecdsa_sk
(我必須添加 IgnoreUnknown 位 b/c 來自 brew 的安裝會安裝一個破壞 UseKeychain 位的版本。)但是現在:如何連接它以便將密鑰添加到我的鑰匙串?
幫助表示讚賞!
鑰匙串集成是 Apple 添加的一項功能,它不在 OpenSSH 的標準版本中。由於您現在已經安裝了 HomeBrew 的標準 OpenSSH 版本,因此您將不再擁有此功能。您已經發現了這一點,因為該
UseKeychain
選項現在給出了配置錯誤 - 添加IgnoreUnknown
配置只會使錯誤消息消失,它實際上不會帶回任何功能。為了獲得鑰匙串集成,您需要解除安裝 OpenSSH 的 HomeBrew 版本並使用 Apple 提供的版本。
HomeBrew 中的版本在可預見的未來不會集成 Keychain - 並不是他們根本無法使其工作,而是他們發現實施對項目的風險太大,因為它是並非來自 OpenSSH 項目本身的重大變化。您可以在此處閱讀有關該討論的內容。
如果您查看連結,您會發現您仍然可以下載舊更新檔,如果您願意,可以嘗試一下。但是,由於它不再維護,因此存在安全風險。
同樣,您可以在此處下載第三方 mod 以添加鑰匙串支持。然而,自 2017 年以來似乎沒有更新,因此也存在安全風險。