【樹莓派】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 [email protected] #隨意填一個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://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. 代理服務器將從緩存中取得的數據返回給客戶端。
當代理服務器中沒有客戶端需要的數據時:
-
客戶端向代理服務器發送數據請求;
-
代理服務器檢查自己的數據緩存;
-
代理服務器在緩存中沒有找到用戶想要的數據;
-
代理服務器向Internet 上的遠端服務器發送數據請求;
-
遠端服務器響應,返回相應的數據;
-
代理服務器取得遠端服務器的數據,返回給客戶端,並保留一份到自己的數據緩存中。
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 [email protected] #定義管理員郵箱
http_access deny all #訪問控制
4、設置白名單
sudo vim /etc/squid3/squid.conf
acl whitelist dstdomain "/etc/squid3/whitelist"
http_access allow whitelist
Tips:whitelist中定義可以訪問的站點。
【樹莓派】Squid代理以及白名單配置