有跳板机情况下如何打洞?

2020-11-06 10:35:37 +08:00
 cuixiao603

有跳板机情况下如何打洞?本地 pc 与跳板机,跳板机与目标主机都只有 22 端口可以访问,想实现如下效果。 (知道不安全哈,就是单纯想探讨一下)
https://i.imgur.com/99VDQPn.jpg

3552 次点击
所在节点    程序员
18 条回复
hyq
2020-11-06 10:47:29 +08:00
双层 ssh 隧道就行
ssh -o 'ProxyCommand ssh {user}@{跳板机 IP} nc %h %p' -L 3306:{目标机器可访问 mysql 的 ip}:3306 {user}@{目标机器 IP}
hyq
2020-11-06 10:48:09 +08:00
然后本机会监听 3306 端口,访问这个端口就能自动转发到目标机的 3306
kiddingU
2020-11-06 10:54:16 +08:00
楼上说的方法可以,内网穿透用 ssh 隧道也行,很方便
cuixiao603
2020-11-06 11:25:15 +08:00
@hyq #1 跳板机上没有 nc 怎么办呢
sazima
2020-11-06 11:42:52 +08:00
ssh7.3 的 ProxyJump, 再加上 ssh 隧道
cuixiao603
2020-11-06 13:04:41 +08:00
@sazima #5 没有搞通 大佬能否细说一下呢
onion83
2020-11-06 13:21:02 +08:00
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -p tcp --dport 3306 -j DNAT --to-destination <IP>:3306
cuixiao603
2020-11-06 14:04:43 +08:00
@onion83 #7 这个。。恐怕不行吧
dogfeet
2020-11-06 14:38:24 +08:00
跳板机上没 nc 的话,可以直接先在跳板机上开个隧道
ssh -Nfg -L 3306:127.0.0.1:3306 目标机
然后在本机上执行
ssh -Nfg -L 3306:127.0.0.1:3306 跳板机
这样访问本机的 3306 会先通过隧道到跳板机的 3306 然后再通过隧道至目标机的 3306
lewis89
2020-11-06 14:38:51 +08:00
@cuixiao603 #8 没毛病,PREROUTING 跟 DNAT 就是干这个的
tzigone
2020-11-06 14:46:24 +08:00
有 DMZ , 怎么打
cuixiao603
2020-11-06 14:52:02 +08:00
@lewis89 #10 目标主机和跳板机都只有 22 端口是通的
lewis89
2020-11-06 14:53:26 +08:00
@cuixiao603 #12 ssh 把远程主机的端口转发到本地呗..
myd
2020-11-06 14:57:24 +08:00
[!] 危险操作
cuixiao603
2020-11-06 15:21:00 +08:00
@dogfeet #9 已测试 非常好用
codingbody
2020-11-06 21:12:51 +08:00
借楼咨询下:怎么透过跳板机 用 scp 给内网机器上传、下载文件
本地用的 mac
shequ2046
2020-11-06 21:13:13 +08:00
@hyq 使用标准的 ssh 协议监听 127.0.0.1 就可以安全实现的东西,为什么要用 nc ?是看了什么批量让傻子主动把服务器做成肉鸡的教材么?
hyq
2020-11-09 12:36:18 +08:00
@shequ2046 你看懂命令了吗。在自己电脑上监听 127.0.0.1:3306,转发到目标机的 3306 端口,这也叫做肉鸡?再说了题主都说了知道不安全,仅探讨一下,就你不知道?

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

https://www.v2ex.com/t/722288

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

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

© 2021 V2EX