我正在尝试从我的笔记本电脑 (C) 通过 EC2 实例 (B) 访问家用台式计算机 (A)。我已经成功地建立了许多不同类型的隧道,并通过 SSH 从 (A) 到 (B),以及在 (B) 和 (C) 之间来回进行 SSH。我是很近直接从 (A) 到 (C) 建立隧道,但我不断收到相同的错误消息。
因此,如果:Me (A) ------> EC2 (B) ------> Target (C),我会尝试从 (A) 直接隧道到 (C)。
在桌面 (C) 上,我运行ssh -N -R 52.60.xx.xx:1338:localhost:22 userB@machineB
,这似乎工作正常,创建了一个隧道并将 (B) 上的端口 1338 转发回自身 (C)。
然后在(A)上,我跑了ssh -p 1338 userB@machineB -o IdentitiesOnly=yes -i ~/.ssh/keyToMachineC_rsa
,看起来几乎工作。
有了-v
旗帜我得到了很多输出,但它似乎正在连接到目标机器(C),但随后拒绝密钥!输出的最后几行如下所示:
debug1: Host '[52.60.xx.xx]:1338' is known and matches the ECDSA host key.
debug1: Found key in /Users/<Me>/.ssh/known_hosts:35
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/<Me>/.ssh/keyToMachineC_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /Users/<Me>/.ssh/keyToMachineB_rsa
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).
看起来它正在向机器 (C) 提供正确的密钥,但仍然被拒绝!我已手动将正确匹配的公钥放入~/.ssh/authorized_keys
机器 (C) 中 — 事实上,我已多次创建新的密钥对并尝试使用不同的密钥,但总是得到相同的结果。 (C)~/.ssh
上的权限~/.ssh/authorized_keys
被收紧,它们都归正确的用户所有。我拥有sshd_config
完全开放的 (B) 和 (C) 以及我的 AWS 控制台中可以找到的所有相关设置。