Web網站服務(二)
httpd服務的訪問控制
httpd服務的訪問控制
作用:
*控制對網站資源的訪問
*為特定的網站目錄新增訪問授權
常用訪問控制方式:
*客戶機地址限制
*使用者授許可權制
使用者授許可權制
Apache提供了認證(Authentication)與授權(Authorization)機制,當使用者訪問使用此機制控制的目錄時,會提示使用者輸入使用者名稱和密碼,只有輸入正確的使用者名稱和密碼的主機才可以訪問該資源。
Apache的認證型別分為兩種:基本(Basic)認證和摘要認證(Digest)認證兩種。摘要認證比基本認證更加安全,然是並非所有瀏覽器都支援摘要認證,所以本節只針對基本認證進行介紹。基本認證的方式是:當Web瀏覽器請求經過認證模式保護的URL時,將會出現一個對話方塊,要求使用者輸入使用者名稱和口令。使用者輸入後,傳送給伺服器,Web伺服器驗證它的正確性。如果正確,則返回頁面;否則出現401錯誤。
1.建立使用者認證資料庫
[root@www ~]# cd /usr/local/httpd/
新建密碼資料檔案.awspwd,其中包含一個名為webadmin使用者資訊
[root@www httpd]# bin/htpasswd -c /usr/local/httpd/conf/.awspwd webadmin
New password:
Re-type new password:
Adding password for user webadmin
確認使用者資料庫檔案
[root@www httpd]# cat /usr/local/httpd/conf/.awspwd
webadmin:2tmD3LVFynBAE
在已有資料檔案中新增新使用者szt
[root@www ~]# htpasswd /usr/local/httpd/conf/.awspwd szt
2.新增使用者授權配置
[root@www ~]# vi /usr/local/httpd/conf/httpd.conf
226 <Directory “/usr/local/httpd/htdocs”>
251 #RequireAll
252 #Require all granted
253 # Require not ip 192.168.100.0/24 192.168.0.0/24
254 #/RequireAll
255
256 AuthName “xu yao mi ma”
257 AuthType Basic
258 AuthUserFile /usr/local/httpd/conf/.awspwd
259 Require valid-user
260
261 /Directory
註釋:
受保護的領域名稱,該內容在瀏覽器彈出的認證對話方塊中顯示。
256 AuthName “xu yao mi ma”
設定認證的型別(basic基本認證)
257 AuthType Basic
使用者認證賬號檔案
258 AuthUserFile /usr/local/httpd/conf/.awspwd
要求通過認證才能訪問
varlid-user 合法使用者,如果單個使用者可直接指定
259 Require valid-user
[root@www ~]# systemctl restart httpd
驗證使用者訪問授權
1.開啟win7客戶機使用瀏覽器訪問嘗試http://192.168.100.101
檢視是否需要使用者名稱和密碼來進行訪問
2. linux-2 客戶機 192.168.100.102
[root@ns2 ~]# curl http://192.168.100.101
訪問失敗
擴充套件:混合模式設定
注意:主機訪問控制 > 使用者訪問授權
設定了兩種混合模式時。主機訪控中允許的主機可以直接訪問網站,不需要使用者授權;主機訪控禁止的主機在需要使用者授權才能訪問網站
練習:
主機訪問控制:允許192.168.100.102訪問
使用者授權:要求合法使用者訪問
[root@www ~]# vi /usr/local/httpd/conf/httpd.conf
226 <Directory “/usr/local/httpd/htdocs”>
RequireAll
Require all granted
Require ip 192.168.10.2
/RequireAll
AuthName “xu yao mi ma”
AuthType Basic
AuthUserFile /usr/local/httpd/conf/.awspwd
Require valid-user
[root@www ~]# systemctl restart httpd
驗證:
1.win7客戶機 192.168.100.101
需要使用者授權訪問
2. linux-2 192.168.100.102
直接可以訪問
構建虛擬web主機
1.虛擬Web主機
在同一臺伺服器中執行多個Web站點,其中每一個站點並不獨立佔用一臺真正的計算機
2.httpd支援的虛擬主機型別
基於域名的虛擬主機
基於IP地址的虛擬主機
基於埠的虛擬主機
構建虛擬主機——基於域名
1.應用示例:
*構建2個虛擬Web站點:
www.benet.com,IP地址為 192.168.100.101
www.accp.com,IP地址為 192.168.100.101
在瀏覽器中訪問這兩個域名時,分別顯示不同的內容
1.為虛擬主機提供域名解析(有dns環境)
[root@dnssvr ~]# vi /var/named/chroot/etc/named.conf
zone “benet.com” IN {
type master;
file “benet.com.zone”;
};
zone “accp.com” IN {
type master;
file “accp.com.zone”;
};
課本有錯誤(benet.com後面不能有".")
cd /var/named
cp -a named.localhost benet.com.zone
cp -a named.localhost accp.com.zone
ls -ld benet.com.zone accp.com.zone
[root@dnssvr ~]# vi /var/named/chroot/var/named/benet.com.zone
@ IN SOA benet.com. admin.benet.com. (
@ IN NS dnssvr.benet.com.
dnssvr IN A 173.17.17.2
www IN A 192.168.100.101
[root@dnssvr ~]# vi /var/named/chroot/var/named/accp.com.zone
@ IN SOA accp.com. admin.accp.com. (
@ IN NS dnssvr.benet.com.
www IN A 192.168.100.101
為虛擬主機準備網頁文件
[root@www ~]# mkdir -p /var/www/html/benetcom
[root@www ~]# mkdir -p /var/www/html/accpcom
[root@www ~]# echo “www.benet.com” >/var/www/html/benetcom/index.html
[root@www ~]# echo “www.accp.com” > /var/www/html/accpcom/index.html
新增虛擬主機配置
配置獨立的虛擬主機配置檔案,然後在主檔案裡面載入即可,方便配置內容的維護
[root@www ~]# vim /usr/local/httpd/conf/extra/vhosts.conf
<VirtualHost *:80>
ServerName www.benet.com
DocumentRoot /var/www/html/benetcom
ErrorLog logs/www.benet.com.error_log
CustomLog logs/www.benet.com.access_log common
<Directory “/var/www/html”>
Require all granted
/Directory
/VirtualHost
<VirtualHost *:80>
ServerName www.accp.com
DocumentRoot /var/www/html/accpcom
ErrorLog logs/www.accp.com.error_log
CustomLog logs/www.accp.com.access_log common
<Directory “/var/www/html”>
Require all granted
/Directory
/VirtualHost
配置選項:
1.虛擬主機區域VirtualHost
2.目錄許可權Directory
繼承其父目錄 的授權許可即可
主檔案裡面載入
[root@www ~]# vim /usr/local/httpd/conf/httpd.conf
485 # Virtual hosts
486 #Include conf/extra/httpd-vhosts.conf
新增此選項–載入獨立的配置檔案
487 Include conf/extra/vhosts.conf
[root@www ~]# /usr/local/httpd/bin/apachectl restart
4.在客戶機分別訪問虛擬Web主機
實驗環境中沒有配置dns,可以的hosts檔案中配置主機ip對映
4.1 win7 客戶機
c:\windows\system32\drivers\etc\hosts
4.2 linux主機
/etc/hosts
構建虛擬主機——基於IP
應用示例:
1,構建2個虛擬Web站點:
www.benet.com,IP地址為 192.168.100.101
www.accp.com,IP地址為 192.168.100.102
[root@www ~]# ifconfig ens33:0 192.168.100.102
[root@www ~]# vim /usr/local/httpd/conf/extra/vhosts.conf
<VirtualHost 192.168.100.101:80>
ServerName www.benet.com
DocumentRoot /var/www/html/benetcom
ErrorLog logs/www.benet.com.error_log
CustomLog logs/www.benet.com.access_log common
<Directory “/var/www/html”>
Require all granted
/Directory
/VirtualHost
<VirtualHost 192.168.100.102:80>
ServerName www.accp.com
DocumentRoot /var/www/html/accpcom
ErrorLog logs/www.accp.com.error_log
CustomLog logs/www.accp.com.access_log common
<Directory “/var/www/html”>
Require all granted
/Directory
/VirtualHost
[root@www ~]# systemctl restart httpd
2.在瀏覽器中訪問這兩個IP時,分別顯示不同的內容
http://192.168.100.101
http://192.168.100.102
相關文章
- 網站服務架構網站架構
- 用Apache服務部署網站Apache網站
- 以指線上,IT服務外包業務網站網站
- 網站安全服務公司能做哪些業務網站
- 網站重構-後臺服務篇網站
- Nginx網站服務與LNMP構建Nginx網站LNMP
- Nginx網站服務LNMP搭建論壇Nginx網站LNMP
- 使用ASP.NET web API建立REST服務(二)ASP.NETWebAPIREST
- 網路拓撲—WEB-IIS服務搭建Web
- 靜態網站託管服務平臺網站
- 怎樣監測微型的網站服務網站
- 看雪網站滲透測試服務網站
- 物流服務網站搭建,從定製到開發一體化服務網站
- 搭建 Restful Web 服務RESTWeb
- Linux web服務LinuxWeb
- web服務能否實現網頁的重定向?Web網頁
- 企業網站代運營服務內容網站
- 大型網站為何要打造分散式服務網站分散式
- 透過C#重啟iis網站服務C#網站
- Nginx服務系列——靜態資源web服務NginxWeb
- 保障Web服務的安全Web
- PHP開發Web服務PHPWeb
- 構建Web API服務WebAPI
- Cloudflare DNS 服務中斷,大量網站和服務無法訪問CloudDNS網站
- docsify + Gitee Pages服務搭建開源專案網站Gitee網站
- 中小網站如何對付拒絕服務攻擊網站
- OPA:3/4的美國網站提供原生廣告服務網站
- 網站使用CDN加速服務,再也不用擔心網站開啟速度慢了!網站
- go微服務系列(二) - 服務註冊/服務發現Go微服務
- 當前網站建設制勝之道:網站定位與服務網站
- 網站安全服務公司如何開展安全防護工作網站
- 基於雲服務的個人網站架構設計網站架構
- 錢包網站安全漏洞測試服務詳情網站
- Docker構建服務之部署和備份Jekyll網站Docker網站
- 企業網站如何做滲透測試服務網站
- 網站滲透測試服務之人工安全防護網站
- 阿里雲提供哪些建站服務,如何搭建公司網站?阿里網站
- 企業網站安全滲透測試服務範圍網站