【樹莓派】Squid代理以及白名單配置


Squid安裝: 

sudo apt-get install squid3 -y

首先,建議備份一下這個配置文件,以免配錯之后,無法恢復,又得重新安裝:

sudo cp /etc/squid3/squid.conf /etc/squid3/squid.conf.default.bak

 squid log查看:

sudo tial -f /var/log/squid3/access.log

服務啟動停止與查看狀態:

sudo service squid3 start
sudo service squid3 stop
sudo service squid3 status

 

補充幾條squid的命令說明:

#檢驗:如果沒有錯誤消息輸出,恭喜,你可以使用squid
sudo squid3 -k parse

# 重新配置Squid3,使得SquidGuard可以正常工作:
sudo squid3 reload
sudo squid3 -k reconfigure

# 清空緩存,關閉squid3
sudo squid3 -k kill

# 初始化squid的緩存空間
sudo squid3 -z

# 顯示創建交換目錄
sudo squid -z

# 啟動squid
sudo squid

# 關閉squid代理
sudo squid -k shutdown

# 查看squid的狀態:
sudo squid -k check

# 重新配置Squid3,使得SquidGuard可以正常工作:
sudo squid3 reload
sudo squid3 -k reconfigure

# 重新啟動squid
sudo /usr/local/squid3/sbin/squid -k reconfigure

 

 chrome--設置--網絡--更改代理服務器設置--連接--局域網設置--代理服務器

 


貼一下squid.conf的配置信息內容:
http_port 0.0.0.0:3128                        #使用IPV4的3128端口作為代理服務器端口
cache_dir ufs /var/spool/squid3 1000 64 1024  #緩存目錄
cache_access_log /var/log/squid3/access.log   #接入的日志文件
cache_log /var/log/squid3/cache.log           #緩存日志
cache_store_log /var/log/squid3/store.log     #存儲日志
pid_filename /var/run/squid.pid               #進程ID 
cache_mgr newflydd@gmail.com                  #隨意填一個email
cache_mem 32 MB                               #緩存大小
cache_swap_low 90                             #最小交換空間
cache_swap_high 95                            #最大交換空間
maximum_object_size 4096 KB
maximum_object_size_in_memory 8 KB
auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/squid_passwd          #以上都沒意思,這邊是重點,使用NCSA讀取加密的用戶密碼
acl ncsa_users proxy_auth REQUIRED            #代理身份使用認證模式
http_access allow ncsa_users                  #所有IP都可以使用代理

部分可以參考這幾篇文章:

http://www.predatorray.me/在VPS上搭建Squid代理服務器/

http://blog.csdn.net/stamhe/article/details/5334875  

http://www.cnblogs.com/vijayfly/p/6550182.html  

http://www.cnblogs.com/newflypig/archive/2012/09/28/2862000.html

http://www.cnblogs.com/lixiuyuan999/p/6260179.html

 

剛才配置成功,現在附上兩份文件:

(1)可以通過內網代理訪問外網的配置:

visible_hostname lifeccp
acl localnet src 192.168.0.0/16
acl whitelist dstdomain "/etc/squid3/whitelist"
http_access allow whitelist
#解決websocket 協議時候,可以配置這個
request_header_add Connection "upgrade"

 

(2)在內網增加了白名單的訪問規則配置:

#http_access allow localnet
http_access allow whitelist
acl whitelist dstdomain "/etc/squid3/whitelist"

request_header_add Connection "upgrade"

 

(3)附上白名單文件:

.aliyuncs.com
.weixin.qq.com
.ronghub.com
.wx.qq.com
.lifeccp.com
uc.qbox.me

 

其他待后續在進行補充。

====================================================

官網:http://www.squid-cache.org/

 

squid是一種用來緩存Internet數據的軟件。接受來自人們需要下載的目標(object)的請求並適當的處理這些請求。也就是說,如果一個人想下載一web界面,他請求squid為他取得這個頁面。squid隨之連接到遠程服務器並向這個頁面發出請求。然后,squid顯式地聚集數據到客戶端機器,而且同時復制一份。當下一次有人需要同一頁面時, squid可以簡單的從磁盤中讀到它,那樣數據會立即傳輸到客戶機上。

squid代理的作用

  • 通過緩存的方式為用戶提供Web訪問加速
  • 對用戶的Web訪問進行過濾控制

工作流

當代理服務器中有客戶端需要的數據時:

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

b. 代理服務器檢查自己的數據緩存;

c. 代理服務器在緩存中找到了用戶想要的數據,取出數據;

d. 代理服務器將從緩存中取得的數據返回給客戶端。

 

當代理服務器中沒有客戶端需要的數據時:

  1. 客戶端向代理服務器發送數據請求;

  2. 代理服務器檢查自己的數據緩存;

  3. 代理服務器在緩存中沒有找到用戶想要的數據;

  4. 代理服務器向Internet 上的遠端服務器發送數據請求;

  5. 遠端服務器響應,返回相應的數據;

  6. 代理服務器取得遠端服務器的數據,返回給客戶端,並保留一份到自己的數據緩存中。

1、安裝

sudo apt-get install squid3

 

2、常用命令

啟動:sudo service squid3 start

重啟:sudo service squid3 restart

停止:sudo service squid3 stop

3、配置介紹

主配置文件:/etc/squid3/squid.conf

常用配置:

http_port 3128

access_log /var/log/squid/access.log    #訪問日志存放的地方

visible_hostname    proxy.test.xom  #可見的主機名

cache_mgr webmaster@test.com    #定義管理員郵箱

http_access deny all    #訪問控制

 

4、設置白名單

sudo vim /etc/squid3/squid.conf

acl whitelist dstdomain "/etc/squid3/whitelist"

http_access allow whitelist

Tips:whitelist中定義可以訪問的站點。

 

 

 --------------------------

補充信息:

官網:http://www.squid-cache.org/

Squid 代理更改 HTTPS 頭 :http://www.guanggua.com/question/39947239-squid-proxy-to-change-https-header.html

 

sudo squid3 -v | grep violations --color

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM