Http服務(wù)訪問(wèn)控制與構(gòu)建Web虛擬主機(jī)

一. Httpd服務(wù)的訪問(wèn)控制

實(shí)驗(yàn)環(huán)境:一臺(tái)centos6.5+rhl.5.5+2003server

client客戶機(jī)兩塊網(wǎng)卡:eth0 ip 192.168.1.1 eth1 ip 192.168.1.10

在配置第二塊網(wǎng)卡的時(shí)候,把eth0的配置文件cp一個(gè)副本并改名eth1 進(jìn)入配置正常配置
Chmod +x /etc/sysconfig/network-scripts/ifcfg-eth1 重新激活網(wǎng)卡

紅帽:ip192.168.1.6

2003server:ip 192.168.1.3

1.)客戶機(jī)地址限制

httpd服務(wù)通過(guò)Order、Allow from、Deny from配置項(xiàng)實(shí)現(xiàn)客戶機(jī)地址訪問(wèn)控制

Vim /etc/sysconfig/network-scripts/ifcfg-eth0

IPADDR=192.168.1.1

NETMASK=255.255.255.0

Service network restart重啟網(wǎng)卡

vim /usr/local/httpd/conf/httpd.confApache主配置文件

配置httpd.conf的目錄區(qū)域

<Directory 目錄位置>.......</Directory>范圍內(nèi)

Order配置選項(xiàng)可以設(shè)置為‘a(chǎn)llow,deny’或‘deny,allow’以決定主機(jī)應(yīng)用“允許”和“拒絕”策略的先后順序

限制策略的格式如

Deny from address1 address2 ...

Allow from address1 address2 ...

Order allow,deny

Allow from all

下面是具體目錄區(qū)域配置:

<Directory “/usr/local/awstats/wwwroot”>

Options None

AllowOverride None

Order allow,deny

allow from 192.168.1.6 (地址或網(wǎng)段)

</Directory>

<Directory “/usr/local/awstats/wwwroot”>

Options None

AllowOverride None

Order deny,allow

deny from 192.168.1.3 (地址或網(wǎng)段)

</Directory>

Service httpd restart

驗(yàn)證:

192.168.1.3.png

192.168.1.6可以訪問(wèn)awstats,192.168.1.3無(wú)權(quán)限訪

2.)用戶授權(quán)

使用用戶授權(quán)在這里需要使用htpasswd工具生成用戶和密碼認(rèn)證數(shù)據(jù)文件

httpd服務(wù)通過(guò)AuthName、AuthType、AuthUserfile、及require valid-user配置項(xiàng)實(shí)現(xiàn)目錄的用戶授權(quán)

cd /usr/local/httpd

bin/htpasswd –c /usr/local/httpd/conf/.pass_user_lite hehe(用戶名)

//根據(jù)提示設(shè)置密碼

/bin/htpasswd /usr/local/httpd/conf/.user_lite xixi(用戶名)
//第二次創(chuàng)建就不需要加 -c 第一次加-c是因?yàn)樾枰付ㄓ脩魯?shù)據(jù)文件的位置所以需要?jiǎng)?chuàng)建一個(gè)文件

cat /usr/local/httpd/conf/.user_lite確定用戶數(shù)據(jù)文件已創(chuàng)建

vim /usr/local/httpd/conf/httpd.conf

<Directory “/usr/local/awstats/wwwroot”>

Options None

AllowOverride None

Order allow,deny

allow from all

AuthName “hehe xixi” 定義受保護(hù)的領(lǐng)域名稱,該區(qū)域會(huì)在瀏覽器彈出認(rèn)證框中顯示出此內(nèi)容(在這里我寫的是我創(chuàng)建的用戶名,提醒自己的記憶,以免忘了?。。?/p>

AuthType Basic 認(rèn)證的類型,Basic表示基本認(rèn)證

AuthUserFile /usr/local/httpd/conf/.user_lite 這里填寫用于保存用戶賬號(hào),密碼的認(rèn)證文件路徑

require valid-user 合法有效用戶 若只授權(quán)給單個(gè)用戶,那么需要指定單個(gè)用戶如(hehe) 只有指定的用戶才認(rèn)證可以訪問(wèn)

</ Directory >

Service httpd restart 每次配置完就重啟一下服務(wù)
基本認(rèn)證登錄界面

基本認(rèn)證登錄界面.png

認(rèn)證失敗拒絕訪問(wèn)

認(rèn)證失敗拒絕訪問(wèn).png

二.構(gòu)建虛擬web主機(jī)

httpd服務(wù)支持三種類型的虛擬web主機(jī),分別是基于域名,基于IP地址、基于端口的虛擬主機(jī)

為了方便,此處我沒(méi)有安裝DNS ,因用到域名解析應(yīng)該要安裝DNS 所以現(xiàn)在測(cè)試機(jī)上添加hosts文件記錄代替

  • 先創(chuàng)建兩個(gè)不同網(wǎng)站的站點(diǎn)

mkdir /www/{benet,accp} -p

echo “welcome to benet server” > /www/benet/index.html

echo “welcome to accp server” > /www/accp/index.html

cat /www/benet/index.html

cat /www/accp/index.html

一)基于域名

vim /usr/local/httpd/conf/httpd.conf
滾動(dòng)到配置文件99%的地方(也可以使用查找關(guān)鍵詞跳轉(zhuǎn)到關(guān)鍵詞位置)

#Virtual hosts

Include conf/extra/httpd-vhosts.conf 去掉前面的#號(hào)調(diào)用這個(gè)配置文件資源

vim /usr/local/httpd/conf/extra/httpd-vhosts.conf 編輯剛才需要調(diào)用的文件

在文件26%的地方輸入

NameVirtualHost 192.168.1.1:80 虛擬主機(jī)地址+端口

區(qū)域目錄配置允許所有人訪問(wèn)咱們的網(wǎng)站index.html

<Directory "/www">

Order allow,deny

allow from all

</Directory>

在配置文件89%的地方

<VirtualHost 192.168.1.1:80>

DocumentRoot  "/www/benet"
ServerName  www.benet.com
ErrorLog "logs/benet.com-error_log"
 CustomLog "logs/benet.com-access_log" common

</VirtualHost>

<VirtualHost 192.168.1.1:80>

DocumentRoot  "/www/accp"
ServerName  www.accp.com
 ErrorLog  "logs/accp.com-error_log"
 CustomLog "logs/accp.com-access_log" common

</VirtualHost>

service httpd restart

2003客戶端驗(yàn)證:
http://www.benet.com/
http://www.accp.com/

基于域名.png

二)基于IP地址

vim /usr/local/httpd/conf/extra/httpd-vhosts.conf

NameVirtualHost 192.168.1.1:80

<Directory "/www">

Order allow,deny

allow from all

</Directory>

<VirtualHost 192.168.1.1:80>
DocumentRoot "/www/benet"

ServerName www.benet.com

ErrorLog "logs/benet.com-error_log"     CustomLog

"logs/benet.com-access_log" common
<VirtualHost>
<VirtualHost 192.168.2.1:80>
DocumentRoot  "/www/accp"
ServerName  www.accp.com
ErrorLog "logs/accp.com-error_log"     CustomLog
"logs/accp.com-access_log" common

<VirtualHost>

service httpd restart

客戶端驗(yàn)證:

http://192.168.1.1/

http://192.168.1.10/

基于IP.png

三)基于端口 http默認(rèn)端口80

vim /usr/local/httpd/conf/extra/httpd-vhosts.conf

listen 8080 監(jiān)聽端口

<Directory "/www">

Order allow,deny

allow from all

</Directory>

<VirtualHost 192.168.1.1:80>

DocumentRoot  "/www/benet"
ServerName  www.benet.com
ErrorLog "logs/benet.com-error_log"     CustomLog
"logs/benet.com-access_log" common

</VirtualHost>

<VirtualHost 192.168.1.1:8080>

DocumentRoot  "/www/accp"
ServerName  www.accp.com
ErrorLog "logs/accp.com-error_log"     CustomLog
"logs/accp.com-access_log" common

</VirtualHost>

service httpd restart

客戶端驗(yàn)證:

http://192.168.1.1:8080
http://192.168.1.1:80

基于端口.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容