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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

squid代理缓存

發(fā)布時間:2025/3/21 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 squid代理缓存 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Squid代理緩存
Squid源碼安裝:
tar xf squid-3.5.27.tar.gz //包要自己傳或下載
yum -y install \
gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl
yum install perl-devel
cd /squid-3.5.27/
./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
make && make install
ln -s /usr/local/squid/sbin/* /usr/local/sbin
useradd -M -s /sbin/nologin squid
chown -R squid:squid /usr/local/squid/var/
vi /etc/squid.conf
http_port 3128 //在下面新增
visible_hostname 192.168.100.10
cache_mem 64 MB
cache_swap_low 80
cache_swap_high 97
cache_dir ufs /usr/local/squid/var/cache/squid 512 16 256 //配置硬盤緩存,打開#.緩存目錄512M,其中一級目錄16個,二級256個
cache_effective_user squid
cache_effective_group squid
squid -k parse //檢查配置文件

squid –k rec //重新加載配置文件

squid -zX //初始化緩存目錄
制作啟動腳本
vi /etc/init.d/squid

#!/bin/bash
#chkconfig: 35 90 25
#config: /etc/squid.conf
#pidfile: /usr/local/squid/var/run/squid.pid
#Description: Squid - Internet Object Cache

PID="/usr/local/squid/var/run/squid.pid"
CONF="/etc/squid.conf"
CMD="/usr/local/squid/sbin/squid"

case "$1" in
start)
netstat -utpln | grep squid &>/dev/null
if [ $? -eq 0 ]
then
echo "Squid is running"
else
$CMD
fi
;;
stop)
$CMD -k kill &>/dev/null
rm -rf $PID &>/dev/null
;;
status)
[ -f $PID ] &>/dev/null
if [ $? -eq 0 ]
then
netstat -utpln | grep squid
else
echo "Squid is not running"
fi
;;
restart)
$0 stop &>/dev/null
echo "正在關(guān)閉Squid..."
$0 start &>/dev/null
echo "正在啟動Squid..."
;;
reload)
$CMD -k reconfigure
;;
check)
$CMD -k parse
;;
*)
echo "用法:{start | stop | restart | reload | check | status}"
Esac
chmod +x /etc/init.d/squid
chkconfig --add squid
chkconfig squid on
service squid start
netstat -anpt | grep 3128

透明緩存原理圖:

配置squid服務(wù)器內(nèi)網(wǎng)卡ens33,外網(wǎng)卡ens37
內(nèi):192.168.100.10
外:12.0.0.1 //無網(wǎng)關(guān)
web服務(wù)器:12.0.0.100 網(wǎng)關(guān)12.0.0.1
客戶:192.168.100.7 網(wǎng)關(guān)192.168.100.10
Squid服務(wù)器配置:
路由轉(zhuǎn)發(fā)功能開啟:
cd /proc/sys/net/ipv4
將 echo 1 > ip_forward 值改為1
[root@localhost ipv4]# vi /etc/squid.conf
將http_port 3128 改為http_port 192.168.100.10:3128 transparent
[root@localhost ipv4]# service squid restart
[root@localhost ipv4]# netstat -anpt | grep 3128
tcp 0 0 192.168.100.10:3128 0.0.0.0: LISTEN 2627/(squid-1)
[root@localhost ipv4]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 //squid自己就是服務(wù)器不需要網(wǎng)關(guān) vmnet1
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=11760568-1042-45fd-8c3e-cddf5b90678e
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.100.10
NETMASK=255.255.255.0
[root@localhost ipv4]# cat /etc/sysconfig/network-scripts/ifcfg-ens37 //cp ifcfg-ens33 ifcfg-ens37 自己復(fù)制過來改成以下 記得修改vmnet2
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens37
DEVICE=ens37
ONBOOT=yes
IPADDR=12.0.0.1
NETMASK=255.255.255.0
[root@localhost ipv4]# iptables -F
[root@localhost ipv4]# iptables -t nat -I PREROUTING -i ens33 -s 192.168.100.0/24 -p tcp --dport 80 -j REDIRECT --to 3128
[root@localhost ipv4]# iptables -t nat -I PREROUTING -i ens33 -s 192.168.100.0/24 -p tcp --dport 443 -j REDIRECT --to 3128
[root@localhost ipv4]# iptables -I INPUT -p tcp --dport 3218 -j ACCEPT
配置web httpd服務(wù):

這里記得修改網(wǎng)卡,vmnet2


Vm虛擬機(jī)網(wǎng)卡配置:



Client端widows7網(wǎng)卡配置如下:

Client端網(wǎng)頁訪問12.0.0.100

查看squid服務(wù)器日志:cat /usr/local/squid/var/logs/access_log

配置sarg日志分析軟件--用來分析squid服務(wù)的日志
注意:需要在代理服務(wù)器上安裝WWW服務(wù)器
[root@localhost sarg-2.3.11]# yum install httpd gd -y
[root@localhost sarg-2.3.11]# systemctl restart httpd
[root@localhost sarg-2.3.11]# tar xf sarg-2.3.11.tar.gz
[root@localhost sarg-2.3.11]# cd sarg-2.3.11
[root@localhost sarg-2.3.11]# ./configure --prefix=/usr/local/sarg --sysconfdir=/etc/sarg --enable-extraprotection
[root@localhost sarg-2.3.11]# make && make install
[root@localhost sarg-2.3.11]# vi /etc/sarg/sarg.conf 去掉#號修改的地方修改
7 access_log /usr/local/squid/var/logs/access.log //squid的訪問日志位置
25 title "Squid User Access Reports" //網(wǎng)頁標(biāo)題
120 output_dir /var/www/html/squid-reports //分析報告的存放位置
178 user_ip no //不使用IP代替用戶ID
184 topuser_sort_field BYTES reverse //升序排列
190 user_sort_field BYTES reverse
206 exclude_hosts /usr/local/sarg/noreport //設(shè)置不生成報告的主機(jī)
257 overwrite_report no
289 mail_utility mailx //指定發(fā)郵件命令
434 charset UTF-8
518 weekdays 0-6 //指定top排序星期周期
523 hours 7-12,14,16,18-20 //指定top排序時間周期
633 www_document_root /var/www/html //網(wǎng)頁根目錄
[root@localhost sarg-2.3.11]# touch /usr/local/sarg/noreport //建立不生成報告的主機(jī)列表文件
[root@localhost sarg-2.3.11]# ln -s /usr/local/sarg/bin/sarg /usr/local/bin/
[root@localhost sarg-2.3.11]# sarg //訪問幾次會有記錄
SARG: Records in file: 627, reading: 100.00%
SARG: Successful report generated on /var/www/html/squid-reports/2019Jan10-2019Jan10
訪問:http://192.168.100.10/squid-reports/ //訪問日志頁

配置反向代理:當(dāng)外網(wǎng)主機(jī)訪問緩存服務(wù)器外網(wǎng)口址時,實現(xiàn)內(nèi)網(wǎng)調(diào)度,同時可以緩存提速,保護(hù)內(nèi)網(wǎng)服務(wù)器
[root@localhost ~]# vi /etc/squid.conf
http_port 192.168.100.10:80 accel vhost vport
cache_peer 192.168.100.20 parent 80 0 no-query originserver round-robin max_conn=30 weight=1 name=web1
cache_peer 192.168.100.30 parent 80 0 no-query originserver round-robin max_conn=30 weight=1 name=web2
cache_peer_domain web1 web2 www.aa.com //添加
*修改真機(jī)host文件

192.168.100.20 www.aa.com
192.168.100.30 www.aa.com

[root@localhost ~]# service squid restart
[root@localhost ~]# netstat -anpt | grep squid
tcp 0 0 192.168.100.10:80 0.0.0.0: LISTEN 980/(squid-1)
在客戶端測試效果:www.aa.com
**注意internet選項打開代理選項



自動輪詢,反向代理成功!

轉(zhuǎn)載于:https://blog.51cto.com/13871456/2340958

總結(jié)

以上是生活随笔為你收集整理的squid代理缓存的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。