![远程 ssh 在新连接中不起作用](https://linux22.com/image/544319/%E8%BF%9C%E7%A8%8B%20ssh%20%E5%9C%A8%E6%96%B0%E8%BF%9E%E6%8E%A5%E4%B8%AD%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我设法通过在工作电脑上发出 autossh 命令在 UBUNTU 中建立了到我家用电脑的远程隧道:
autossh -M 0 -q -N -o “ServerAliveInterval 60” -o “ServerAliveCountMax 3” -R 8888:localhost:22 root@homepc
到目前为止,使用旧路由器一切运行正常,我只需将端口 22 转发到我的笔记本电脑,一切就顺利了。
现在我换了公寓,我有一个不完全受我控制的路由器 [我只有一个无线密码,但没有管理员权限,也没有物理访问权限]。我猜我无法更改路由器上的配置,我能做些什么吗?工作电脑在防火墙后面。
有没有办法使用 3 台电脑,而中间的一台电脑只负责将数据从家转发到工作地点?
主页 <---> 代理 <---> 工作
有什么适合 ubuntu 的东西吗?HAMACHI 可以吗,还是我需要其他解决方案?
答案1
由于您无法配置任何一个防火墙,因此任何解决方案都需要中间的某台机器。
如果您在某处有 VPS,您可以设置 VPN。
VPN 的一个更简单的替代方案是使用来自客户端的常规 SSH 隧道和从服务器到该 VPS 的反向 SSH 隧道来完成。
如果您没有 VPS 或类似的东西,您确实必须依赖 Hamachi 这样的服务。
我最近一直在使用另一种选择,Teredo 隧道。Teredo
为您提供 IPv6 地址,并使您的计算机直接地互联网上可寻址(对于使用 IPv6 的任何其他人来说)。
这既有用又危险。现有的任何 IPv4 接口的 NAT 和防火墙都将被绕过。
Linux 的 Teredo 实现称为 Miredo。使用 在 Ubuntu 上安装它sudo apt-get install miredo
。
确保配置您的 ip6tables,并运行sudo update-rc.d -f remove miredo
以便默认情况下连接未打开。
然后,您可以使用 选择何时打开它sudo ifup miredo
。
您需要在两台机器上执行此操作,以便它们都具有 IPv6。