squid是一个比较有名的代理服务器,推荐教程:http://home.arcor.de/jeffpang/squid/#top
安装
ubuntu:
sudo apt-get update
sudo apt-get install squid
Cent OS:
sudo yum install squid
或参见官方网站
默认关键文件位置
可以通过 whereis squid
查找
配置文件: /etc/squid/squid.conf
日志文件: /var/log/squid/
修改配置
添加用户认证
(该方法为最基本的认证方法,安全性也不是最高,其它设置方式参见:http://home.arcor.de/jeffpang/squid/chap12.html#a0)
vim /etc/squid/squid.conf
添加用户认证
# 用户认证需要添加
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic credentialsttl 2 hours
auth_param basic realm jinpf`s Squid proxy-caching
acl auth_user proxy_auth REQUIRED
http_access allow auth_user
# 注释:
# 第一行:选择的认证方式为basic,认证程序路径和密码文件路径。
# 第二行:认证程序的进程数
# 第三行:认证有效时间
# 第四行:认证领域内容,上面定义的web浏览需要输入用户密码
# 第五,六行:设置允许认证的用户访问
生成密码文件
在第一行中的 /etc/squid/passwd
文件可以使用下面方法生成,在装有apache的机器上运行
# 注意,初次创建要加-c,之后不用加,如果加了会将原来的清空
htpasswd -c /etc/squid/passwd auth_user
以上的 auth_user
替换为认证的用户
# 删除用户
htpasswd -b -D /etc/squid/passwd usrname passwd
重启服务
service squid restart
运行
首次运行执行:
sudo squid -z
sudo /etc/init.d/squid reload # 加载配置
sudo /etc/init.d/squid restart
sudo squid -k parse # 检验:如果没有任何消息输出,便可以使用squid了
启动与关闭
sudo squid # 后台启动
sudo squid -k shutdown # 用这个命令关掉代理
状态查看
使用squidclient
squidclient -p 80 mgr:info