36546


現在以下のような構成で開発を行っています。(ドキュメントルートは/var/www/html/)

  * /var/www/ 
    * remote.git
    * html/ 
      * .git
      * index.php
      * style.css  

ローカル環境(PC側)から、「/var/www/remote.git」へpushし、「/var/www/html/」でpullすることでデプロイしています。

そこで質問なのですが、ドキュメントルート以下にローカルリポジトリ「.git」が存在している事で、第三者からcloneが実行されてしまうことなど、何か問題はありますでしょうか？

試しに[git clone http://○○.com/.git]のようにしましたが、エラーでcloneは正常に実行されませんでした。


CC BY-SA 3.0
2017-07-20T14:17:44.013
36544
2017-07-21T01:01:21.927
24511
question
git
ドキュメントルート以下のGitローカルリポジトリの安全性について


UNIXにおいて`.`で始まるファイルは隠しファイルとして扱う風習があります。Webサーバーはこの風習を受けて、外部からのアクセスを禁止しているものもあります。（大多数？）

ですので、gitではなくWebサーバーの設定を確認してください。アクセスが禁止されていれば安全と考えて問題ないでしょう。


CC BY-SA 3.0
2017-07-20T22:55:45.743
36545
2017-07-20T22:55:45.743
4236
36544
answer


直接cloneなどの操作はできないはずですが、個々のファイルとしてダウンロード出来る状態にはなるので、HTTPサーバ側で制限してください。デフォルトでは制限されないので、apacheであれば

[code]

    <Location "/.git">
        Require all denied
    </Location>
    
[/code]

nginxであれば

[code]

    location /.git {
        deny all;
    }
    
[/code]

こんな感じです。(試してないので必ず動作を確認してください)


CC BY-SA 3.0
2017-07-20T23:43:43.683
36546
2017-07-21T01:01:21.927
2017-07-21T01:01:21.927
19110
5793
36544
answer