• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

Nginx 與 Apache 網頁伺服器避免 .git 目錄暴露設定教學與範例

介紹如何設定 Nginx 與 Apache 網頁伺服器,避免 .git 版本控制目錄暴露在網路上。


現在許多的網頁程式原始碼都會以 git 來管理,而通常所有的 git 相關檔案都存放在原始碼目錄的 .git 子目錄之下,正常來說這個目錄只有內部開發時使用,布署至正式伺服器時應該要排除該目錄,但是許多人還是會不小心連同這個目錄一起布署進去,造成內部的程式碼外洩。

為了防止不小心外洩 .git 目錄中的資料,我們可以直接在 Nginx 或 Apache 網頁伺服器中直接設定排除 .git 目錄,以下是設定的方法。

Nginx 網頁伺服器

在 Nginx 網頁伺服器中若要避免 .git 目錄暴露在網路上,可以在設定檔裡面 server 區段的開頭加入以下設定:

# 避免暴露 .git 目錄
location ~ /.git/ {
      deny all;
}

或是直接將所有以句點開頭的隱藏檔案與目錄全部都擋掉:

# 避免暴露所有隱藏檔案與目錄
location ~ /\. {
  deny all;
}

Apache 網頁伺服器

在 Apache 2.4 版中若要避免 .git 目錄暴露在網路上,可以在設定檔(通常是 httpd.conf)中加入以下設定:

# 避免暴露 .git 目錄(Apache 2.4)
<DirectoryMatch "^/.*/\.git/">
    Require all denied
</DirectoryMatch>

若是 Apache 2.2 版,則改用以下設定:

# 避免暴露 .git 目錄(Apache 2.2)
<DirectoryMatch "^/.*/\.git/">
    Order deny,allow
    Deny from all
</DirectoryMatch>

若在 .htaccess 設定檔中則可使用以下設定:

# 避免暴露 .git 目錄(.htaccess)
RedirectMatch 404 /\.git

參考資料:Internetwache.org

分類:Linux 標籤:資訊安全

讀者互動方式

發佈留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

主要資訊欄

搜尋

近期文章

  • C++ 語言使用 Crypto++ 實作 RSA 數位簽章教學與範例
  • C++ 語言使用 Crypto++ 實作 RSA-OAEP 搭配 SHA256 加密教學與範例
  • C++ 語言使用 Crypto++ 實作 AES 加密、解密、認證加密教學與範例
  • C++ 語言使用 Crypto++ 實作 MD5、SHA1、SHA2、BLAKE2 雜湊教學與範例
  • Ubuntu Linux 安裝、使用 Crypto++ 加密函式庫教學與範例
  • C 語言使用 OpenSSL 實作橢圓曲線 ECDH 金鑰交換教學與範例
  • Python 以 eciespy 實作 ECC 非對稱式加密方法教學與範例
  • C 語言使用 OpenSSL 實作 PBKDF2 教學與範例

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

公益

  • 家扶基金會
  • 台灣世界展望會
  • Yahoo 奇摩公益
  • igiving 公益網
  • 兒福聯盟

Copyright © 2021 · Office Guide