日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

CentOS Squid

發布時間:2024/4/14 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CentOS Squid 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Squid是一個緩存internet數據的一個軟件,它接收用戶的下載申請,并自動處理所下載的數據。也就是說,當一個用戶象要下載一個主頁時,它向 Squid發出一個申請,要Squid替它下載,然后Squid 連接所申請網站并請求該主頁,接著把該主頁傳給用戶同時保留一個備份,當別的用戶申請同樣的頁面時,Squid把保存的備份立即傳給用戶,使用戶覺得速度 相當快。

安裝
yum install squid

修改配置文件 /etc/squid/squid.conf
(如果該文件配置壞掉了,有 squid.conf.default 可以備用,兩個文件在剛安裝后是一模一樣的)

# squid 端口,默認是3128
http_port 3128

# 指定硬盤緩沖區的大小
# ufs: 緩存類型
# /var/spool/squid:緩存目錄
# 300:緩存大小(Mbytes)
# 允許在“/tmp”下創建的第一級子目錄數為16,每個第一級子目錄下可以創建的第二級子目錄數量為256
cache_dir ufs /var/spool/squid 300 16 256

# 自定義某個IP或者某網段,使用 http_access 選項允許該列表
acl our_networks src 11.11.11.11/255.255.255.255
acl our_networks src 12.12.12.12/29
http_access allow our_networks

# 服務器的主機名,可隨便定義
visible_hostname 221_170

# 關閉此項將在訪問網站時顯示的IP是unknown,如果打開則顯示的是你client的內網IP
forwarded_for off

# 防止知道客戶的內部 ip
header_access Via deny all

# 防止知道代理服務器的服務器名以及端口
header_access X-Forwarded-For deny all

啟動 squid
service squid start

squid 的 log:/var/log/squid/
access.log cache.log squid.out store.log

給出一些 header,可以屏蔽它們

Accept??HTTP_ACCEPT
Accept-Charset??HTTP_ACCEPT-CHARSET
Accept-Encoding??HTTP_ACCEPT-ENCODING
Accept-Language??HTTP_ACCEPT-LANGUAGE
Accept-Ranges??HTTP_ACCEPT-RANGES
Age??HTTP_AGE
Allow??HTTP_ALLOW
Authorization??HTTP_AUTHORIZATION
Cache-Control??HTTP_CACHE-CONTROL
Connection??HTTP_CONNECTION
Content-Base??HTTP_CONTENT-BASE
Content-Disposition??HTTP_CONTENT-DISPOSITION
Content-Encoding??HTTP_CONTENT-ENCODING
Content-Language??HTTP_CONTENT-LANGUAGE
Content-Length??HTTP_CONTENT-LENGTH
Content-Location??HTTP_CONTENT-LOCATION
Content-MD5??HTTP_CONTENT-MD5
Content-Range??HTTP_CONTENT-RANGE
Content-Type??HTTP_CONTENT-TYPE
Cookie??HTTP_COOKIE
Date??HTTP_DATE
ETag??HTTP_ETAG
Expires??HTTP_EXPIRES
From??HTTP_FROM
Host??HTTP_HOST
If-Match??HTTP_IF-MATCH
If-Modified-Since??HTTP_IF-MODIFIED-SINCE
If-None-Match??HTTP_IF-NONE-MATCH
If-Range??HTTP_IF-RANGE
Last-Modified??HTTP_LAST-MODIFIED
Link??HTTP_LINK
Location??HTTP_LOCATION
Max-Forwards??HTTP_MAX-FORWARDS
Mime-Version??HTTP_MIME-VERSION
Pragma??HTTP_PRAGMA
Proxy-Authenticate??HTTP_PROXY-AUTHENTICATE
Proxy-Authentication-Info??HTTP_PROXY-AUTHENTICATION-INFO
Proxy-Authorization??HTTP_PROXY-AUTHORIZATION
Proxy-Connection??HTTP_PROXY-CONNECTION
Public??HTTP_PUBLIC
Range??HTTP_RANGE
Referer??HTTP_REFERER
Request-Range??HTTP_REQUEST-RANGE
Retry-After??HTTP_RETRY-AFTER
Server??HTTP_SERVER
Set-Cookie??HTTP_SET-COOKIE
Title??HTTP_TITLE
Transfer-Encoding??HTTP_TRANSFER-ENCODING
Upgrade??HTTP_UPGRADE
User-Agent??HTTP_USER-AGENT
Vary??HTTP_VARY
Via??HTTP_VIA
Warning??HTTP_WARNING
WWW-Authenticate??HTTP_WWW-AUTHENTICATE
Authentication-Info??HTTP_AUTHENTICATION-INFO
X-Cache??HTTP_X-CACHE
X-Cache-Lookup??HTTP_X-CACHE-LOOKUP
X-Forwarded-For??HTTP_X-FORWARDED-FOR
X-Request-URI??HTTP_X-REQUEST-URI
X-Squid-Error??HTTP_X-SQUID-ERROR
Negotiate??HTTP_NEGOTIATE
X-Accelerator-Vary??HTTP_X-ACCELERATOR-VARY
Squid 用戶名密碼認證
利用 apache 攜帶的工具 htpasswd 生成密碼文件并添加相應的用戶信息,可能需要寫全 htpasswd 的路徑(如果這個服務器上有若干網站,選擇使用80端口的那個目錄下的htpasswd)
/usr/bin/htpasswd -c /etc/squid/passwd testuser
根據提示輸入密碼:1234
成功后將會在 /etc/squid/passwd 中寫入:
testuser:cuUEnEwyMTcGY
第一列表明用戶名,第二列表明密碼

修改 squid 配置文件:
# 定義了認證方式為 basic,認證程序的路徑,認證程度需要讀取的帳戶文件(注意 ncsa_auth 和 上個步驟建立的 passwd 的路徑)
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
# 自定義一條名為 auth_user 的ACL,ACL類型為 proxy_auth 通過外部程序進行用戶認證方式,列表值為REQUIRED,說明接受所有合法用戶的訪問,然后使用 http_access 選項允許該列表
acl auth_user proxy_auth REQUIRED
http_access allow auth_user

體驗:
- 在沒有開啟用戶名密碼認證時,能成功地只允許某些 IP 訪問代理服務器,并且屏蔽掉客戶端的信息。
- 當開啟用戶名密碼認證時,只要驗證成功,無論 IP 是什么,都能夠使用代理服務器。

驗證方法:
瀏覽器菜單 – 工具 – Internet選項 – 連接 – 局域網設置 – 勾選“為LAN使用代理服務器”,輸入代理服務器的IP和端口

然后看是否能正常瀏覽網頁,如果是通過用戶名密碼驗證的,則會跳出驗證框,如果不在IP允許列表里,則顯示的頁面是禁止訪問。

轉載于:https://blog.51cto.com/tetop/671354

總結

以上是生活随笔為你收集整理的CentOS Squid的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。