
對於僅在筆記型電腦(alice)上可用的私鑰,有沒有辦法使用該金鑰從伺服器(bob)透過 gitlab 進行身份驗證。 (我認為,作為愛麗絲和鮑伯之間的跳躍主機,問題不大。)
愛麗絲 --> 跳轉 --> 鮑伯 --> gitlab
alice 上的 ~/.ssh/config 目前為:
Host *
PKCS11Provider /usr/lib/ssh-keychain.dylib
Host jump
HostName jump01.example.org
Host bob
HostName bob.example.org
ProxyJump jump
我已經從 gitlab 上的 alice 令牌獲得了公鑰,我想將它與git
bob 的命令一起使用。正如在...
alice:~ $ ssh bob
Last login: Fri Aug 27 20:33:56 2021
bob:~ $ git clone [email protected]:my/repo.git
我沒有鮑伯的密鑰對。
答案1
您必須擁有一些bob
不能被濫用的信任,但簡單的答案是執行 ssh 代理並使用代理轉發。
在 上啟動代理,使用然後在設定中設定代理轉送來alice
新增 PKCS11Provider 。ssh-add -S
Host bob
ForwardAgent yes
HostName bob.example.org
ProxyJump jump
有關 PKCS11 提供者和代理轉發的詳細信息,請參閱 ssh-agent、ssh-add 和 ssh_config 的手冊頁。
我認為,作為跳躍主機的併發症是次要的
由於 ProxyJump 的工作原理,它並不複雜,而且實際上根本不重要。從 Alice 上的 ssh 用戶端的角度來看,它的行為就像您與 Bob 建立了直接連線一樣。