原创-在Debian 5.0下的使用源代码安装Squid笔记
来源:互联网 发布:手机照片拼图软件 编辑:程序博客网 时间:2024/05/06 15:55
作者:何祖彬[RobinHe] Mail:zubin.he@gmail.com
Skype ID : pto_robin QQ : 57623579
始于2009年3月31日 PM
版本号:Debian-Squid-V1.0-20090331, 2009年3月31日首版
转载请注明出处,谢谢!
本文中难免有不足、遗漏、错别字和句子不通之处,如发现、或者有更新改变之处,请与我联系以及时修正和完善!
系统环境 : Debian GNU/Linux 5.0
使用Squid做成透时代理,让局域网内的用户只能浏览白名单里面的网站。
参考资料:
Squid中文权威指南 : http://blog.s135.com/book/squid/index.html
一,下载并安装squid:
squid的官方网站:www.squid-cache.org
我下载的是3.0的stable13版:
xx:~#cd /usr/local/src
xx:/usr/local/src# wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE13.tar.gz
解压缩:
xx:/usr/local/src# tar -zxvf squid-3.0.STABLE13.tar.gz
xx:/usr/local/src# cd squid-3.0.STABLE13
xx:/usr/local/src/squid-3.0.STABLE13# ./configure –enable-icmp –localstatedir=/mnt/hdb1/squid-cache –prefix=/usr/local/squid
–enable-icmp : icmp支持,暂时没用,以后用时就不要再重新编译安装。
–localstatedir=/mnt/hdb1/squid-cache : 把cache和log文件夹,即数据目录放到空间比较大的硬盘上,因为做为proxy,需要足够的空间存入这些数据以及log。
–prefix=/usr/local/squid : 把squid安装到/usr/local/squid这个目录下。
xx:/usr/local/src/squid-3.0.STABLE13#make
xx:/usr/local/src/squid-3.0.STABLE13#make install
二,配置Squid
a,增加一个squid的用户,以便让squid来运行squid服务,以方便标识:
xx:/usr/local/src/squid-3.0.STABLE13#adduser squid
xx:/mnt/hdb1/squid-cache# cd /usr/local/squid/
#更改cache和log的权限,以便让squid用户对这些目录有扫行权限。
xx:/mnt/hdb1/squid-cache# chown squid:squid /mnt/hdb1/squid-cache -Rf
#初始化squid的cache
xx:/mnt/hdb1# /usr/local/squid/sbin/squid -z
2009/03/31 16:56:09| Creating Swap Directories
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/00
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/01
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/02
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/03
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/04
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/05
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/06
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/07
2009/03/31 16:56:09| Making directories in /mnt/hdb1/squid-cache/cache/08
2009/03/31 16:56:10| Making directories in /mnt/hdb1/squid-cache/cache/09
2009/03/31 16:56:10| Making directories in /mnt/hdb1/squid-cache/cache/0A
2009/03/31 16:56:10| Making directories in /mnt/hdb1/squid-cache/cache/0B
2009/03/31 16:56:10| Making directories in /mnt/hdb1/squid-cache/cache/0C
2009/03/31 16:56:10| Making directories in /mnt/hdb1/squid-cache/cache/0D
2009/03/31 16:56:10| Making directories in /mnt/hdb1/squid-cache/cache/0E
2009/03/31 16:56:10| Making directories in /mnt/hdb1/squid-cache/cache/0F
b,更改相关参数:
xx:pt:/usr/local/squid# vi etc/squid.conf
找到:
# cache_effective_user nobody
改成:
cache_effective_user squid
即设置运行squid的用户名。以便对上面的cache和log有完全的权限。
保存退出。
c,在配置文件中配置自已需要的内容:
找到这一行 :
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
我们可以在这一行下面,在:
http_access deny all
这一行上面编写规则。
要求:只开放内网用户可以使用这个proxy服务,并且只允许访问公司规定访问的网站:
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed
#http_access allow localnet
acl sitelist dstdomain .nba.com .baidu.com #只将sitelist表定义为nba.com和baidu.com域名
http_access deny !sitelist #禁提除sitelist里面以外的域名,请注意"!”
acl ptolan src 192.168.0.0/24
http_access allow ptolan
# And finally deny all other access to this proxy
http_access deny all
注意:根据squid指南中的:
域名ACL有点深奥,因为相对于匹配域名和子域有点微妙的差别。当ACL域名以"."开头,squid将它作为通配符,它匹配在该域的任何主机名,甚至域名自身。相反的,如果ACL域名不以"."开头,squid使用精确的字符串比较,主机名同样必须被严格检查。
我少了域名前面的".",让我伤了好久的脑筋和时间。幸亏回头认真看了手册。
d,启动和停止squid服务:
启动:xx:~# /usr/local/squid/sbin/squid
停止:xx:~# /usr/local/squid/sbin/squid -k shutdown
三,研究透明代理的做法,结合路由器,最好在客户端不做改变就可以实现屏蔽。
http_port 60128 transparent
iptables
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/24 -p tcp -j REDIRECT --to-port 60128
…未完待续…
- 原创-在Debian 5.0下的使用源代码安装Squid笔记
- 原创-在Debian 5.0下的使用源代码安装Squid笔记(第二版)
- 原创-在Debian 5.0下的使用源代码安装LAMP笔记[完整版]
- 原创-在Debian 5.0下的使用源代码安装LAMP笔记[完整版]
- 原创-在Debian 5.0下的使用源代码安装LAMP笔记[完整版,带HTTPS]
- 在Debian 5.0下源代码安装openwebmail 2.53笔记
- 原创-在Debian下安装ftp-proxy笔记
- 在Debian下安装使用Windows下的字体
- 原创 在Debian 4.0 rc3 上安装Subversion 1.5笔记
- 原创 : 在Ubuntu 9.04 Server版下源代码安装Nginx+Mysql+PHP笔记[第二版]
- dokuwiki在debian下的安装
- Debian或Ubuntu下squid的安装与基本配置(已验证) - [服务器区]
- Debian或Ubuntu下squid的安装与基本配置(已验证)
- centos下squid的安装
- Debian下安装Nginx笔记
- 在debian下安装GNUstep
- 在colinux下安装debian
- 在debian下安装Nodejs
- 在树型控件中移动鼠标产生字体及颜色的变化
- 合同相关
- [双语阅读]调查:“奔三女”重爱情轻事业
- 合并&收购常用英语
- 牟取最大利益 Cream off
- 原创-在Debian 5.0下的使用源代码安装Squid笔记
- [英语阅读]美汽车业洗牌 全球股市跳水
- 回来了
- 小心背后有鬼 watch your back
- 许巍邀请朴树做演唱会做特邀嘉宾
- [双语阅读]日本传统男士内衣“褌”成女性新宠
- c++ 学习 -- 复制构造函数
- sharepoint site template总结(1)-------自定义stie template
- 俄文编码与gb2312