999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Linux平臺下Squid PRoxy代理服務的研究與實現

2022-02-15 02:48:36
信息記錄材料 2022年12期
關鍵詞:設置用戶信息

閆 梅

(山西機電職業技術學院信息工程系 山西 長治 046011)

0 引言

web服務器為了提供更為快捷、高效的服務,提高時間和帶寬的使用效率,可以在瀏覽器和源服務器之間設置代理服務器,客戶端向位于中間位置的PRoxy代理服務器發起數據請求,代理服務器對接收到的數據信息進行分析與處理,將客戶端請求的數據返回給瀏覽器[1]。可以將其理解為網絡信息的中轉站,尤其在大型高負載web站點的訪問中發揮著至關重要的作用,代理服務作為性能優化的重要手段,客戶端在刷新瀏覽器時,不用重新請求,而是從PRoxy服務中讀取,極大減輕原始服務器的負載。其主要作用有:①資源獲取:幫助客戶端向目的地獲取所需的資源;②提高訪問速度:代理服務器保存從原始服務器所獲取的資源,從而實現客戶端快速的獲取,達成節省帶寬以及加快內部網絡對因特網WWW訪問速度的目的;③提高內部網絡的安全性:代理服務器代替客戶端去獲取原始服務器資源,隱藏了客戶端真實信息,同時PRoxy代理服務一般架設在內部網絡的網關之上,承擔部分防火墻的功能,對內部網絡的安全起到防護作用。目前代理服務器有很多,本文將在Linux平臺下對Squid PRoxy代理服務的實現進行研究。

1 代理服務器的工作原理

代理服務器通常應用于以下場景:客戶端數量巨大,且大部分需要www網絡服務和瀏覽靜態網站[2];PRoxy服務器被賦予了防火墻的功能;客戶端需要訪問傳輸速度很慢的網站,比如一些國外的網站等。

代理服務器作為一種既是服務端又是客戶端的中間程序,主要用于轉發客戶端系統的網絡訪問請求,具體工作流程如下,如圖1所示。

圖1 代理服務器的工作原理

1.1 PRoxy服務器中有用戶請求的信息

①客戶端向代理服務器端發送一個請求的數據包;

②PRoxy服務器接收之后,首先查找數據緩存中是否包含客戶端請求的數據信息;

③如果數據緩存中存儲有客戶端請求的數據信息,PRoxy服務器將取出相關的數據信息;

④PRoxy服務器將取出的數據回傳給客戶端。

1.2 PRoxy服務器中沒有用戶請求的信息

a.客戶端向代理服務器端發送一個請求的數據包;

b.代理服務器端接收之后,首先查找自己的數據緩存中是否包含客戶端請求的數據信息,通過檢查發現數據緩存中沒有用戶請求的數據信息;

c.數據緩存反饋信息給PRoxy服務器;

d.代理服務器接收到反饋信息后,繼而向遠端的原始服務器發出數據請求信息;

e.遠端服務器收到請求數據后,將請求的數據信息返回給PRoxy服務器;

f.PRoxy服務器將收到的信息回傳給客戶端,同時在數據緩存中進行備份。

2 Squid代理服務器的實現

Squid軟件是Linux平臺下常用的代理服務器軟件,可以代理HTTP、FTP、GOPHER、SSL和WAIS協議,因其快速響應、減少網絡阻塞、增強訪問控制、提高安全性的優點,同時可以針對特定的網站、用戶、網絡數據類型實施訪問控制,因此在UNIX及Linux操作系統下有廣泛的應用。

2.1 Squid服務器端的安裝

2.1.1 檢查Squid軟件是否安裝

Squid具有下載安裝簡單、配置靈活的特點[3]。以管理員身份登錄Linux操作系統,在終端通過rpmqa|grep squid命令來檢查Squid軟件是否已經安裝,顯示package squid is not installed則表示沒有安裝,否則會顯示具體的安裝包信息。

2.1.2 如果未安裝,則使用yum方式安裝

通過命令yum install squid -y來安裝Squid軟件,如果不使用參數-y,安裝過程中找到安裝包之后,會詢問Is this OK[y/d/N],需要手動進行選擇;使用-y參數可以保證在安裝過程提示自動選擇全部為y,不再需要手動選擇,安裝完成后提示compelte,表示軟件安裝完成。

安裝完成后執行rpm -qa|grep squid命令來查看Squid軟件是否安裝成功,結果顯示squid的版本為squid3.5.20-17.e17_9.7.x86_64,如圖2所示。

圖2 安裝好的Squid版本

2.1.3 啟動并開啟squid服務

驗證squid成功安裝后,使用#systemctl start squid命令啟動Squid,并使用#systemctl enable squid命令設置squid服務為自啟動[4]。

#systemctl start squid

#systemctl enable squid

2.1.4 查看squid服務運行狀態

squid服務開啟后,為驗證服務是否處于開啟的狀態,可通過systemctl status squid來查看squid服務是否處于active(running)運行狀態,如圖3所示。

圖3 squid運行狀態

2.2 Squid服務器端的配置

2.2.1 不帶用戶認證的squid代理服務端的配置

默認情況下squid本身不帶任何認證程序,客戶端可以直接通過代理服務器訪問網絡資源,位于/etc/squid/目錄下的squid.conf是squid服務中最核心的配置文件。

①查看squid.conf配置文件:以管理員身份登錄linux服務器后,通過cd /etc/squid命令切換至squid.conf配置文件存儲的目錄下,使用ls命令查看該目錄下存在的文件及目錄信息,顯示存在squid.conf 文件,如圖4所示。

圖4 查看squid.conf文件

②編輯配置文件,設置監聽端口和允許所有ip訪問:使用vi編輯器打開squid.conf配置文件,并通過i鍵切換至編輯模式。通過“#”號注釋http_access deny all此行代碼,并添加http_access allow all代碼允許所有ip訪問,同時設置端口為3712。

http_port 3712 #設置監聽的端口,默認為3128

#http_access deny all #注釋此行代碼

http_access allow all #添加,為允許所有ip

③添加代碼塊:在配置文件后面添加以下的代碼內容,添加代碼后通過wq!保存并退出編輯模式,如圖8所示。

#配置squid進程使用的內存大小為64 MB

cache_mem 64 MB

#最大緩存的靜態資源對象,超過這個大小將不會緩存數據

maximum_object_size 6 MB cache_dir ufs /var/spool/squid 100 16 256

#日志文件存放的路徑

access_log /var/log/squid/access.log

#允許所有訪問

http_access allow all

#隨意填寫一個名字

visible_hostname squid.chao

④重新啟動squid服務,并檢查配置文件是否有誤:對squid.conf配置文件編輯后,需要使用systemctl resatrt squid命令重新啟動squid服務。同時,為了檢驗squid.conf配置文件是否有錯誤,通過squid -k parse命令進行檢測,若沒有出現ERROR就沒有問題,如圖5所示。

圖5 檢查配置文件

⑤查看squid監聽的端口:配置文件檢測無誤后,通過netstat -ntlp命令查看squid監聽的端口,輸入該命令提示command not found,發現Linux系統中缺少netstat對應的包,這時需要通過yum install net-tools命令安裝net-tools工具,提示complete,表示工具安裝完成,如圖6所示。

圖6 net-tools工具安裝

安裝完成后,netstat即可正常使用,再次使用netstat -ntlp命令可查看到squid監聽的端口3712,如圖7所示。

圖7 系統監聽的端口

⑥關閉CentOS的防火墻:為了監聽端口能夠正常訪問,可以通過#systemctl stop firewall.service和#systemctl disable firewall.service命令關閉防火墻,放行squid監聽端口。

#systemctl stop firewall.service

#systemctl disable firewall.service

帶用戶認證的squid代理服務端的配置

為了增加訪問的安全性,可以對其用戶身份信息進行驗證,本文采用Squid自帶的認證程序ncsa來實現用戶認證[5]。

由于用戶認證需要訪問密碼的生成,需要使用到命令行工具htpassword,此工具可以生成訪問密碼,此命令是httpd-tools包的一部分。

⑦httpd-tools工具的安裝:Centos可以直接使用yum install httpd-tools -y命令進行安裝,當提示“完畢”后,表示httpd-tools工具安裝完成,如圖8所示。

圖8 httpd-tools工具安裝完成

⑧添加認證用戶并生成密碼文件:htpasswd生成的密碼和關聯的用戶名將存儲在指定的文件中,密碼將被加密,本文的賬號信息保存在/etc/squid/passwd文件下[6],這里的yan是用戶名,執行命令后會提示設置yan用戶的密碼,輸入成功后,會提示已經為yan這個用戶添加了密碼。

圖9 用戶設置密碼

⑨驗證用戶密碼:為了驗證密碼文件是否生效,使用命令/usr/lib64/squid/basic-ncsa_auth /etc/squid/passwd來進行驗證,輸入用戶名和密碼,若提示OK表示成功,如圖10所示。

圖10 驗證用戶密碼

⑩配置squid.conf:在打開squid.conf配置文件中添加如下代碼塊:

#選擇認證方式為basic,定義認squid密碼文件與ncsa_auth文件位置

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd

#認證程序進程數數量

auth_param basic children 5

#在使用PRoxy彈出來的提示框中的描述信息

auth_param basic realm Squid Bacsic Authentication

#認證的有效時間

auth_param basic credentialsttl 2 hours

#允許認證的用戶訪問

acl cangluan proxy_auth REQUIRED

#允許認證的成員用戶訪問

http_access allow auth_users

?重新啟動squid服務:squid配置文件內添加允許授權用戶訪問后,再次需要使用systemctl restart squid命令,重新啟動squid服務使其生效。

2.3 客戶端的配置

在完成服務端的配置后,可通過客戶端的瀏覽器進行驗證,在對squid服務器端配置時發現系統就只有命令行界面,但是沒有圖形化界面,無法打開瀏覽器。

2.3.1 安裝圖形界面

為了使用圖形界面下的瀏覽器進行測試,需要安裝系統的GNOME圖形界面,在命令行界面下使用yum grouplist命令列出本系統支持的圖形化界面有哪些,如圖11所示。

圖11 本系統支持的圖形化界面

研究人員選擇默認的圖形化界面(GNOME Desktop),使用命令#yum groupinstall“GNOME Desktop” “Graphical Administration Tools”獲取并安裝CentOS默認的圖形界面GNOME程序包,提示complete表示圖形界面安裝成功。

2.3.2 修改CentOS7默認啟動模式為圖形化模式

使用systemctl get-default命令提示multi-user.target,說明當前默認啟動模式為命令行模式,使用systemctl set-default graphical.target修改默認啟動為GNOME界面模式[7]。

#systemctl get-default

#systemctl set-default graphical.target

systemctl get-default

#reboot

使用命令reboot重啟CentOS系統,重啟之后就已經切換到GUI圖形界面模式,通過對圖形化界面的設置,即可實現從命令行到圖形化界面的所有操作[8]。

2.3.3 不帶用戶認證的客戶端配置

在圖形界面下打開火狐瀏覽器,通過“設置”找到“網絡設置”,單擊“設置”,在打開的網絡設置中,勾選“手動配置代理”,設置HTTP代理為“127.0.0.1”端口為“3712”,同時勾選“也將次代理用于HTTPS”,完成代理的配置。嘗試用瀏覽器中訪問www.sxjdxy.org,頁面回顯查看的頁面信息,如圖12所示。

圖12 代理服務器的設置

在squid中位于/var/log/squid/access.log的日志文件會將HTTP響應的關鍵信息記錄并存放其中,在GNOME桌面上打開終端,切換目錄至/var/log/squid,使用cat access.log查看日志文件[9],查看日志文件,可查看到瀏覽器訪問www.sxjdxy.org的記錄信息被保存到日志文件中,如圖13所示。

圖13 查看日志文件

2.3.4 帶用戶認證的客戶端配置

在對瀏覽器進行PRoxy設置后,當使用瀏覽器訪問頁面的時候,會先彈出一個提示輸入用戶名和密碼的提示框[10],輸入用戶名和密碼即可訪問到www.sxjdxy.org頁面信息,如圖14所示。

圖14 帶用戶認證訪問

3 結語

通過在Linux平臺下從Squid的安裝、Squid服務器端的配置及客戶端的配置對Squid PRoxy代理服務的實現進行了研究,客戶端從用戶認證和非用戶認證對代理服務器的訪問進行了驗證,借助于Squid代理服務器,客戶端獲得了自己所需要的信息,又沒有泄露自己的信息,提高了訪問效率和安全防護。

猜你喜歡
設置用戶信息
中隊崗位該如何設置
少先隊活動(2021年4期)2021-07-23 01:46:22
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
本刊欄目設置說明
中俄臨床醫學專業課程設置的比較與思考
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
地鐵出入段線轉換軌設置
主站蜘蛛池模板: 日本久久免费| 成人午夜天| 成人在线观看不卡| 乱色熟女综合一区二区| 欧美一级99在线观看国产| 999在线免费视频| 欧美日韩精品综合在线一区| 亚洲成aⅴ人片在线影院八| 久久中文字幕2021精品| 免费无码又爽又黄又刺激网站| 国产精品嫩草影院av| 久久国产亚洲欧美日韩精品| 国产在线视频二区| 亚洲色无码专线精品观看| 毛片三级在线观看| 色欲综合久久中文字幕网| 成人在线视频一区| 欧美黄网在线| 亚洲毛片网站| 午夜无码一区二区三区在线app| 国产SUV精品一区二区6| 99久久免费精品特色大片| 美女免费精品高清毛片在线视| 重口调教一区二区视频| 欧美一区二区福利视频| 国产永久无码观看在线| 精品视频一区在线观看| 国产一二三区在线| 久久男人视频| 国产毛片一区| 亚洲中文字幕无码爆乳| 国产在线一区视频| 亚洲无码日韩一区| 久久亚洲欧美综合| 亚洲一区二区三区在线视频| 影音先锋亚洲无码| 亚洲国产日韩欧美在线| 亚洲国产一成久久精品国产成人综合| 国产精品久久自在自线观看| 国产人成在线视频| 亚洲精品中文字幕无乱码| 欧美亚洲国产视频| 久久精品中文字幕少妇| 天堂在线亚洲| 亚洲国产无码有码| 99人体免费视频| 日韩欧美中文字幕在线精品| 性色在线视频精品| 成人日韩视频| 欧美成人免费午夜全| 狠狠色成人综合首页| 在线欧美日韩| 国产精品密蕾丝视频| 国产精品吹潮在线观看中文| 国产原创第一页在线观看| 99精品免费在线| 欧美国产日韩在线播放| 无码内射在线| 欧美中文字幕无线码视频| 中文字幕欧美日韩| 欧美成人影院亚洲综合图| 亚洲国产天堂久久综合| 亚洲无线观看| 国内精品九九久久久精品| 色爽网免费视频| 99一级毛片| 福利视频一区| 亚洲成人网在线观看| 欧美精品在线观看视频| 成人免费一区二区三区| 免费在线播放毛片| 久久精品一品道久久精品| 国产一区二区影院| 午夜福利免费视频| 看看一级毛片| 99久久国产综合精品2020| 久久精品国产精品国产一区| 欧美一级高清视频在线播放| 日韩午夜伦| 国产青榴视频| 欧美成人免费| 一本色道久久88|