在知道目标地址后,可以验证 SSH 连接。您可以尝试使用以下命令直接连接到目标
ssh -i ~/.ssh/fuchsia_ed25519 fe80::ca63:14ff:fe70:51db%zx-c863147051da
此命令将使用位于 ~/.ssh/fuchsia_ed25519
的 SSH 私钥连接并尝试进行身份验证。如果连接失败,请将 -v
标志传递给 ssh 以进行更详细的诊断:
ssh -v -i ~/.ssh/fuchsia_ed25519 fe80::ca63:14ff:fe70:51db%zx-c863147051da
系统会生成大量输出。在查看失败情况之前,最好先了解成功连接需要哪些步骤。以下是您需要重点关注的几个方面:
bash$ ssh -v -i ~/.ssh/fuchsia_ed25519 fe80::ca63:14ff:fe70:51db%zx-c863147051da
...
debug1: Connecting to fe80::ca63:14ff:fe70:51db%zx-c863147051da [fe80::ca63:14ff:fe70:51db%zx-c863147051da] port 22.
debug1: using TCP window size of 4194304 / 4194304
debug1: fd 3 clearing O_NONBLOCK
debug1: Connection established.
...
debug1: Offering public key: /home/user/.ssh/fuchsia_ed25519 ED25519 SHA256:<snip>
debug1: Server accepts key: /home/user/.ssh/fuchsia_ed25519 ED25519 SHA256:<snip>
Authenticated to fe80::ca63:14ff:fe70:51db%zx-c863147051da ([fe80::ca63:14ff:fe70:51db%zx-c863147051da]:22) using "publickey"
...
$
您可以看到,客户端首先建立连接,然后提供接受的密钥进行身份验证。如果密钥被拒绝,会话将以以下状态结束:
debug1: Next authentication method: keyboard-interactive
debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: No more authentication methods to try.
user@fe80::ca63:14ff:fe70:51db%zx-c863147051da: Permission denied (publickey,keyboard-interactive).
这表示服务器未配置相应密钥的公钥部分。 这几乎总是意味着 Fuchsia 目标未预配密钥,或者本地主机与 Fuchsia 目标之间存在密钥不匹配的情况。