1
我想調試CPU變高的OpenSSH問題。但在此之前,我想確認是否已使用SSH代理轉發功能進行此連接。以下是分配了兩個通道的子SSH服務器的core-dump。 頻道[1]似乎在與ssh-agent對話。OpenSSH - 它是ssh代理轉發?
我需要在以下幫助:
1)正如我知道的ssh-agent會談SSH客戶端,但是在這裏似乎 談話與SSH服務器。我們可以說我們有ssh-agent轉發 的角色嗎?
2)我能做些什麼來重現這種情況?
3)其他任何你可能想請你告訴我,從給出的數據 。
(gdb) p *channels[0]
type = 0x4,
self = 0x0,
remote_id = 0x0,
istate = 0x0,
ostate = 0x3,
flags = 0x0,
rfd = 0xd,
wfd = 0xffffffff,
efd = 0xffffffff,
sock = 0xffffffff,
ctl_chan = 0xffffffff,
isatty = 0x1,
client_tty = 0x0,
path = 0x0,
listening_port = 0x0,
listening_addr = 0x0,
host_port = 0x0,
remote_name = 0xb0f2e4a0 "server-session",
ctype = 0x187df64 "session",
open_confirm = 0,
open_confirm_ctx = 0x0,
detach_user = 0x1855650 <session_close_by_channel>,
detach_close = 0x1,
=============================
(gdb) p *channels[1]
type = 0x6,
self = 0x1,
remote_id = 0xffffffff,
istate = 0x0,
ostate = 0x0,
flags = 0x0,
rfd = 0x9,
wfd = 0x9,
efd = 0xffffffff,
sock = 0x9,
ctl_chan = 0xffffffff,
path = 0xb0f2e7a0 "/tmp/ssh-00015945aa/agent.15945",
listening_port = 0x0,
listening_addr = 0x0,
host_port = 0x0,
remote_name = 0xb0f2e720 "auth socket",
ctype = 0x187d92c "auth socket"
謝謝。我可以請求你詳細說明你的回覆:1)其他客戶如何使用我的ssh-agent使用這個功能。如果可能的話,請解釋這個套接字轉發是如何工作的。 –
其他客戶端使用環境變量'SSH_AUTH_SOCK'中的套接字使用ssh-agent。轉發工作,你天真地期望。兩端都有套接字,一端寫入第一端,另一端可讀取第二端的數據。 – Jakuje