python做網(wǎng)站入門(mén)武漢網(wǎng)站制作推廣
🏡作者主頁(yè):點(diǎn)擊!?
👨?💻Linux高級(jí)管理專(zhuān)欄:點(diǎn)擊!
??創(chuàng)作時(shí)間:2024年6月3日11點(diǎn)44分
🀄?文章質(zhì)量:95分
為了更好地控制對(duì)網(wǎng)站資源的訪(fǎng)問(wèn),可以為特定的網(wǎng)站目錄添加訪(fǎng)問(wèn)授權(quán)。本節(jié)將分別介紹客戶(hù)機(jī)地址限制和用戶(hù)授權(quán)限制,這兩種訪(fǎng)問(wèn)方式都應(yīng)用于httpd.conf 配置文件中的目錄區(qū)域范圍內(nèi)。
🫸1.客戶(hù)機(jī)地址限制
通過(guò)Require配置項(xiàng),可以根據(jù)主機(jī)的主機(jī)名或IP地址來(lái)決定是否允許客戶(hù)端訪(fǎng)問(wèn),在httpd服務(wù)器的主配置文件的<Location>,<Directory>,<Fires>,<Limit>配置段中均可以試用Reuire配置項(xiàng)來(lái)控制客戶(hù)端的訪(fǎng)問(wèn)。試用Require配置,需要設(shè)置客戶(hù)端地址以構(gòu)成完整的限制策略,地址的形式可以是用IP地址,網(wǎng)絡(luò)地址,主機(jī)名或域名,使用名稱(chēng)all 時(shí)候表示任意地址。
限制策略的常用格式:
Require all granted? ? ? ? 表示允許所有主機(jī)訪(fǎng)問(wèn)
Require all denied? ? ? ? 表示拒絕所有主機(jī)訪(fǎng)問(wèn)
Require local? ? ? ? ? ? ? ? ?表示僅允許本地主機(jī)訪(fǎng)問(wèn)
Require [not] host <主機(jī)名或域名列表>:? ? ? ? 表示允許或拒絕指定主機(jī)或域訪(fǎng)問(wèn)
Require [not] ip<ip地址或網(wǎng)段列表>:? ? ? ? 表示允許或拒絕指定IP地址或網(wǎng)段訪(fǎng)問(wèn)
默認(rèn)情況下httpd的訪(fǎng)問(wèn)全是是對(duì)所有客戶(hù)機(jī)全開(kāi)的
編輯主配置文件
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
??允許訪(fǎng)問(wèn)限制
限制
基于IP地址限制,只允許192.168.93.112 主機(jī)訪(fǎng)問(wèn)
重啟服務(wù)
該指令將限制對(duì)當(dāng)前上下文(例如整個(gè)服務(wù)器或特定網(wǎng)站)的訪(fǎng)問(wèn),僅允許來(lái)自指定 IP 地址的請(qǐng)求。
Apache 重新啟動(dòng)后,對(duì) Web 服務(wù)器的訪(fǎng)問(wèn)將被限制為僅允許來(lái)自 IP 地址 192.168.93.112
的請(qǐng)求。來(lái)自任何其他 IP 地址的請(qǐng)求都將被拒絕。
測(cè)試
192.168.93.112
192.168.93.113
訪(fǎng)問(wèn)出現(xiàn)403的情況
??禁止IP訪(fǎng)問(wèn)
禁止192.168.93.112 訪(fǎng)問(wèn) 其余所有都可以訪(fǎng)問(wèn)
限制
編輯配置文件
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
systemctl restart httpd
重啟Httpd服務(wù)
Require all granted
:該行默認(rèn)允許任何IP地址訪(fǎng)問(wèn)。Require not ip 192.168.93.112
:此行專(zhuān)門(mén)拒絕對(duì) IP 地址 192.168.93.112 的訪(fǎng)問(wèn)。
測(cè)試
192.168.93.112 無(wú)法訪(fǎng)問(wèn)因?yàn)槲覀?設(shè)置了拒絕的流量
報(bào)錯(cuò)403無(wú)法訪(fǎng)問(wèn)
192.168.93.113訪(fǎng)問(wèn)是可以的 因?yàn)槲覀儧](méi)有拒絕它訪(fǎng)問(wèn)httpd
🫷2.用戶(hù)授權(quán)限制
Apache HTTP Server (httpd) 中的用戶(hù)授權(quán)限制涉及控制誰(shuí)可以訪(fǎng)問(wèn) Web 服務(wù)器上的特定資源。這對(duì)于維護(hù)安全性并確保只有授權(quán)用戶(hù)才能訪(fǎng)問(wèn)敏感數(shù)據(jù)或功能至關(guān)重要。
🕉?創(chuàng)建用戶(hù)密碼
htpasswd -c /etc/httpd/conf/.awspwd smqnz
將在 /etc/httpd/conf/
目錄中創(chuàng)建一個(gè)名為 .awspwd
(隱藏文件)的新密碼文件,并使用哈希密碼添加名為 smqnz
的用戶(hù)。 以下是該命令的詳細(xì)說(shuō)明:
htpasswd
:這是一個(gè)實(shí)用程序,用于管理 Apache HTTP 身份驗(yàn)證的密碼文件。-c
:此選項(xiàng)告訴htpasswd
創(chuàng)建一個(gè)新的密碼文件(如果它不存在)。/etc/httpd/conf/.awspwd
:指定新密碼文件的路徑和文件名。請(qǐng)注意,文件名以點(diǎn) (.) 開(kāi)頭,使其成為目錄中的隱藏文件。smqnz
:這是密碼文件中新條目的用戶(hù)名。- 需要注意的是 如果你在創(chuàng)建用戶(hù)的時(shí)候 不需要-c 選項(xiàng)
編輯配置文件
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf AuthName "smqnz"AUthType BasicAuthUserFile /etc/httpd/conf/.awspwdRequire valid-user
AuthName "smqnz"
: 設(shè)置認(rèn)證提示的名稱(chēng)。當(dāng)用戶(hù)嘗試訪(fǎng)問(wèn)受保護(hù)的資源時(shí),瀏覽器會(huì)顯示這個(gè)名稱(chēng),提示用戶(hù)輸入用戶(hù)名和密碼。
AuthType Basic
: 指定基本認(rèn)證方式。基本認(rèn)證要求用戶(hù)提供用戶(hù)名和密碼進(jìn)行訪(fǎng)問(wèn)。
AuthUserFile /etc/httpd/conf/.awspwd
: 指定存儲(chǔ)用戶(hù)名和密碼的文件路徑。這個(gè)文件需要使用htpasswd
工具來(lái)創(chuàng)建和管理。
Require valid-user
: 允許所有在AuthUserFile
中存在的有效用戶(hù)訪(fǎng)問(wèn)受保護(hù)的資源。
配置完成之后重啟httpd服務(wù)
🔂訪(fǎng)問(wèn)測(cè)試
這次訪(fǎng)問(wèn)的時(shí)候需要輸入賬戶(hù)和密碼才能進(jìn)行訪(fǎng)問(wèn)
用戶(hù)就是我們剛剛創(chuàng)建的用戶(hù)和密碼
字符界面訪(fǎng)問(wèn)的時(shí)候
顯示需要你進(jìn)行身份驗(yàn)證