【问题标题】:Force bitbucket git commands to go through VirtualBox VM强制 bitbucket git 命令通过 VirtualBox VM
【发布时间】:2021-03-02 15:37:37
【问题描述】:

我正在尝试找到一种方法来强制 git 命令通过 VM。

目前我有一台 Windows 10 机器,它没有管理员权限(公司受限),并且我有 virtualbox,它将 Linux Mint 作为 VM 运行。

当前端口 22 在我们的网络上被阻止,Windows 无法通过 SSH 执行 git 命令。我什至尝试使用 SSH 配置文件转发 SSH 以使用端口 443 而不是 22,但他们也阻止了。

有趣的是,当我在 VM 上执行 git 命令时,它运行良好,并且看起来好像没有被阻止。

我想要实现的是以某种方式使我在 Windows (Git Bash) 中执行的所有 git 命令通过 VM,然后通过 VM 到 Bitbucket。

我希望这是有道理的。因此,我想将所有流量从 Windows 转发到 bitbucket,然后转到位于同一设备上的 VirtualBox 上并具有静态内部 IP 的 Linux Mint VM,然后 VM 会将其转发到它应该去的地方,即 Bitbucket。

想象一下执行以下 git 命令: git clone git@bitbucket.org:xxxx/yyyy.git

请问有人知道如何实现吗?

提前谢谢你们。

【问题讨论】:

  • 听起来您想通过使用虚拟机作为代理(允许端口转发)并设置 Windows SSH 以通过它进行隧道传输(例如,使用 ProxyJump 配置选项)。我假设你有能力从你的主机连接到虚拟机。

标签: git ssh bitbucket port portforwarding


【解决方案1】:

我想要实现的是以某种方式使我在 Windows (Git Bash) 中执行的所有 git 命令通过 VM,然后通过 VM 到 Bitbucket。

这正是我工作过的每家大公司都不允许在 Windows PC 上使用 VM 的原因:您可以绕过 IT 施加的限制。

我从未见过允许传出请求使用端口 22。我一直使用 HTTPS 进行外部 Git 存储库操作。

您或许可以通过forced command (like gitolite does) 配置您的 SSH,以便运行以下脚本:

  • 拦截你的 git 命令
  • 更新共享文件夹(在虚拟机和主机之间共享)中匹配的位桶

但首先要确保您没有规避 IT 安全政策,否则迟早会赶上您。

【讨论】:

    猜你喜欢
    • 2016-09-17
    • 2016-01-23
    • 2015-12-16
    • 2012-08-17
    • 2017-06-12
    • 2015-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多