一、确保Linux 系统中装有NET-SNMP 协议
1.Net-snmp 获取与安装
NET-SNMP官方网站:[url]http://www.net-snmp.org/[/url]
# tar zxvf net-snmp-5.2.4.tar.gz
# cd net-snmp-5.2.4
# ./configure –prefix=/usr/local/net-snmp --enable-developer --with-mib-modules="host agentx examples/example"
# make
# make install
# ln –s /usr/local/net-snmp/bin/* /usr/local/bin/
或使用环境变量:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/net-snmp/bin:/usr/local/net-snmp/sbin"
# cp EXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf
2.Net-snmp 的配置
# vi /etc/rc.d/rc.local
//在rc.local上加入一行/usr/local/net-snmp/sbin/snmpd &,系统启动时启动SNMP服务。
修改snmpd.conf 文件,community 为你自定义的snmp字符串,source为允许访问的网络来源,必须指定,否则无法被监控
vi /usr/local/net-snmp/share/snmp/snmpd.conf
把这句
com2sec local localhost COMMUNITY
com2sec mynetwork NETWORK/24 COMMUNITY
改为
com2sec local localhost public
com2sec mynetwork 192.168.1.0/24 public
//192.168.1.0为snmp这台机器所以的网段(注意:不充许为192.168.1.1)
3.Net-snmp 常用命令
# /usr/local/net-snmp/sbin/snmpd //启动SNMP服务
##########################################################
用如下命令测试:
snmpget -v 1 -c public localhost system.sysUpTime.0
snmpwalk -v 1 -c public localhost system
查看日志:
tail -f /var/log/snmpd.log
#########################################################
控制台显示日志
snmptrapd -f -Le -d -M /usr/local/net-snmp/share/snmp/mibs -m ALL
#########################################################
1.启动snmpd服务
#/usr/local/sbin/snmpd -d
//snmptrapd的启动类似
2.重启snmpd服务
#/etc/rc.d/init.d/snmpd restart
3. 系统启动时启动SNMP服务
#vi /etc/rc.d/rc.local
//在rc.local上加入一行/usr/local/net-snmp/sbin/snmpd,系统启动时启动SNMP服务。
4.重启snmpd服务
#cd /etc/rc.d/init.d
#snmpd restart
或#service snmpd restart
二、Squid
1.检查linux是否存在squid老版本
# rpm -qa|grep squid
# rpm -e squid //删除squid老版本
2.Squid 获取与安装
wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE18.tar.gz
# tar -zxvf squid-3.0.STABLE18.tar.gz
# cd squid-3.0.STABLE18
# ./configure --prefix=/usr/local/squid --sysconfdir=/usr/local/squid/etc/ --bindir=/usr/local/squid/bin --sbindir=/usr/local/squid/sbin --mandir=/usr/local/squid/share/man --enable-gnuregex --enable-carp --enable-async-io=80 --enable-removal-policies=heap,lru --enable-icmp --enable-delay-pools --enable-useragent-log --enable-referer-log --enable-kill-parent-hack --enable-snmp --enable-arp-acl --enable-htcp --enable-cache-digests --enable-default-err-language=Simplify_Chinese --enable-err-languages="Simplify_Chinese" --enable-poll --enable-linux-netfilter --disable-ident-lookups --enable-underscores --enable-auth="basic" --enable-basic-auth-helpers="NCSA" --enable-external-acl-helpers="ip_user" --enable-x-accelerator-vary
# make
# make install
# cd ./helpers/basic_auth/NCSA/
# make
# cp ncsa_auth /usr/sbin/
# htpasswd -c /usr/local/squid/password <用户名>
./configure --prefix=/usr/local/squid \ #指定squid安装目录
--mandir=/usr/local/squid/share/man \ #指定man的安装目录
--enable-async-io=20 \ #采用同步io提高性能,负载高可设大点
--disable-icmp \ #禁止icmp协议代理(默认不允许)
--enable-delay-pools \ #允许延迟限止带宽
--enable-cache-digests \ #允许缓存摘要,可以加快请求缓冲内容的速度(集群用)
--enable-snmp \ #允许snmp协议支持(如用mrtg进行流量监控等)
--disable-ident-lookups \ #禁止使用RFC931识别
--enable-epoll \ #支持epoll的IO模式,2.6以上内核才具有
--enable-basic-auth-helpers="NCSA" #允许带密码验证,NCSA 风格的用户名和密码档
--enable-linux-netfilter #允许透明代理
--enable-arp-acl #允许基于MAC地址的存取过滤
--enable-err-language="Simplify_Chinese" #支持的错误语言
--enable-default-err-language="Simplify_Chinese" #指定默认的错误语言
3.Squid 配置
# mv -f /usr/local/squid/etc/squid.conf /usr/local/squid/etc/squid.conf.bak
# vi /usr/local/squid/etc/squid.conf
http_port 192.168.253.8:3128 transparent
icp_port 3130
cache_dir aufs /usr/local/squid/var/cache 25000 16 256
cache_access_log /usr/local/squid/var/logs/access.log
cache_log /usr/local/squid/var/logs/cache.log
cache_store_log /usr/local/squid/var/logs/store.log
pid_filename /usr/local/squid/var/logs/squid.pid
http_access deny all
http_access allow all
cache_effective_user nobody
cache_effective_group nobody
cache_mgr x_liyajun@aspire-tech.com
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 161 # multiling http
acl CONNECT method CONNECT
http_access allow all
##########################################################
#acl snmpManager 192.168.253.8/255.255.255.255
acl localhost src 127.0.0.1/32
snmp_port 3401
acl snmppublic snmp_community public
snmp_access allow snmppublic localhost
# mkdir -p /usr/local/squid/var/cache
# chown -R nobody:nobody /usr/local/squid/var
#初始化你在 squid.conf 里配置的 cache 目录
# cd /usr/local/squid/var
# squid –z
各种启动方式如下:
#squid -k parse #检查配置是否有错误,没有任何输出,证明配置基本是正确的!!!
#squid -zX #可以加一个X参数,看看初始化具体的项目.
#squid –D #如果因为DNS无法启动squid,可以用下面的命令启动squid
# squid -NCd1 #如果运行正常,终端会显示“Ready to serve requests”
另一份squid.config
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
auth_param basic program /usr/sbin/ncsa_auth /usr/local/squid/password
acl normal proxy_auth REQUIRED
http_access allow normal
# Deny requests to certain unsafe ports
http_access deny !Safe_ports
# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports
# And finally deny all other access to this proxy
http_access deny all
# Squid normally listens to port 3128
http_port 3128
# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?
# Uncomment and adjust the following to add a disk cache directory.
#cache_dir null /tmp
# Leave coredumps in the first cache dir
coredump_dir /usr/local/squid/var/cache
# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
4.Squid 测试
用下面的命令测试:
# snmpwalk -v1 -c public 127.0.0.1:3401 .1.3.6.1.4.1.3495.1
如果能看到类似下面的信息,说明成功了。
SNMPv2-SMI::enterprises.3495.1.1.1.0 = INTEGER: 16360
SNMPv2-SMI::enterprises.3495.1.1.2.0 = INTEGER: 21626872
有因为默认snmp是使用161端口的,而squid的snmp开启的是3401端口,如果想直接通过snmp端口就可以取到squid的相关信息,可以在snmpd.conf中加入
view systemview included .1.3.6.1.4.1.3495.1
proxy -v 1 -c public localhost:3401 .1.3.6.1.4.1.3495.1
用下面的命令测试:
snmpwalk -v1 -c public 127.0.0.1 .1.3.6.1.4.1.3495.1
如果能看到类似下面的信息,说明成功了。
SNMPv2-SMI::enterprises.3495.1.1.1.0 = INTEGER: 16360
SNMPv2-SMI::enterprises.3495.1.1.2.0 = INTEGER: 21626872
5.Squid 常用命令
1,对你的squid.conf 排错,即验证 squid.conf 的语法和配置。
#squid -k parse
如果squid.conf 有语法或配置错误,这里会返回提示你,如果没有返回,恭喜,可以尝试启动squid。
2,在前台启动squid,并输出启动过程。
#squid -N -d1
如果有到 ready to server reques,恭喜,启动成功。
然后 ctrl + c,停止squid,并以后台运行的方式启动它。
3,启动squid在后台运行。
#squid -s
这时候可以 ps -A 来查看系统进程,可以看到俩个 squid 进程。
4,停止 squid
#squid -k shutdown
这个不用解释吧。
5,重引导修改过的 squid.conf
#squid -k reconfigure
6.Squid 其他
1,把squid添加到系统启动项
编辑 /etc/rc.d/rc.local
添加如下行: /usr/local/squid/sbin/squid -s
当然,并不是每个人都喜欢这种启动方式,你可以用你最习惯的方式;或者把它安装为服务。
2,修改cache 缓存目录的权限。
#chown -R nobody:nobody /home/cache
我的cache缓存目录是 /home/cache, nobody执行用户和用户组是nobody,nobody。
3,修改squid 日志目录的权限
#chown -R squid:squid /usr/local/squid/var/logs
这一步并不是适合每一个使用squid的用户.意为让squid有权限在该目录进行写操作。
例如生成 access.log cache.log store.log
4,查看你的日志文档。
#more /usr/local/squid/var/logs/access.log | grep TCP_MEM_HIT
该指令可以看到在squid运行过程中,有那些文件被squid缓存到内存中,并返回给访问用户。
#more /usr/local/squid/var/logs/access.log | grep TCP_HIT
该指令可以看到在squid运行过程中,有那些文件被squid缓存到cache目录中,并返回给访问用户。
#more /usr/local/squid/var/logs/access.log | grep TCP_MISS
该指令可以看到在squid运行过程中,有那些文件没有被squid缓存,而是现重原始服务器获取并返回给访问用户。
7.Squid.conf 配置实例
8.Squid.conf 配置说明
lSquid配置(仅对必要选项配置并说明):
http_port 80
此选项用于Squid代理所侦听的端口,由于要实现Http加速代理,则侦听端口80
tcp_outgoing_address 255.255.255.255
此句法指定了远程服务器的IP地址,这里我们使用255.255.255.255来指定为所有地址
tcp_incoming_address
这里可以使用http_port语法进行绑定端口和IP地址。表示客户端的请求。可以不使用。
cache_mem 64 MB
由于Squid在读写磁盘,I/O通道,数据转贮等需要大量内存,我们可以把内存值稍微设置大一些,这样可以提供服务器性能。
cache_swap_low 95
这用做表示缓存内部对象的替换的衡量基线。当交换分区的磁盘利用率超越这个基线,那么缓存对象替换也就随之开始。这里是用百分率做衡量标准。
cache_swap_high 98
此标记用于缓存对象替换的最高程度,当交换分区磁盘利用率接近此设置,则表示对象的更新程度更为剧烈。这里由于我的缓存区设置比较大,因此设置为98%。
下面几个配置标记采用系统默认配置。
{ maximum_object_size 4096 KB
{ 超过此尺寸的对象将不缓存。
{ minimum_object_size 0 KB
{ 小于此尺寸的对象将不缓存。
{ maximum_object_size_in_memory 8 KB
{ 内存中能缓存的最大对象尺寸。
{ ipcache_size 1024
{ 指定IP缓存大小。
{ ipcache_low 90
{ 缓存IP地址的最低基线。
{ ipcache_high 95
{ 缓存IP地址的最高极限。
{ fqdncache_size 1024
{ 缓存DNS全域名解析的尺寸。
cache_replacement_policy lru
此标记用于当缓存新对象时,使用缓存策略来清除缓存中特定对象。这里使用lru表示:它只替换长时间没有被访问过的对象。其他策略请参看配置文档介绍。
memory_replacement_policy lru
此用法同上,区别在于替换内存对象。
cache_dir ufs /cache 4000 16 256
设置缓存根目录为/cache,类型为ufs,缓存区大小为4G,可以有16个二级子目录,每有二级目录有256个三级子目录。
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
cache_swap_log /var/log/squid/swap.log
上面几项是缓存日志记录的路径和文件名。
log_ip_on_direct on
记录客户端主机的IP地址。
log_fqdn on
记录全DNS域名解析。
mime_table /usr/local/squid/etc/mime.conf
Squid所用mime的文件路径
pid_filename /usr/local/squid/logs/squid.pid
Squid进程ID的文件。
ftp_user Squid@ynst.net.cn
这里可以使用匿名登陆FTP服务器。
ftp_list_width 32
FTP文件列表长度,超过长度则截断文件名。
ftp_passive on
允许主动连接FTP服务器。
dns_nameservers 202.98.187.1
指定代理的域名解析服务器。
authenticate_program /usr/local/squid/bin/ncsa_auth
/usr/local/squid/etc/passwd
代理认证程序,这里在/usr/local/squid/etc使用htpasswd产生一个密码文件,具体方法如下:
#htpasswd –cdb passwd auth_usr1 pass1
#htpasswd –db passwd auth_usr2 pass2
#htpasswd –db passwd auth_usr3 pass3
创建passwd文件,并添加auth_usr1,auth_usr2,auth_usr3三个认证用户。
authenticate_children 5
所需要要产生的认证进程数。
authenticate_ttl 3600
此标记设置认证保持时间。
authenticate_ip_ttl 1800
此标记设置认证绑定IP地址的时间长度。
authenticate_ip_ttl_is_strict on
此标记可在authenticate_ttl时间内,拒绝其他非认证IP地址访问。
request_header_max_size 10 KB
request_body_max_size 1 MB
设置了Http请求的包头和数据大小。
request_body_max_size 0
这里,请求所返回的数据大小为0,意义为没有任何限制。
connect_timeout 180 seconds
read_timeout 15 minutes
request_timeout 20 seconds
上面几项是代理服务几个超时设置,这里使用配置文件默认值。
下面是访问控制列表一些配置,这里对访问的IP地址,域名,访问类型极其访问代理的权限做的限制:
acl acldomain dstdomain .ynst.net.cn
acl acceleratedport port 80
acl acceleratedhost dst 202.98.187.17/255.255.255.255
acl aclprotocol proto HTTP FTP
acl aclmethod method GET POST
acl aclauth proxy_auth required
(注:这里使用required表示任何passwd文件中存在的合法用户才授予访问权限。)
acl aclsnmp snmp_community secrect
MRTG可以使用snmp协议检测此代理服务运行状态。
acl aclconn maxconn 20
可并行连接的最大数量。
启用定义的访问控制列表
http_access allow manager localhost
http_access deny manager
http_access allow aclauth
http_access allow acceleratedport acceleratedhost
http_access deny all
下面为缓存管理设置
cache_mgr admin@ynst.net.cn
设置缓存管理者的接受邮件地址。
cache_effective_user squidusr
cache_effective_group squidgrp
设置执行Squid的用户和用户组。
{注:设置用户和用户组及其权限修改方法如下:
#groupadd squidgrp
#useradd –g squidgrp –d /home/squidusr squidusr
修改log日志权限属性,使squidusr有写权限。
#chown squidusr /var/log/squid
#chgrp&
9.Squid命中率分析
/usr/local/squid/bin/squidclient -p 80 mgr:info
/usr/local/squid/bin/squidclient -p 80 mgr:5min
可以看到详细的性能情况,其中PORT是你的proxy的端口,5min可以是60min
取得squid运行状态信息: squidclient -p 80 mgr:info
*取得squid内存使用情况: squidclient -p 80 mgr:mem
*取得squid已经缓存的列表: squidclient -p 80 mgr:objects . use it carefully,it may crash
*取得squid的磁盘使用情况: squidclient -p 80 mgr:diskd
*强制更新某个url:squidclient -p 80 -m PURGE http://www.xxx.com/xxx.php
*更多的请查看:squidclient-h 或者 squidclient -p 80 mgr:
查命中率:
/usr/local/squid/bin/squidclient -h 111.222.111.111 -p80 mgr:info
/usr/local/squid/bin/squidclient -h具体的IP -p80 mgr:info
(我们一般都会把squid配置成有缓存目录的模式,也就是有配置cache_dir目录,当squid应用运行了一段时间以后,cache_dir对应的swap.state文件就会变得越来越大,里面的无效接口数据越来越多,这可能在一定程度上影响squid的响应时间,此时我们可以使用rotate命令来使squid清理swap.state里面的无效数据,减少swap.state的大小。具体命令格式:
/path/to/squid/sbin/squid -k rotate -f /path/to/squid/conf_file
但是在3.0.7以前的版本都发现一些问题,rotate完以后启动DNSSERVER的时候会提示不能分配内存,从而导致DNSSERVER的辅助进程不能启动,此时一般情况下需要重启squid应用。)
10.Squid 排错
检查缓存目录中的cache.log文件可以判断squid工作是否正常。此文件包含squid运行时产生的输出信息和错误信息。
三安装sarg
# mkdir /usr/local/sarg
# tar zxvf sarg-2.2.5.tar.gz
# cd sarg-2.2.5
# ./configure --prefix=/usr/local/sarg --enable-mandir=/usr/local/sarg/man --enable-bindir=/usr/local/sarg/bin
# make
# make install
# vi /usr/local/sarg/sarg.conf
language english //指定网页报告文件的语言类型,不支持中文网页。
access_log /usr/local/squid/var/logs/access.log //指定squid日志文件绝对路径。
title "squid user access reports" //指定网页标题
output_dir /usr/local/apache/htdocs/sarg //指定网页报告文件输出路径
overwrite_report no //是否覆盖报告,当那个日期的报告已经存在时是否覆盖掉
mail_utility mail
topsites_num 100
exclude_codes /usr/local/sarg/exclude_codes
max_elapsed 28800000
charset UTF-8
exclude_hosts /usr/local/sarg/norecords //指定不计入排序的站点列表文件名
resolve_ip no
user_ip no //使用用户名显示
# vi /usr/local/sarg/norecords //添加不计排序站点
google.com
microsoft.com
baidu.com
# /usr/local/sarg/bin/sarg //生成报表
# vi/root/sarg-hour.sh //每小时生成
#!/bin/bash
#hour
Date=$(date -d "1 hours ago " +"%y%m%d%H")
/usr/local/squid/sbin/squid -k rotate
sleep 10
Squiddir='/usr/local/squid/var/logs'
Access='access.log.*'
/bin/mv ${Squiddir}${Access} ${Squiddir}access${Date}.log
/usr/local/sarg/bin/sarg -o /usr/local/apache/htdocs/hours -l ${Squiddir}access${Date}.log
#chmod a+x /root/sarg-hour.sh
# crontab -e
0 8,9,10,11,12,13,14,15,16,17,18,19,20 * * * /root/sarg-hour.sh
# vi /root/sarg-day.sh
#!/bin/bash
#day
Squiddir='/usr/local/squid/var/logs'
Date=$(date -d "1 day ago " +"%y%m%d")
/bin/sort -m -t " " -k 1 -o $Squiddir${Date}log_all.log ${Squiddir}access${Date}*.log
/bin/rm access${Date}*.log -rf
/usr/local/sarg/bin/sarg -o /usr/local/apache/htdocs/days -l ${Squiddir}${Date}log_all.log
# chmod a+x /root/sarg-day.sh
# crontab -e
20 1 * * * /root/sarg-day.sh
# vi /root/sarg-week.sh
#!/bin/bash
#week
Date=$(date -d "1 week ago " +"%y%m%d")
YESTERDAY=$(date –date "1 week ago" +%d/%m/%Y)
/bin/sort -m -t " " -k 1 -o $Squiddir${Date}weeklog_all.log ${Squiddir}*log_all.log
/usr/local/sarg/bin/sarg -o /usr/local/apache/week -l ${Squiddir}${Date}weeklog_all.log
# chmod a+x /root/sarg-week.sh
# crontab -e
40 * * * 5 /root/sarg-week.sh
或者 //每十分钟生成一次日志
# crontab -e
*/10 * * * * /usr/local/sarg/bin/sarg > /dev/null 2>&1
相关推荐
Squid是一款广泛应用的开源代理缓存服务器,它可以帮助提高网络访问速度,减轻服务器负载。透明代理则是指用户在使用网络时,无感知地通过代理服务器进行访问。而Squid与ICAP(Internet Content Adaptation Protocol...
Linux Squid管理界面是针对Squid网络代理服务器的一个重要工具,它提供了用户友好的图形化界面,使得管理员能够更加方便地管理和配置Squid。Squid是一款广泛使用的开源缓存代理软件,用于提高网络访问速度并降低...
### Squid 缓存服务器研究 #### 一、Squid 概述 Squid 是一款广泛应用于互联网数据缓存的开源软件。其主要功能是接收来自客户端的请求,并根据请求内容,从远程服务器获取数据后缓存至本地。当下次再次请求相同的...
### Squid 文件上传大小配置详解 #### 一、引言 在互联网应用中,代理服务器是一种常见的技术手段,用于提供安全、高效的网络访问服务。Squid 作为一款开源的高性能代理缓存软件,在众多场景中得到了广泛的应用。...
《Squid代理服务器详解与应用》 Squid是一个广泛应用的开源代理服务器,其最新版本为3.5.28。在互联网访问控制、内容缓存和性能优化等方面,Squid扮演着至关重要的角色。本文将深入探讨Squid的基本概念、功能特性...
### Squid 代理服务器启动时常见错误解析及解决方法 #### 概述 Squid 是一款广泛使用的开源代理缓存服务器,它能够为局域网内的用户提供更快的Web访问速度,并通过缓存机制减轻对外部网络的带宽压力。在安装与配置...
在这个场景中,"squid"和"nginx"都是流行的开源软件,它们可以被配置为正向代理来转发请求到API接口。下面我们将深入探讨这两个工具以及如何配置它们。 首先,让我们了解一下 Squid。Squid 是一个高性能的代理缓存...
在Linux环境中,Squid是一个常用的代理服务器和缓存服务器,它可以提高网络访问速度并实现内容过滤。在本文中,我们将详细介绍如何在Linux系统中安装、配置、卸载Squid,以及安装和配置SNMP(简单网络管理协议)。 ...
** squid-2.7.STABLE9 ** Squid是一个广泛使用的开源代理缓存服务器,专为提高网络性能和提供安全访问控制而设计。在2.7.STABLE9这个版本中,它代表了Squid在用C语言编写的最后一个稳定分支。这个版本因其稳定性、...
5. Squid request status (TCP_MISS etc):表示Squid服务器对请求的处理状态,包括TCP_MISS、TCP_HIT、TCP_REFRESH_HIT等。 6. HTTP status code:表示HTTP的状态代码,例如200 OK、404 Not Found等。 7. Reply ...
5. **访问控制**:Squid的访问控制通过`/etc/squid/squid.conf`中的ACL(Access Control List)实现,可以根据IP地址、子网或时间范围限制用户的访问权限。 6. **缓存策略**:Squid支持多种缓存策略,如基于内容...
### Squid Windows版架设二级代理服务器 #### 概述 在本文中,我们将详细介绍如何在Windows环境下配置Squid作为二级代理服务器的过程。通过设置Squid为二级代理,可以实现更高效的网络访问和资源管理。下面将从...
本报告对比了Squid、Varnish和Ngx_cache三款缓存软件的性能。首先,从测试环境来看,本次测试所使用的Squid、Ngx_cache(也就是Varnish)、Nginx_cache均运行在具有单硬盘资源的服务器上,并为缓存分配了180G的存储...
本人在工作中维护着数台Squid服务器,多次参阅Duane Wessels(他也是Squid的创始人)的这本书,原书名是"Squid: The Definitive Guide",由O'Reilly出版。我在业余时间把它翻译成中文,希望对中文Squid用户有所帮助...
10.Squid 排错如果遇到问题,查看Squid的日志文件(默认为`/var/log/squid/access.log`和`/var/log/squid/cache.log`)以获取错误信息。使用`grep`或`less`命令筛选相关错误。 总结,安装和配置Squid需要对Linux...
《Squid中文权威指南》是一本专注于Squid缓存代理服务器的详细教程,旨在帮助读者深入理解和高效使用这款开源软件。Squid作为一款广泛应用于Linux环境的网络代理服务器,其主要功能是提高网络访问速度,节省带宽,...
Squid是一个广泛使用的开源代理服务器,主要用于网络缓存,以提高网络访问速度并减轻服务器负载。Squid 3.5.25是该软件的一个稳定版本,它包含了多种功能改进和错误修复,适用于企业级环境。在这个版本中,我们主要...
4. 编译安装 Squid:使用 configure 命令来配置 Squid,例如 `# ./configure -prefix=/usr/local/squid`,然后使用 make 命令编译 Squid,例如 `# make`,最后使用 make install 命令安装 Squid,例如 `# make ...
对Squid源代码进行深入分析有助于我们理解其内部工作原理,优化性能,或者根据特定需求进行定制化开发。 在Squid源代码中,我们可以发现以下几个关键知识点: 1. **网络通信机制**:Squid采用事件驱动模型,如I/O...