squid.conf的设置选项
时间:2009-04-26 来源:zhmysh
1.主要设置选项:
http_port 192.168.0.1:8080
#http_port 192.168.1.1:8080 squid可以监听多个网段
#指定代理服务器监听的IP和端口;(注意:请不要把监听的端口改为80,给为80在实现透明代理的时候可能会发生冲突)
cache_mem 128 MB
# cache_mem 并不是指我要使用多少内存给 squid 使用,而是指 "我还要额外提供多少内存给 squid 使用" 的意思!因此,假设有 X GB 的磁盘空间,而且 squid 程序使用掉 15 MB 的内存,那么我 squid 使用掉的内存就有:
X * 10 + 15 + "cache_mem 设定值"
cache_dir ufs /var/spool/squid 4096 16 256
#设置硬盘缓冲的大小(一般都使用ufs这种存储类型,指定存储位置、大小、第一级目录数、第二级目录数),编译时加 --enable-async-io 这一个参数,将可以增加 aufs 这一个存储类型,可以提高硬盘的读写速度;
cache_effective_user squid
#设定使用缓存的有效用户;
cache_effective_group squid
设定使用缓存的有效组;
dns_nameservers 210.21.4.130
#定义DNS服务器的地址;
cache_access_log /var/log/squid/access.log
#设置访问日志;
cache_log /var/log/squid/cache.log
#设置缓存日志;
cache_store_log /var/log/squid/store.log
#设置网页缓存日志;
visible_hostname 192.168.0.1
#设置运行squid主机的名称;
cache_mgr E-Mail
#设置管理员的 E-Mail地址;
透明代理的实现,以下是实现透明代理4条语句,缺一不可!
httpd_accel_host virtual
#虚拟主机模式;
httpd_accel_port 80
#要求加速的端口
httpd_accel_with_proxy on
#把此选项设置成‘on’后,Squid即是Web请求的加速器,又是缓存代理服务器;
httpd_accel_uses_host_header on
#把此选项设置成‘on’后,在透明代理模式下,代理服务器的缓存功能才能正确工作;
#如果要使用透明代理必须打开Linux的路由功能,如下:
ech0 "1">/proc/sys/net/ipv4/ip_forward
#打开Linux中的包转发功能
#改变此文件(sysctl.conf)让包转发功能在系统启动以后自动生效;
vi /etc/sysctl.conf
#找到下面语句:
# Controls IP packet forwarding
net.ipv4.ip_forward = 0
#把0改为1,改后如下:
# Controls IP packet forwarding
net.ipv4.ip_forward = 1
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
#打开iptables的NAT功能(eth1是连接外网或者连接Internet的网卡);
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
#端口重定向(eth0是内网的网卡);
service iptables save
#保存iptables的规则;
service iptables restart
#重启iptables
#以下是用来实现访问控制的!
acl 2 src 192.168.0.2
http_access allow 2
#允许192.168.0.2这个ip地址的请求全部通过代理服务器;
acl qq url_regex -i qq.com
http_access deny qq
acl tencent url_regex -i tencent.com
http_access deny tencent
#禁止用户上qq
acl jzxz urlpath_regex -i \.exe$ \.rar$ \.zip$ \.mp3$ \.mp4$ \.rm$ \.wma$ \.rmvb$ \.avi$
http_access deny jzxz
#禁止用户下载以'.exe、.rar、mp3、mp4、.rm'等结尾的文件(注意空格啊!没有空格便失效)
acl all src 192.168.0.1/255.255.255.0
http_access allow all
#设置访问控制列表,让代理服务器接受来自192.168.0这个网段的请求。
#http_port 192.168.1.1:8080 squid可以监听多个网段
#指定代理服务器监听的IP和端口;(注意:请不要把监听的端口改为80,给为80在实现透明代理的时候可能会发生冲突)
cache_mem 128 MB
# cache_mem 并不是指我要使用多少内存给 squid 使用,而是指 "我还要额外提供多少内存给 squid 使用" 的意思!因此,假设有 X GB 的磁盘空间,而且 squid 程序使用掉 15 MB 的内存,那么我 squid 使用掉的内存就有:
X * 10 + 15 + "cache_mem 设定值"
cache_dir ufs /var/spool/squid 4096 16 256
#设置硬盘缓冲的大小(一般都使用ufs这种存储类型,指定存储位置、大小、第一级目录数、第二级目录数),编译时加 --enable-async-io 这一个参数,将可以增加 aufs 这一个存储类型,可以提高硬盘的读写速度;
cache_effective_user squid
#设定使用缓存的有效用户;
cache_effective_group squid
设定使用缓存的有效组;
dns_nameservers 210.21.4.130
#定义DNS服务器的地址;
cache_access_log /var/log/squid/access.log
#设置访问日志;
cache_log /var/log/squid/cache.log
#设置缓存日志;
cache_store_log /var/log/squid/store.log
#设置网页缓存日志;
visible_hostname 192.168.0.1
#设置运行squid主机的名称;
cache_mgr E-Mail
#设置管理员的 E-Mail地址;
透明代理的实现,以下是实现透明代理4条语句,缺一不可!
httpd_accel_host virtual
#虚拟主机模式;
httpd_accel_port 80
#要求加速的端口
httpd_accel_with_proxy on
#把此选项设置成‘on’后,Squid即是Web请求的加速器,又是缓存代理服务器;
httpd_accel_uses_host_header on
#把此选项设置成‘on’后,在透明代理模式下,代理服务器的缓存功能才能正确工作;
#如果要使用透明代理必须打开Linux的路由功能,如下:
ech0 "1">/proc/sys/net/ipv4/ip_forward
#打开Linux中的包转发功能
#改变此文件(sysctl.conf)让包转发功能在系统启动以后自动生效;
vi /etc/sysctl.conf
#找到下面语句:
# Controls IP packet forwarding
net.ipv4.ip_forward = 0
#把0改为1,改后如下:
# Controls IP packet forwarding
net.ipv4.ip_forward = 1
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
#打开iptables的NAT功能(eth1是连接外网或者连接Internet的网卡);
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
#端口重定向(eth0是内网的网卡);
service iptables save
#保存iptables的规则;
service iptables restart
#重启iptables
#以下是用来实现访问控制的!
acl 2 src 192.168.0.2
http_access allow 2
#允许192.168.0.2这个ip地址的请求全部通过代理服务器;
acl qq url_regex -i qq.com
http_access deny qq
acl tencent url_regex -i tencent.com
http_access deny tencent
#禁止用户上qq
acl jzxz urlpath_regex -i \.exe$ \.rar$ \.zip$ \.mp3$ \.mp4$ \.rm$ \.wma$ \.rmvb$ \.avi$
http_access deny jzxz
#禁止用户下载以'.exe、.rar、mp3、mp4、.rm'等结尾的文件(注意空格啊!没有空格便失效)
acl all src 192.168.0.1/255.255.255.0
http_access allow all
#设置访问控制列表,让代理服务器接受来自192.168.0这个网段的请求。
相关阅读 更多 +