Ubuntu
Ubuntu 14 伺服器 - 在下載文件之前設置使用者名密碼提示
我設置了一個 Ubuntu 14 伺服器(我正在使用 LAMP Stack),它目前正在託管我製作的網站。我已經在那裡上傳了一個 zip 文件,任何知道連結的人都可以去下載它。但是,這可能很快就會出現問題。假設文件可以轉到如下路徑:
homepage.com/src/file1.zip
任何有足夠好奇心的人都可以繼續輸入
homepage.com/src/
並查看整個目錄並開始下載他們可能在那裡看到的其他文件。它也不會阻止他們嘗試訪問其他文件夾homepage.com/source/
,例如嘗試找出文件夾。為了防止這種情況,我的想法是為我的文件夾/文件創建一個“AuthFile”,這樣當任何人偶然發現它時,他們必須輸入正確的使用者名密碼才能下載它。這類似於本教程中所示的保護 phpMyAdmin 頁面,並會導致以下提示:
但是,在創建 AuthFiles 時,我認為我不能將其應用於文件夾或文件。因此,把我帶到我的主要問題:
如何在下載文件之前提示使用者輸入使用者名密碼組合?
如果這不是一種選擇,那麼你們如何管理控制誰可以在伺服器上下載某些文件並確保沒有人能夠直接訪問您的文件?
非常感謝任何幫助和指導。
你想要的在 apache 中被稱為 .htaccess 。
有關詳細資訊,請參閱Apache 文件。
基本上,.htaccess 允許在文件夾級別更改 Apache 的配置。您只需在文件夾中放置一個名為 .htaccess 的文件,然後對其進行編輯。對於基本身份驗證,您首先需要創建一個憑證文件:
sudo htpasswd -c /etc/apache2/.htpasswd username
然後你可以在你想要保護的文件夾中放置一個名為 .htaccess 的文件,內容如下:
AuthType Basic AuthName "Protected" AuthUserFile /etc/apache2/.htpasswd Require valid-user
.htpasswd 的路徑可以自由選擇,但請注意將其放入公眾無法訪問的文件夾中。