git - 使用 git 作为部署实用程序时的安全问题

标签 git security deployment

git是一个非常强大的工具,但不是那么容易使用

例如,我很高兴使用 git 作为工具从我的 git 存储库更新我的远程站点。问题是我的网站根目录有一个 .git 目录,外部用户可以简单地使用 site/.git 访问它,这很糟糕,因为他们可以轻松获取我的代码历史记录,基本上是当前代码,他们甚至可以从配置文件中获取密码和隐私信息。

那么什么才是正确的git使用方式,既能充分利用git,又不会引入这些威胁呢?

使用git clone git://repo site_root初始化网站,使用git pull获取更改非常方便,但也带来了巨大的安全问题。

是否有任何方法可以像上面所示的步骤一样方便,但没有安全隐患?

最佳答案

Apache 至少默认其配置为禁止 Web 访问任何以 . 开头的文件,并且这也可以在任何其他 Web 服务器中完成。

此外,最好将敏感文件保留在网络根目录之外,即:

.git/
config.file
public/
public/index.html

并将网站的文档根目录设置为 public/ 目录。

关于git - 使用 git 作为部署实用程序时的安全问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9281261/

相关文章:

具有不受信任完整性级别的 Windows 进程

security - 仅用于代理(ssh-D)访问的登录shell?

c# - 如何将编译后的代码同步到多个 EC2 实例

python - 部署 Scrapy 时出现 404 错误

JavaEE : Need better deployment system

ruby-on-rails - 如何将带有 key 的 json 文件上传到 Heroku

Git 比较提交的标准,为什么要包括提交者?

git - 我必须在 merge 每个文件后退出我的 Git diff 工具吗?

git - 致命的 : This operation must be run in a work tree

android - 如果私钥被盗,我使用 3rd 方 API 的移动应用程序会做什么?