Linux中國

10個關於linux中Squid代理伺服器的實用面試問答

以下為面試問答的內容

1. 什麼是代理伺服器?代理伺服器在計算機網路中有什麼用途?

回答 : 代理伺服器是指那些作為客戶端和資源提供商或伺服器之間的中間件的物理機或者應用程序。客戶端從代理伺服器中尋找文件、頁面或者是數據,而且代理伺服器能處理客戶端與伺服器之間所有複雜事務,從而滿足客戶端的生成的需求。

代理伺服器是WWW(萬維網)的支柱,它們其中大部分都是Web代理。一台代理伺服器能處理客戶端與伺服器之間的複雜通信事務。此外,它在網路上提供的是匿名信息(LCTT 譯註:指瀏覽者的 IP、瀏覽器信息等被隱藏),這就意味著你的身份和瀏覽痕迹都是安全的。代理可以去配置允許哪些網站的客戶能看到,哪些網站被屏蔽了。

2. Squid是什麼?

回答 : Squid是一個在GNU/GPL協議下發布的既可作為代理伺服器,同時也可作為Web緩存守護進程的應用軟體。Squid主要是支持像HTTP和FTP那樣的協議,但是對其它的協議比如HTTPS,SSL,TLS等同樣也能支持。其特點是Web緩存守護進程通過從經常上訪問的網站里緩存Web和DNS數據,從而讓上網速度更快。Squid支持所有的主流平台,包括Linux,UNIX,微軟公司的Windows和蘋果公司的Mac。

3. Squid的默認埠是什麼?怎麼去修改它的操作埠?

回答 : Squid運行時的默認埠是3128。我們可以通過編輯它的配置文件來把它的默認埠修改成未被用戶使用的埠,路徑是 /etc/squid/squid.conf ,建議如下。

用你的編輯器打開 『/etc/squid/squid.conf』 文件。

# nano /etc/squid/squid.conf

現在把它修改成未被使用的其它埠,並保存退出。

http_port 3128

重新啟動Squid代理服務,如下顯示。

# service squid restart

4. 你的公司管理層要求你通過Squid代理伺服器屏蔽掉一些域名,你怎麼做?

回答 : 屏蔽域名是一個在配置文件中實現的功能模塊。我們只需要執行一個小的手動配置即可,建議如下。

a. 在 『/etc/squid』 目錄下創建一個名為 『blacklist』 的文件。

# touch /etc/squid/blacklist

b. 用nano編輯器打開這個文件。

 # nano /etc/squid/blacklist

c. 以每行一個域名的方式將想要屏蔽的域名寫進這個文件里。

.facebook.com
.twitter.com
.gmail.com
.yahoo.com
...

d. 保存退出,然後從 『/etc/squid/squid.conf』 打開Squid配置文件。

# nano /etc/squid/squid.conf

e. 在配置文件中添加如下行。

acl BLACKLIST dstdom_regex -i 「/etc/squid/blacklist」
http_access deny blacklist

f. 保存配置文件並退出,重啟Squid服務讓其生效。

# service squid restart

5. 在Squid中什麼是媒體範圍限制(Media Range Limitation)和部分下載?

回答 : 媒體範圍限制是Squid的一種特殊的功能,它只從伺服器中獲取所需要的數據而不是整個文件。這個功能很好的實現了用戶在各種視頻流媒體網站如YouTube和Metacafe看視頻時,可以點擊視頻中的進度條來選擇進度,因此整個視頻不用全部都載入,除了一些需要的部分。

Squid部分下載功能的特點是很好地實現了類似在Windows更新時能以一個個小數據包的形式下載,並可以暫停,正因為它的這個特點,正在下載文件的Windows機器可以重新繼續下載,而不用擔心數據會丟失。Squid的媒體範圍限制和部分下載功能只有在存儲了一個完整文件的副本之後才行。此外,當用戶訪問另一個頁面時,除非Squid進行了特定的配置,部分下載下來的文件會被刪除且不留在緩存中。

6. 什麼是Squid的反向代理?

回答 : 反向代理是Squid的一個功能,這個功能被用來加快最終用戶的上網速度。下面用縮寫 『RS』 的表示包含了資源的原伺服器,而代理伺服器則稱作 『PS』 。初次訪問時,它會從RS得到其提供的數據,並將其副本按照配置好的時間存儲在PS上。這樣的話每次從PS上請求的數據就相當於就是從原伺服器上獲取的。這樣就會減輕網路擁堵,減少CPU使用率,降低網路資源的利用率,從而緩解原來實際伺服器的負載壓力。但是RS統計不了總流量的數據,因為PS分擔了部分原伺服器的任務。『X-Forwarded-For HTTP』 信息能用於記錄下通過HTTP代理或負載均衡方式連接到RS的客戶端最原始的IP地址。

從技術上說,用單個Squid伺服器同時作為正向代理伺服器和反向代理伺服器是可行的。

7. 由於Squid能作為一個Web緩存守護進程,那緩存可以刪除嗎?怎麼刪除?

回答 : 當然!作為一個Web緩存守護進程,Squid能加快網頁的訪問速度,清除緩存也是非常簡單的。

a. 首先停止Squid代理服務,然後從這個 『/var/lib/squid/cache』 目錄中刪除緩存。

# service squid stop
# rm -rf /var/lib/squid/cache/*<

b. 創建交換分區目錄。

# squid -z

8. 你有一台工作中的機器可以訪問代理伺服器,如果想要限制你的孩子的訪問時間,你會怎麼去設置那個場景?

把允許訪問的時間設置成晚上4點到7點三個小時,跨度為星期一到星期五。

a. 想要限制Web訪問時間在星期一到星期五的晚上4點到7點,要先打開Squid的配置文件。

# nano /etc/squid/squid.conf

b. 在配置文件中添加如下行,保存文件並退出。

acl ALLOW_TIME time M T W H F 16:00-19:00
shttp_access allow ALLOW_TIME

c. 重啟Squid服務。

# service squid restart

9. Squid存儲的數據是什麼文件格式?

回答 : Squid存儲的數據是UFS文件格式的。UFS是一種老的,使用比較廣泛的Squid存儲格式

10. Squid的緩存會存儲到哪裡?

回答 : Squid存儲的緩存是位於 『/var/spool/squid』 的特定目錄下。

以上就是全部內容了,很快我還會帶著其它有趣的內容回到這裡。

via: http://www.tecmint.com/squid-interview-questions/

作者:Avishek Kumar 譯者:ZTinoZ 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國