Linode 服务器 IP 被墙,通过 ssh jump host 参数一键直连」的摘要信息

问题现象 新购的 Linode 海外服务器,发现无法通过 ssh 登录。显示错误: ssh: connect to host x.x.x.x port 22: Resource temporarily unavailable 而通过另外一台可以登录的 DigitalOcean 的海外服务器,在那台服务器上是可以通过 ssh 登录上去的。 看来是这台 Linode 服务器的 IP 之前被人建站用过,IP 已经被国内的密码机构墙了。 这就很蛋疼了,总不能每次都通过另一台服务器上进行操作吧,主要是网络也不太好,在上面敲命令也很卡。 我想是否可以通过什么工具或者命令,可以直接在本地 ssh 上那台被墙的服务器,也许操作就没那么卡顿了。 ssh 命令 ssh username@目标机IP -J username@跳板机IP 只需要 将本地的 ~/.ssh/id_rsa.pub 文件内容,复制到跳板机的 ~/.ssh/authorized_keys 文件中。 然后,将跳板机的 id_rsa.pub,复制到目标机的 authorized_keys 中。 使用这个命令,就可以直接登录到目标服务器了。省去了很多麻烦。 然后这个这个 ssh 命令保存到一个 shell 脚本,就可以一键登录了。 注意:如果不把跳板机的 id_rsa.pub 复制到目标机,则会报错: kex_exchange_identification: Connection closed by remote host -J 参数说明 通过 man ssh 可以看到 -J 参数的说明: -J destination Connect to the target host by first making a ssh connection to the jump host described by destination and ...