Apache服務器的安全性及實現(3)_Windows教程
Apache Server默認情況下的安全配置是拒絕一切訪問。假定Apache Server內容存放在/usr/local/apache/share 目錄下,下面的指令將實現這種設置:
<Directory /usr/local/apache/share>
Deny from all
AllowOverride None
</Directory>
則禁止在任一目錄下改變認證和訪問控制方法。
同樣,可以用特有的命令Deny、Allow指定某些用戶可以訪問,哪些用戶不能訪問,提供一定的靈活性。當Deny、Allow一起用時,用命令Order決定Deny和Allow合用的順序。
1、拒絕某類地址的用戶對服務器的訪問權(Deny)
如:Deny from all
Deny from test.cnn.com
Deny from 204.168.190.13
Deny from 10.10.10.0/255.255.0.0
2、允許某類地址的用戶對服務器的訪問權(Allow)
如:Allow from all
Allow from test.cnn.com
Allow from 204.168.190.13
Allow from 10.10.10.0/255.255.0.0
Deny和Allow指令后可以輸入多個變量。
3、實例:
Order Allow, Deny
Allow from all
Deny from www.***.com
則,想讓所有的人訪問Apache服務器,但不希望來自www.***.com的任何訪問。
Order Deny, Allow
Deny from all
Allow from test.cnn.com
則,不想讓所有人訪問,但希望給test.cnn.com網站的來訪。
有關訪問控制的高級設置請閱讀UNIX系統管理書籍。
五、Apache Sever的用戶認證與授權
概括的講,用戶認證就是驗證用戶的身份的真實性,如用戶帳號是否在數據庫中,及用戶帳號所對應的密碼是否正確;用戶授權表示檢驗有效用戶是否被許可訪問特定的資源。在Apache中,幾乎所有的安全模塊實際上兼顧這兩個方面。從安全的角度來看,用戶的認證和授權相當于選擇性訪問控制。
建立用戶的認證授權需要三個步驟:
(1)建立用戶庫
用戶名和口令列表需要存在于文件(mod_auth模塊)或數據庫(mod_auth_dbm模塊)中。基于安全的原因,該文件不能存放在文擋的根目錄下。如,存放在/usr/local/etc/httpd下的users文件,其格式與UNIX口令文件格式相似,但口令是以加密的形式存放的。應用程序htpasswd可以用來添加或更改程序:
htpasswd –c /usr/local/etc/httpd/users martin
-c表明添加新用戶,martin為新添加的用戶名,在程序執行過程中,兩次輸入口令回答。用戶名和口令添加到users文件中。產生的用戶文件有如下的形式:
martin:WrU808BHQai36
jane:iABCQFQs40E8M
art:FadHN3W753sSU
第一域是用戶名,第二個域是用戶密碼。
- 相關鏈接:
- 教程說明:
Windows教程-Apache服務器的安全性及實現(3)。