即使 Fabric 不支持,生产 Web 服务器是否应该在 Django 应用程序中使用 SSH 网关主机?

即使 Fabric 不支持,生产 Web 服务器是否应该在 Django 应用程序中使用 SSH 网关主机?

我的公司管理着大量服务器,这些服务器分布在多个服务器上。按照惯例,我们的生产服务器仅允许从少数网关主机进行 SSH 访问。这些 Web 服务器中的大多数运行 PHP 项目,这些项目使用在一台主网关主机上运行的基于 rsync 的部署脚本。

也就是说,我们正在使用 Django 构建几个大型应用程序,并希望使用 Fabric 来管理部署。Fabric尚不支持 SSH 隧道但它似乎在他们的路线图中

我的选择似乎是:

  1. 抛弃我们的网关主机规则,转而遵循 Django 部署最佳实践。
  2. 在 bash 中滚动我自己的 Django 部署脚本,将其安装在我们的网关主机上,并从本地 Fabric 触发它。

也许我在这里问了错误的问题,Fabric 不是正确的选择,但它感觉真的很自然,如果可能的话我愿意使用它。

答案1

Fabric 不需要支持 SSH 隧道;它只需要一点 SSH 配置(ProxyCommandftw)就可以了。当然,SSH 堡垒主机无论如何都是一个相当愚蠢的想法;它们就像是为那些害怕 IP 路由的人提供的 VPN。

相关内容