无路由器权限,如何 SSH 穿透路由连接内网中的 Linux 机器?

2014 年 6 月 27 日
 Tonni
前提:我没有操作路由器的权限,不可能进行端口转发。

我记得之前好像用什么动态地址解析能解决这个问题,不太清楚了,不知道有没有朋友能说下解决办法。
11578 次点击
所在节点    Linux
24 条回复
zieglar
2014 年 6 月 27 日
dafang
2014 年 6 月 27 日
你可以用 ngrok 这个软件。理论上,只要你有一台外网的服务器,是可以通过这台外网的服务器做tunnel来做数据转发的。

你内网的机器连到外网服务器打开隧道 - 你外网的用户连到服务器握手隧道。

然后就可以SSH双向数据传输了。

ngrok可以方便的解决这个问题。单独的ssh也可以做到。
66450146
2014 年 6 月 27 日
你有一台外网的服务器可以 ssh 的话,就可以用 ssh -R 来转发
mantianyu
2014 年 6 月 27 日
动态地址解析应该解决不了这个问题吧
Tonni
2014 年 6 月 27 日
@66450146 有个美国的VPS,但是在家的长宽访问国外节点速度太慢了。
Tonni
2014 年 6 月 27 日
@zieglar 谢谢推荐,我试用了下,遇到一个奇怪的问题,我是用命令`ssh tonni@5de5f480.ngrok.com`登陆,输入密码提示我密码错误,但是使用`ssh tonni@192.168.1.103`登陆输入密码既可以正常登陆。
zieglar
2014 年 6 月 27 日
看看页面上,有介绍可以让你 debug
9hills
2014 年 6 月 27 日
@Tonni 选个国内的VPS做中转呗,Azure貌似有免费的
sandtears
2014 年 6 月 27 日
最简单的解决方案,买个花生壳新出的花生棒。

麻烦点的话可以买个 VPS,然后用 ssh -R 2222:localhost:22 remote_ip 把本机的 22 端口映射到 VPS 上的 2222 端口。

或者用 he.net 家的 IPv6 Tunnel 服务
sandtears
2014 年 6 月 27 日
另外国内 VPS 貌似不贵,我有个专门用来做端口转发的腾讯云,20+RMB/mo ,1Mbps 转发个 ssh 还是够了。
Tonni
2014 年 6 月 27 日
@dafang 忘记@你了,你遇到过6楼中提到的问题么?
Tonni
2014 年 6 月 27 日
@sandtears 我发现这个不能长久,执行命令后自动登录服务器可以连接,我关掉ssh客户端再登陆就不行了
sandtears
2014 年 6 月 27 日
@Tonni 加参数 ssh -qTfNg -R ... 这样
sandtears
2014 年 6 月 27 日
@Tonni 额 还是用 ssh -Cfg -R 吧,之前那个是我 ssh tunnel 的时候习惯用的。

f 参数的意思就是把这个链接保持在后台
dafang
2014 年 6 月 27 日
@Tonni 你没指定端口啊,你要看一下,一般你ngrok start ssh啥之后,会给你分配一个随机端口的。ngrok.com肯定不会把22端口给你的啊。。。
Ansonyi
2014 年 6 月 27 日
oott123
2014 年 6 月 27 日
试试 n2n ?
udp 打洞,可以做到直连…
Tonni
2014 年 6 月 27 日
@zieglar
@dafang
@66450146
@mantianyu
@oott123
@Ansonyi
@sandtears
@9hills

感谢大家的帮助,我找到解决办法了,

你需要注册一个ngrok的账号,他会给你分配一个token,
执行命令./ngrok -authtoken YOU TOKEN -proto=tcp 22既可以分配给你一个临时的端口,这样你就可以远程登陆啦。配合tmux味道更佳!
谢谢你们的帮助。
zhoubug
2014 年 6 月 28 日
google play 或者 百度应用搜下n2n
geeti
2014 年 6 月 28 日
如果能从内网的机器ssh到外部机器,那就可以用ssh的远程转发。
从内网到外网: ssh -R 19999:localhost:22 [外网client]
然后在外网就可以直接 ssh -p 19999 localhost

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/119846

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX