您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關squid本質及正向代理的實例分析,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
一、squid簡介
Squid Cache (簡稱為 Squid )是 HTTP 代理服務器 軟件。Squid用途廣泛的,可以作為 緩存服務器 , 代理用戶向web服務器請求數據并進行緩存, 可以過濾流量幫助網絡安全,也可以作為代理服務器鏈中的一環,向上級代理轉發數據或直接連接互聯網。 還也可以用在局域網中,使局域網用戶通過代理上網。
Squid將數據元緩存在內存中,同時也緩存 DNS查尋的結果,除此之外,它還支持非模塊化的DNS查詢,對失敗的請求進行消極緩存。Squid支持SSL,支持 訪問控制。由于使用了ICP,Squid能夠實現重疊的代理陣列,從而最大限度的節約帶寬。
Squid由一個主要的服務程序Squid,一個DNS查詢程序 dnsserver,幾個重寫請求和執行認證的程序,以及幾個管理工具組成。當Squid啟動以后,它可以派生出指定數目的 dnsserver進程,而每一個dnsserver進程都可以執行單獨的DNS查詢,這樣一來就大大減少了服務器等待DNS查詢的時間。
Squid的另一個優越性在于它使用 訪問控制清單(ACL)和訪問權限清單(ARL)。訪問控制清單和訪問權限清單通過阻止特定的網絡連接來減少潛在的Internet非法連接,可以使用這些清單來確保內部網的主機無法訪問有威脅的或不適宜的站點。
二、squid應用
squid即可以作為正向代理服務器也可以作為反向代理服務器。更多關于代理服務器分類,請參考博文: 系統原理分析架構-三--代理服務器簡介及分類 (2014-10-15 19:54)
注:本來此文是講解squid作為反向代理的頁面緩存功能的,但是由于squid常用的還有正向代理功能,因此也一并講解,后續文章中也會以這種思路進行講解,這樣通過對比更能加深對整個squid的理解。
1、squid正向代理服務器
舉個簡單的例子,假若公司內網機器正常來說都不讓訪問外網。但是由于工作需要,為研發同事配備了一臺統一能夠訪問外網查看資料的機器。這樣每次大家有需要上外網則需要爭搶唯一一臺外網主機。這種情況在大多數公司存在。聰明的程序員肯定不肯罷休,怎么也要把自己機器搗鼓出能上外網。這時候squid正向代理就能派上用場了。
注:正向代理還包括透明代理,本專題。
2、使用squid正向代理訪問外網:
(1)環境:
假設windows機器不能訪問外網,能訪問內網。(windows7) 有一臺linux服務器,能訪問外網,且windows機器能夠與該機器互相訪問。(centos 6.5 mini版,ip:192.168.10.36) |
(2)node36上安裝squid:
# yum install squid #安裝squid
# vim /etc/sysctl.conf#開啟路由轉發功能
net.ipv4.ip_forward設置為1
# vi /etc/sysconfig/network
# sysctl -p#路由強制生效
# service network restart
配置squid:
# vim /etc/squid/squid.conf
#http_port指令告訴squid在哪個端口偵聽HTTP請求。默認端口是3128
#緩存目錄的設置,可以設置多個緩存目錄,語法為:<cache_dir> <aufs|ufs> <目錄所在> <MBytes大小> <dir1> <dir2>
#設置acl訪問控制表
以允許192.168.10.0/24網段內所有客戶機訪問代理服務器為示例:
配置文件中添加acl my_allow_net src 192.168.10.0/24
配置文件中添加acl my_allow_net src 192.168.10.0/24
(注:該記錄一定要添在deny all之前,應該配置文件讀到deny all則后面的配置文件就不生效)
# squid -k parse
假如你看不到輸出,配置文件有效,你能繼續后面的步驟。然而,如果配置文件包含錯誤,squid會告訴你
# squid -z #初始化緩存空間
# /etc/init.d/squid restart#重啟squid生效,起送squid時間比較長,耐心等待
(3)windows下測試代理服務器:
瀏覽器訪問baidu.com
后臺日志:
tailf /var/log/squid/access.log
普通正向代理成功。
3、高級功能配置項
#停止squid
#重配置運行中的squid進程,重配置運行中的squid最好的方法是使用squid -k reconfigure命令:
#禁止來自某些IP地址的訪問,在squid配置文件中添加以下acl名稱及訪問規則,并重新加載配置文件
#禁止在某些時段訪問 |
4、關于squid的透明代理
透明代理業屬于正向代理的一種,不同的是普通代理需要在客戶端(瀏覽器局域網代理服務器)設置代理IP和PORT,而透明代理再通過 NAT功能,將特定的數據請求映射到代理服務器上。
ex:#iptables -t nat -A PREROUTING -i eth0 -p tcp -s 192.168.62.0/24 --dport 80 -j REDIRECT --to-ports 3128
上述就是小編為大家分享的squid本質及正向代理的實例分析了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。