kch*_*kch 4 ssh unix tunnel macos
屏幕共享很慢。我想要一个到mini的 SSH 连接。由于路由器、NAT 等原因,无法直接连接。
我想要做的是通过 SSH将macbook和mini连接到服务器,创建适当的隧道,这样我就可以从macbook运行ssh …
命令来通过server建立连接隧道来连接到mini。
所以我的问题是,我必须在哪些机器上运行哪些命令才能使其工作?
为简单起见,请在答案中使用server、mini、macbook作为主机名。
只需要一个 ssh 隧道。从迷你:
ssh -N -R 0.0.0.0:8022:localhost:22 serverUser@server
现在你可以从 macbook 连接到服务器 ssh -p 8022 miniUser@server
一定有GatewayPorts
设置yes
在服务器的/etc/ssh/sshd_config
。
另外你可能想在 ~/.ssh/config 中定义一些东西:
Host gate.mini
HostName server
Port 8022
HostKeyAlias mini
Run Code Online (Sandbox Code Playgroud)
这可以让你做的更连贯ssh miniUser@gate.mini
,同时不会被服务器指纹不匹配所困扰。
在 Mac Mini 上执行以下操作:
ssh -R 1234:localhost:22 serverUser@server
Run Code Online (Sandbox Code Playgroud)
这会将服务器端口 1234 的连接转发到 Mac Mini 上的端口 22。
然后,在 MacBook 上执行以下操作:
ssh -L 1235:localhost:1234 serverUser@server
Run Code Online (Sandbox Code Playgroud)
这会将 MacBook 上端口 1235 的连接转发到服务器上的端口 1234(然后通过上述命令转发到 Mac Mini)。
最后,要获得实际连接,请在 MacBook 上执行以下操作:
ssh -p 1235 miniUser@localhost
Run Code Online (Sandbox Code Playgroud)
它连接到 MacBook 上的端口 1235,该端口被转发到服务器上的端口 1234,该端口被转发到 Mac Mini 上的端口 22。端口 1234 和 1235 可以或多或少地设置为您喜欢的任何值 - 并且可以相同(我使用不同的数字以使解释更清楚)。同样,如果 Mac Mini 上的 SSH 正在侦听不同的端口,则应更改端口 22。
归档时间: |
|
查看次数: |
6395 次 |
最近记录: |