您的位置:首页 > 运维架构 > 反向代理

Debian或Ubuntu下squid的安装与基本配置(已验证) - [服务器区]

2009-03-30 16:08 901 查看
转贴自欺欺人:http://linux.blogbus.com/logs/35912092.html

2009-03-01

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://linux.blogbus.com/logs/35912092.html

在debian lenny 5.0安装squid过程,记下来备查。

安装使用 用户名和密码 的squid代理服务器

#安装的过程的具体过程,中间有些反复,大致过程如下
##############################################
#安装squid
$sudo apt-get install squid squid-common
#备份一下/etc/squid/squid.conf
$cd /etc/squid
$ls -al
$sudo mv /etc/squid/squid.conf /etc/squid/squid.conf.old
#更改配置文件 gedit /etc/squid/squid.conf (可以在原文件基础上修改或新建一个squid.conf)

#具体内容为:
####################################################################
##########
http_port 1.2.3.4:8080
cache_mgr webmaster
cache_dir ufs /var/spool/squid 100 16 256
cache_mem 64 MB
cache_swap_low 90
cache_swap_high 95
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
acl passwder proxy_auth REQUIRED
acl all src 0.0.0.0/0.0.0.0
http_access allow passwder
http_access deny all
##############################################################################
#安装htpasswd用于产生用户名和密码,htpasswd包含在apache2-utils里
$sudo apt-cache search htpasswd
#可以看到htpasswd工具包含在apache2-utils里
$sudo apt-get install apache2-utils
#不知道有没有办法单独安装htpasswd?没有仔细看文档,一起安装了
#在squid使用密码和用户名,需要squid的源码来安装NCSA
#下载squid的源码,再安装NCSA
$cd #到自己的目录中去
#下载squid的源码,系统默认的squid版本是squid-2.7.STABLE3
$apt-get source squid
#下载后在目录中有squid-2.7.STABLE3源码目录,
$cd cd /home/sunny/squid-2.7.STABLE3
#编译NCSA组件
$ ./configure --enable-basic-auth-helpers="NCSA"
$make

#这时会在 /home/sunny/squid-2.7.STABLE3/helpers/basic_auth/NCSA/目录生成ncsa_auth文件。
$cp helpers/basic_auth/NCSA/ncsa_auth /usr/lib/squid/
#建立squid cache的目录,默认的目录是/var/spool/squid
#如果要使用其他目录,注意目录的权限
#初始化cache目录
$sudo squid -z
#设置完成
#停止已经开始的squid
$sudo /etc/init.d/squid stop
#重新载入squid.conf文件
$sudo /etc/init.d/squid reload
#开始运行squid
$sudo /etc/init.d/squid start
#使用htpasswd程序来产生用户名密码
#第一次用'-c'来产生/etc/squid/passwd 文件,并设置用户sunny
$sudo htpasswd -c /etc/squid/passwd sunny
#输入两次用户sunny的密码就可以了
#产生其他的用户名和密码时,不要用-c
$sudo htpasswd /etc/squid/passwd usr2
#输入两次用户usr2的密码就可以了
check access: /var/log/squid/access.log

####################################################################另一则供参考
安装很简单 apt-get squid.
#安装squid
$sudo apt-get install squid squid-common
#备份一下/etc/squid/squid.conf
$cd /etc/squid
$ls -al
$sudo mv /etc/squid/squid.conf /etc/squid/squid.conf.old
#建立一个新的配置文件
$sudo touch squid.conf

重点是配置/etc/squid/squid.conf,我的范本

#########################

http_port 202.115.22.209:8080

cache_mgr peterpan.mail@gmail.com

cache_dir ufs /home/ufooo/squid 32 16 256

#定义squid缓存地址,尽量找空间大的地方。后三个参数不知道什么意思……照着别人依葫芦画瓢。

cache_mem 8MB

#定义使用内存

cache_swap_low 30

cache_swap_high 40

#定义使用硬盘空间百分比

visiable_hostname Peter Proxy

#定义名字

client_mask 255.255.255.255

#网上说是让squid把每个IP单独对待,不知道什么意思。而且加上这行启动squid会有个警报提示,但是不影响使用。

acl safe_ports port 80 21 443 563 70 210 1025-65535

acl all src 0.0.0.0/0

#定义访问规则组。其中all组必须定义,0.0.0.0/0表示全部ip。

http_access allow safe_ports

http_access allow all

#允许还是拒绝?这是个问题……

#############################

基本这个conf文件就能满足基本的使用。当然,为了避免被滥用,一般使用密码认证。

步骤:

#安装htpasswd用于产生用户名和密码,htpasswd包含在apache2-utils里
$sudo apt-get install apache2-utils

#在squid使用密码和用户名,需要squid的源码来安装NCSA
#下载squid的源码,再安装NCSA
$cd #到自己的目录中去
#下载squid的源码
$apt-get source squid
#下载后到有squid源码目录
$cd squid-2.7.STABLE3/

#编译NCSA组件

$ ./configure –prefix=/usr/local/squid –enable-auth=”basic” –enable-basic-auth-helpers=”NCSA”
$cd /home/ufooo/squid-2.7.STABLE3

$make

#将ncsa_auth拷贝至可执行目录/usr/sbin

$cd /home/funpower/squid-2.6.STABLE16
$cd helpers/basic_auth/NCSA/
$cp ncsa_auth /usr/sbin

#利用htpasswd创建密码文件

$htpasswd -c /etc/squid/ password www

#输入两次密码即可。

#配置squid.conf,添加如下行

auth_param basic program /usr/sbin/ncsa_auth /usr/local/squid/etc/password

#该选项指出了认证方式(basic)、需要的程序(ncsa_auth)和对应的密码文件(password)
auth_param basic children 5
auth_param basic realm Please enter the user name and password
#指定认证程序的进程数

浏览器显示输入用户/密码对话框时的领域内容
#普通用户需要通过认证才能访问Internet

acl normal proxy_auth REQUIRED

http_access allow normal

并改写http_access allow all为http_access deny all

随机文章:

debian下squid代理服务器的安装和简单配置 2009-02-24
Debian定时任务管理cron设置 2009-02-27
使用debian 5.0 lenny 10天来的感受 2009-02-25
debian lenny 下安装vsftpd与本地用户的简单配置 2009-02-24
目前debian lenny 5.0速度最快最稳定的源 2009-02-23

收藏到:Del.icio.us




Tag:squid Debian
引用地址:
landwind 发表于20:23:53 | 编辑 | 继续话题 | 转发 | 分享 0

评论

/usr/local/squid/var/logs/access.log
admin | 发表于2009-03-02 00:37:06
[回复]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: