新聞中心
在一臺centos 7上搭建apache網(wǎng)站后,一般都是允許所有人訪問的,那么可能會有一些特殊情況,需要對訪問網(wǎng)站的人進(jìn)行限制,出于這種情況,Apache可以通過Require配置項(xiàng),來對客戶端進(jìn)行一些訪問限制,可以基于IP地址、網(wǎng)段、主機(jī)名或域名。使用名稱“all”時(shí)表示任意地址。

思茅網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站設(shè)計(jì)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。成都創(chuàng)新互聯(lián)公司從2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
1、客戶機(jī)地址限制:
限制策略的常用格式有下面幾種:
- Require all granted:表示允許所有主機(jī)訪問(也是默認(rèn)的);
- Require all denied:表示拒絕所有主機(jī)訪問;
- Require local:表示僅允許本地主機(jī)訪問;
- Require [not] host <主機(jī)名或域名列表>:表示僅允許或拒絕指定主機(jī)或域名訪問;
- Require [not] ip <地址或網(wǎng)段列表>:表示僅允許或拒絕指定IP地址或網(wǎng)段訪問;
定義限制策略時(shí),多個(gè)不帶not的require配置語句之間是或的關(guān)系,就是滿足任意一條require配置語句就可以訪問;
若即有不帶not的require配置語句,又出現(xiàn)了帶not的require配置語句,則語句之間是與的關(guān)系,即同時(shí)滿足所有require配置語句才可訪問。
來吧,舉個(gè)栗子(只要更改了服務(wù)的配置文件,必須重啟服務(wù),才可生效):
做一個(gè)策略,僅允許ip地址為192.168.1.2的主機(jī)能夠訪問/usr/local/httpd/htdocs網(wǎng)頁目錄下的內(nèi)容,則策略如下(進(jìn)入網(wǎng)站主配置文件httpd.conf后,在末行模式下輸入:/Directory,按n查找到相應(yīng)的位置):
................ #省略部分內(nèi)容
Require ip 192.168.1.2 #僅允許192.168.1.2的主機(jī)訪問網(wǎng)站服務(wù)
OK了,現(xiàn)在只有上面這個(gè)1.2的ip地址可以訪問該網(wǎng)站了。
那么,現(xiàn)在換一個(gè)策略,禁止192.168.1.0網(wǎng)段的主機(jī)不能訪問網(wǎng)站,但是別的網(wǎng)段的主機(jī)都可訪問,策略如下:
................ #省略部分內(nèi)容
Require all granted #允許所有主機(jī)訪問
Require not ip 192.168.1.0/24 #但1.0網(wǎng)段不可訪問
在上面的配置中,需要注意的是只有訪問規(guī)則中出現(xiàn)了not語句,那么必須把規(guī)則放在
2、用戶授權(quán)限制:
基于用戶的訪問控制包含認(rèn)證和授權(quán)兩個(gè)過程,httpd服務(wù)器支持使用摘要認(rèn)證(Digest)和基本認(rèn)證(Basic)兩種方式。使用摘要認(rèn)證的話需要在編譯http之前添加“--enable-auth-digest”選項(xiàng),但并不是所有的瀏覽器都支持摘要認(rèn)證,所以不推薦使用;而基本認(rèn)證是httpd服務(wù)的基本功能,不需要預(yù)先配置特別的選項(xiàng)。
這里就寫一下基本認(rèn)證方式吧
1、創(chuàng)建用戶認(rèn)證數(shù)據(jù)文件:
[root@localhost httpd]# cd /usr/local/httpd/ #切換至網(wǎng)站安裝根目錄
[root@localhost httpd]# bin/htpasswd -c /usr/local/httpd/conf/.aaa webadmin #使用
htpasswd工具創(chuàng)建用戶,該用戶與系統(tǒng)用戶無關(guān),.aaa文件以.開頭,表示為隱藏目錄,該
目錄默認(rèn)不存在,所以要加-c選項(xiàng),在以后需要添加用戶時(shí),不能加-c選項(xiàng),
否則會覆蓋原來的內(nèi)容
New password: #輸入密碼
Re-type new password: #確認(rèn)密碼
Adding password for user webadmin #提示添加成功
可以確認(rèn)用戶是否添加:
[root@localhost httpd]# cat conf/.aaa
webadmin:$apr1$YCIyEmlx$R57m0/9Tc/SbZLsLiAGev/ #用戶webadmin的信息
2、添加用戶授權(quán)配置:
[root@localhost httpd]# vim /usr/local/httpd/conf/httpd.conf #編輯網(wǎng)站主配置文件
.............
authname "bbb" #定義受保護(hù)的領(lǐng)域名稱
authtype basic #設(shè)置認(rèn)證類型,basic表示基本認(rèn)證
authuserfile /usr/local/httpd/conf/.aaa #設(shè)置用于保存用戶賬號、密碼的認(rèn)證文件路徑
require valid-user #要求只有認(rèn)證文件中的合法用戶才可訪問。
其中valid-user表示所有合法用戶,若只授權(quán)給單個(gè)用戶,可改為指定的用戶名,
如webadmin。
需要注意的是,用戶訪問授權(quán)與主機(jī)訪問控制同時(shí)設(shè)置時(shí),設(shè)置的主機(jī)訪問控制優(yōu)先生效。所以在進(jìn)行用戶授權(quán)限制時(shí),需要刪除掉其中的require語句。要不然,用戶訪問授權(quán)不會生效。
本文標(biāo)題:CentOS7安裝部署Apache網(wǎng)站后配置詳解
當(dāng)前地址:http://www.5511xx.com/article/dphjjec.html


咨詢
建站咨詢
