gpt4 book ai didi

ssh - 使用谷歌 gcloud ssh 隧道进入网络内部的 linux 机器

转载 作者:行者123 更新时间:2023-12-05 00:45:11 24 4
gpt4 key购买 nike

我有一台运行在 OSX 上的 Ubuntu 16.04 VirtualBox 机器(即机器 A)连接到大学校园网络。我想偶尔从我的笔记本电脑 ssh 进入机器以远程协助我的同事,我查看了不同的选项。

似乎选项之一是“反向 ssh”(与“端口转发”或“ssh 隧道”相关)。我的笔记本电脑没有固定 IP,所以我不能直接反向 ssh。可能的解决方案是使用代理机器。这个想法是当我需要帮助我的同事时,他们会输入来自机器 A 的连接指令,这将创建一个正在运行的 GCP 实例,然后我将能够使用这个桥接(代理)从外部连接到机器 A ?) GCP 机器。


/ Academic intranet
+----------+ |
| GCE | | +----------+
| instance |<----|--| Machine A|
+----------+ | +----------+
|
\



/ Academic intranet
+----------+ |
+-------------+ ssh | GCE | ssh | +----------+
| Laptop dynIP|---------->| instance |-----|->| Machine A|
+-------------+ +----------+ | +----------+
|
\


我们有一个 Google 云帐户和 gcloud安装在机器 A 上。据我所知,GCP 已经有一种非常简单的方法可以在 GCP 中设置隧道:

https://cloud.google.com/community/tutorials/ssh-tunnel-on-gce

我试过了,它有效。这让我猜想在 GCP 上最后一步应该也可以这样做:让我能够在正在运行的 GCP 实例上打开一个 SSH 浏览器窗口,这样我就可以从那里 ssh 进入机器 A。

有任何想法吗?

编辑:

以下是我在 gce 指令上遵循 ssh 隧道的距离:

在机器 A 上:
gcloud compute instances create --zone us-west1-a tunnel
gcloud compute ssh --zone us-west1-a tunnel -- -N -p 22 -D localhost:2210

在我的笔记本电脑上,我可以打开 https://console.cloud.google.com/compute/instances然后打开浏览器窗口以进行 SSH 连接。

来自 GCP 实例主机名 tunnel ,我想我错过了类似的东西:
ssh-into-machine-A-from-here

这是我缺少的最后一个命令。或者也许是 gcloud 中的 ssh 隧道需要额外的标志/参数。

最佳答案

0) 使用如下命令在 GCP 上创建一个实例:

gcloud compute instances create --zone us-west1-a tunnel

0b) 单击 https://console.cloud.google.com/compute/instances 上的“SSH”链接打开浏览器窗口。

0c) 在浏览器窗口中,编辑 sshd_config 文件以启用 GatewayPorts yes .

0d) 设置 gcloud CLI 并第一次连接如下图:
gcloud compute ssh --zone us-west1-a tunnel

这将在 $HOME/.ssh/google_compute_engine 中创建 ssh key .与它断开连接。现在 key 已创建,请按照以下步骤操作。

1) 要建立从 GCE 到机器 A 的转发:在机器 A 上运行以下命令:
ssh -i ~/.ssh/google_compute_engine -o UserKnownHostsFile=/dev/null -o CheckHostIP=no -o StrictHostKeyChecking=no -f -N -R 2022:*:22 gce_user@gce_address

2) 现在,要从您的笔记本电脑连接到机器 A,您可以使用带有 GCP 实例的浏览器窗口并执行以下操作:
ssh -p 2022 A_machine_user@localhost

然后这应该会询问 A_machine_user 上的密码并将您连接到机器 A。

关于ssh - 使用谷歌 gcloud ssh 隧道进入网络内部的 linux 机器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58339624/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com