2013-06-24 71 views
0

假設有一個網站www.example.com/user/john。訪問該鏈接將帶您到www.example.com/user/john/index.html查找網站目錄中的文件

有像www.example.com/user/john/picture.pngwww.example.com/user/john/document.html這樣的文件。這些也是公衆可以訪問的,但從index.html沒有鏈接。

有沒有一個系統的方法來找出這些文件?我問,因爲我要建立我的網站,我也想提出一些我不一定希望每個人都能看到的文件,只有我給鏈接的人。所以我想知道這些文件存在於我的目錄中是多麼容易/很難。

+0

如果沒有任何地方引用這些文件,那麼有人將不得不猜測文件名。當然,如果名稱有一個模式,這很容易。通常這被稱爲「通過默默無聞的安全」。它實際上並未阻止對這些文件的未經授權的訪問,它只是要求有人需要首先知道文件在那裏。 – David

回答

1

最重要的是,您必須關閉使用瀏覽器瀏覽目錄的可能性。每臺服務器都有自己的方式來關閉它。然後你可以使用建議的「通過默默無聞的安全」方式。

另一種方式可以是讓某個特定文件夾的訪問受到http基本身份驗證的限制。這可以在.htaccess文件中進行配置,該文件放在目錄的根文件夾中,並且只與特定人員共享。

只是谷歌「.htacces」和「基本認證」。

1

HTTP不提供這樣的目錄列表方法。如果索引文件(如index.html)不存在,大多數Web服務器都可以設置爲提供HTML格式的目錄列表。如果您提供了一個索引文件,以免發生自動索引(或者如果您通過Web服務器配置禁用了自動索引),那麼如果您的「隱藏」文件名很難猜出,它們應該很難找到。我有時會在一個隨機亂碼名稱的目錄中發佈這樣的文件。

Dropbox,Picasa和其他服務所使用的「共享鏈接」功能相同,只是在URL中使用較長的隨機文件/目錄名稱或隨機參數。

爲了提供真正的安全性,您需要設置https(SSL/TLS),以便網絡上的任何竊聽者都無法輕鬆查看請求的URL以及使用用戶名/密碼進行HTTP身份驗證等身份驗證。對於不太敏感的東西,http到一個隨機隱藏的目錄通常會很好。