我可以 ssh 退出但不能登录。可以逆转吗?

我可以 ssh 退出但不能登录。可以逆转吗?

我在公司网络内的服务器上有一个帐户。我还有一个 Linode 的 VPS。我可以从公司服务器 SSH 到 Linode VPS 或我的家用电脑,没有任何问题。

但由于公司防火墙,我无法使用 ssh进入该机器来自 Linode,或者来自家里,或者任何地方。

那是:

corp --ssh--> home  // works fine

home --ssh--> corp  // blocked

有没有什么办法可以在我上班时建立某种反向隧道,以便我一到家就可以连接到那台机器?

请注意,我不是在问它是否好主意或者如果我的老板会发疯并解雇我,只是......这可能吗?

所有计算机都运行 Ubuntu 和相对较新的 SSHD 版本。我可以在家用机器或 VPS 上安装任何我想要的软件,但可能仅限于 SSH/SSHD 以及企业服务器默认安装的 Ubuntu 中的任何软件。

编辑:公司服务器确实有一个静态 IP 地址,并且作为 Web 服务器公开可见。

答案1

首先,请考虑 mdpc 所说的内容:不要试图以这种方式规避公司政策。这不仅仅是你的老板会发疯并解雇你。如果你碰巧发现自己处于公司机密被泄露或网络被入侵的情况,如果你因为做这样的事情而被发现,这对你的案子没有任何帮助。你可能会被起诉。

继续。

你真正需要的是反向 SSH 隧道。你可以从禁止机器:

ssh -NR 8888:localhost:22 [email protected]

然后,在homemachine.lan,您只需执行以下操作即可访问另一台机器:

ssh corpuser@localhost -p 8888

瞧,您正在通过 ssh 连接到被禁止的机器。

过去几年来,这对我来说非常有用,可以作为穿越 NAT 的一种方式。我无法访问路由器,需要访问路由器后面运行的机器。这就是我解决问题的方法 - 让机器启动与受信任主机的连接,然后从那里进行本地连接。

我假设机器sshd在端口 22 上运行。请根据需要替换用户名。

答案2

好吧,如果您的公司计算机没有通过 nat 运行,并且默认为其分配了公共 IP(这种情况极不可能),您可以使用 iptables 制定规则。但是您的计算机可能通过防火墙和 nat 运行,这不允许从您的计算机到互联网建立任何类型的监听连接。

答案3

是的,它被称为反向 ssh 隧道,只需谷歌搜索“ssh nat”。

如果你设置反向隧道,你的公司计算机将传出连接到您的家用电脑或其他服务器,但您将能够双向使用此连接。

相关内容