1. 程式人生 > >squid傳統代理和透明代理配置步驟以及使用方法。

squid傳統代理和透明代理配置步驟以及使用方法。

squid 代理伺服器  

他可以幫客戶端去訪問網站提高客戶端訪問的速度,工作方式如下:

客戶端發起上網的請求

代理伺服器首先檢查自己的快取有沒有這個網站的資料,

如果有直接取出資料反饋給客戶端

如果沒有則替客戶端訪問網站反饋給客戶端並將網站資料保留一份到自己的快取

下次客戶端訪問同樣的網站,代理伺服器繼續查快取

如果有就直接拿快取資料反饋給客戶端,沒有則繼續替客戶端訪問並儲存一份資料到自己的快取。


其中又分為傳統代理與透明代理。

傳統代理需要客戶端在瀏覽器上指定代理伺服器的ip比較麻煩。

透明代理不需要在瀏覽器指定,需要將閘道器設為代理伺服器。

透明代理:

解包進包

[[email protected] 桌面]# tar zxf squid-3.4.6.tar.gz 
[

[email protected] 桌面]# ls


 ./configure --prefix=/usr/local/squid --sysconfdir=/etc--enable-arp-acl --enable-linux-netfilter --enable-linux-tproxy--enable-async-io=100 --enable-err-language="Simplify_Chinese"--enable-underscore --enable-poll --enable-gnuregex

如果想了解每個引數請看下面:

--enable-underscore:允許解析的URL中出現下劃線,因為預設情況下

Squid會認為帶下劃線的URL非法的,並拒絕訪問該地址

--enable-async-io:非同步I/O可以用來提升儲存效能。aufs模組使用大量的執行緒來執行磁碟I/O操作,N_THREADS引數改變Squid使用的執行緒數量。

--enable-async-io選項等同於如下三個選項:
--with-pthreads
:在編譯過程中連結到系統的P執行緒庫,aufs儲存模組是Squid中唯一需要使用執行緒的部分。
--with-aufs-threads=N_THREADS
:指定aufs儲存機制使用的執行緒數量。Squid會根據cache目錄的數量,自動計算需要使用多少執行緒。

--enable-storeio=ufs,aufs,diskd,coss, null

:告訴Squid編譯時使用哪個儲存模組,原始碼中/src/fs下面有所有可用的儲存模組

--enable-linux-netfilter:使用核心過濾,目的是對透明模式提供支援

--enable-linux-tproxy:允許使用透明模式

--enable-poll:使用poll()函式,提升效能,poll函式用於監測多個等待事件,若事件未發生,程序睡眠,放棄CPU控制權,若監測的任何一個事件發生,poll將喚醒睡眠的程序,並判斷是什麼等待事件發生,執行相應的操作

--enable-gnuregex:允許規則中使用GNU正則表示式

make&& make install

  ln -s /usr/local/squid/sbin/* /usr/local/sbin/   #方便使用squid的命令

 useradd -M -s /sbin/nologin squid            #創個使用者

 chown -R squid:squid /usr/local/squid/var/   #把日誌檔案權屬主和屬組給squid

squid -k parse       #可以檢查語法

squid –kreconfigure  #過載

squid -z          # 初始化快取目錄

squid            #啟動

這裡用squid -k parse 檢查了一下語法 發現報錯


/etc/squid.conf   

報錯原因如下

無法確定公共主機名    #解決  配置檔案新增

visible_hostname ZHANG

快取檔案沒有寫入許可權 #解決 新增一下兩條 

cache_effective_user squid     

cache_effective_group squid   

檢測沒問題就可以開啟了

開啟後在瀏覽器設定代理伺服器


然後訪問就可以了

如果發現訪問不了 


刪了配置檔案這三行 

或者新增

http_access deny !localnet

就可以了。


訪問成功。


web的訪問日誌可以看到是squid 伺服器的ip 來訪問的網站。  

透明代理:

透明代理不需要再瀏覽器輸入代理伺服器的ip

將閘道器設定成代理伺服器就可以。

方法如下。

在代理伺服器新增一個網絡卡 這裡的環境是

web vmnet1   192.168.43.60

squid vmnet1   192.168.43.66  vmnet2  192.168.1.2

clietn vmnet2  192.168.1.3

其實都一個網段也可以。 如果想簡單做做可以跳過下面新增網絡卡 


新增過網絡卡 虛擬機器還是 一個ip需要去新增網絡卡檔案 複製原來的eth 





好了。

squid配置檔案裡有一行是http_port3128  改為

http_port192.168.1.2:3128 transparent


防火牆重定向策略,來自192.168.1.0的網路重定向到3128埠 一個是80埠的一個是443的 

iptables -tnat -I PREROUTING -i eth1 -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to3128

iptables -tnat -I PREROUTING -i eth1 -s 192.168.1.0/24 -p tcp --dport 443 -j REDIRECT --to3128

serviceiptables save   儲存防火牆策略

重啟squid     

這裡把之前瀏覽器上的代理伺服器刪掉  並清除瀏覽器快取

閘道器設定為squid的ip 



發如果現訪問不了

有以下解決方法

iptables -I INPUT -p tcp --dport 3128 -j ACCEPT

service iptables save

新增防火牆策略並應用允許3128埠通過 然後重啟squid

代理伺服器不具備域名解析功能 請在客戶端設定好dns 或者寫好hosts檔案。




透明代理訪問成功。

希望可以幫到大家 謝謝。



相關推薦

squid傳統代理透明代理配置步驟以及使用方法

squid 代理伺服器  他可以幫客戶端去訪問網站提高客戶端訪問的速度,工作方式如下:客戶端發起上網的請求代理伺服器首先檢查自己的快取有沒有這個網站的資料,如果有直接取出資料反饋給客戶端如果沒有則替客戶端訪問網站反饋給客戶端並將網站資料保留一份到自己的快取下次客戶端訪問同樣的

Centos7 下 squid安裝 以及 傳統代理透明代理的部署

文件大小 cmd 過程 running useradd ply chm nologin 命令 Centos7 下 squid代理服務安裝 代理服務的工作機制 作為應用層的代理服務軟件, Squid主要提供緩存加速和應用層過濾控制的功能。 當客戶機通過代理來請求Web頁面時,

squid傳統代理透明代理

雙網卡 vpd war mct figure under access oot ipaddr 簡介:squid 服務 傳統模式 設置代理地址透明模式 無需設置代理(網關)代理服務器軟件:SquidNginx 具體實驗操作:squid 1

企業應用——構建Squid服務的傳統代理透明代理

ice 安裝完成 初始 dev 關閉防火墻 ase tro 火墻 代理模式 =============Squid服務============== Squid簡介: Squid是一個高性能的代理緩存服務器,主要提供緩存加速和應用層過濾控制的功能。Squid支持FTP、gop

正向代理,反向代理透明代理

正向代理     一般就是指在瀏覽器上設定代理伺服器地址 反向代理      反向代理伺服器放置在伺服器端,作為真實伺服器的代理者,保護了真實伺服器。      反向代理伺服器的工作流程         1)使用者通過域名發出訪問 web 伺服器的請求,該域名被 DNS

如何使用Squid服務來構建=》傳統透明代理服務器,通俗易懂!

bdb changelog 控制 error log out blog dex web 1、緩存代理概述: 作為應用層的代理服務軟件,Squid主要提供緩存加速和應用層過濾控制的功能 2、代理的工作機制: (1)當客戶機通過代理來請求web頁面時,指定的代理服務器會先檢查自

構建Squid傳統代理透明代理

gre $1 火墻 .com ima bin sys 代理服務 maximum 什麽是Squid Squid是一種用來緩沖Internet數據的軟件。它是這樣實現其功能的,接受來自人們需要下載的目標(object)的請求並適當地處理這些請求。也就是說,如果一個人想下載一

CentOS上構建squid傳統代理透明代理(squid3.4.6)

src 存放位置 pid run regex img rest roc 客戶端設置 1.1 squid服務基礎 1.1.1 緩存代理概述 1、代理的工作機制 當客戶機通過代理來請求Web頁面時,指定的代理服務器會先檢查自己的緩存,如果緩存中已經有客戶機需要訪問的頁面,則直接

構建Squid代理服務器-傳統代理透明代理、反向代理

roc 端口 rep netfilter 存在 安裝squid host The 空間大小 Squid是Linux系統中最常用的一款開源代理服務軟件,主要提供緩存加速和應用層過濾控制的功能,可以很好的實現HTTP、FTP、DNS查詢以及SSL等應用的緩存代理。 正向代理:

squid的正向代理反向代理

一、squid正向代理:翻牆軟體 1.什麼是正向代理 172.25.254.100主機上可以上網,在172.25.254.100主機上做squid配置 172.25.254.10主機不能上網,只需要在10上新增100的squid代理,172.25.254.10上網的資訊

【Mybatis】mapper動態代理對映檔案配置標籤

提要:主要演示了mybatis中,在類中的其他自定義類,在sql語句中如何取值。sql語句中,範圍sql與集合的對應   一、目錄結構 二、相關實體類 QueryVo package com.test.domain; import java.io.Seria

【Mybatis】mapper動態代理sqlMapconfig.xml配置標籤

1.mapper動態代理 使用mapper對映來,聯絡sql語句和程式碼函式。 步驟一:在上一篇基礎的上,新增一個介面,要求與UserMapper的xml配置檔案同名,加入在xml中的所有sql的id相同的方法,即方法名相同,入參和返回值都相同 步驟二:修改usermapper的名稱

透明代理真實代理的區別

採集票務資訊,去賣幾天票,看看業務流程,設計資料庫 讓公園網站開放API介面,旅行社網站呼叫。可以使用Web Service。 大家是如何應付gridview繫結資料時,顯示的時候在一行裡面顯示,頁面拉得很寬的??我想可以自動換行 但是不能撐大行寬 影響美觀這個.你設定下gridview的寬就可以了.這樣g

Linux之Squid(正向代理反向代理)

正向代理(實驗條件:(真機)IP:172.25.254.4能上網;虛擬機器IP:172.25.254.104不能上網;讓虛擬機器使用代理去聯網) 正向代理 是位於客戶端和原始伺服器之間的伺服器,為了從原始伺服器取得內容,客戶端向代理髮送一個請求並指定目標(原始伺服器),然後

高匿名、匿名透明代理有什麼區別?

編寫爬蟲的時候,我們經常會用到代理ip; HTTP代理按匿名度可分為透明代理、匿名代理和高度匿名代理。 使用透明代理,對方伺服器可以知道你使用了代理,並且也知道你的真實IP。 透明代理訪問對方伺服器所帶的HTTP頭資訊如下: REMOTE_ADDR = 代理伺服器IP

侃侃正向代理反向代理

nginx 是我 應用 技術 關系 str 它的 技術分享 服務器 正向代理 比如你現在缺錢,想找馬雲爸爸去借錢,可想而知人家可能鳥都不鳥你,到最後碰一鼻子灰借不到錢。不過你認識你家隔壁老王,而老王認識馬雲同誌,而且關系還很好。這時候你托老王去找馬雲借錢,當然這事最後成了,

正向代理反向代理區別【來自百度】

無法訪問 photo 開放 space 來講 角度 是我 intern 速度 正向代理,也就是傳說中的代理,他的工作原理就像一個跳板。簡單的說,我是一個用戶,我訪問不了某網站,但是我能訪問一個代理服務器,這個代理服務器呢,他能訪問那個我不能訪問的網站,於是我先連上代理服

學習Nginx之理解正向代理反向代理

用戶訪問 gin margin 進行 ron 用途 工作 訪問 .net 正向代理的概念 正向代理,也就是傳說中的代理,他的工作原理就像一個跳板,簡單的說,我是一個用戶,我訪問不了某網站,但是我能訪問一個代理服務器這個代理服務器呢,他能訪問那個我不能訪問的網站於是我先連上

spring靜態代理動態代理

row main 同時 rac images 處理 解決 pro abstract 本節要點: Java靜態代理 Jdk動態代理 1 面向對象設計思想遇到的問題 在傳統OOP編程裏以對象為核心,並通過對象之間的協作來形成一個完整的軟件功能,由於對象可以繼承,因此我們可以

【Nginx】--【1】http代理反向代理

nginx【1】代理服務;是一個位於客戶端和原始服務器之間的服務器,為了從原始服務器取得內容,客戶端向代理發送一個請求並指定目標(原始服務器),然後代理向原始服務器轉交請求並將獲得的內容返回給客戶端。客戶端必須要進行一些特別的設置才能使用正向代理。【2】反向代理:用戶某個服務器他是偷偷從另外一臺服務器上取回來