OverTheWire Bandit 16-17关卡SSH登录失败求助
Bandit 16→17关卡SSH私钥登录问题解决
问题场景
在OverTheWire Bandit游戏16→17关卡中,需使用私钥登录bandit17用户。已将私钥保存至/tmp/bokeh/sshkey17.private并设置用户只读权限,执行以下命令后报错:
ssh -i /tmp/bokeh/sshkey17.private bandit17@bandit.labs.overthewire.org -p 2220
报错信息
无法确认主机 '[bandit.labs.overthewire.org]:2220 ([127.0.0.1]:2220)' 的真实性。 ED25519密钥指纹为SHA256:C2ihUBV7ihnV1wUXRb4RrEcLfXC5CXlhmAAM/urerLY。 此密钥未关联其他名称 是否继续连接(yes/no/[fingerprint])? yes 无法创建目录 '/home/bandit16/.ssh'(权限拒绝)。 无法将主机添加到已知主机列表(/home/bandit16/.ssh/known_hosts)。 这是OverTheWire游戏服务器。 更多信息请访问http://www.overthewire.org/wargames !!! 你正尝试从本地主机通过2220端口使用密码登录此SSH服务器。 !!! 为节省资源,本地主机连接已被阻止。 !!! 请退出后重新登录。 加载密钥"/tmp/bokeh/sshkey17.private": libcrypto错误 bandit17@bandit.labs.overthewire.org: 权限拒绝(公钥)。
错误分析
你认为的“无法创建SSH文件夹”是次要问题,核心错误有两个:
- 禁止从Bandit服务器内部跳转登录:报错明确提示“从本地主机(指bandit16所在服务器)通过2220端口连接被阻止”,不能在bandit16的远程会话内直接ssh到bandit17。
- 私钥权限或加载问题:
libcrypto错误和权限拒绝(公钥)说明私钥可能权限配置不正确,或文件本身存在问题。
解决方案
- 退出当前bandit16会话:回到你自己的本地终端(而非bandit16的远程服务器环境)。
- 确保私钥权限正确:执行命令设置私钥为当前用户只读(必须是600权限,否则SSH会拒绝加载):
chmod 600 /tmp/bokeh/sshkey17.private - 重新执行登录命令:在本地终端运行:
ssh -i /tmp/bokeh/sshkey17.private bandit17@bandit.labs.overthewire.org -p 2220
内容的提问来源于stack exchange,提问作者user15503745
相关产品推荐
相关产品推荐

