学习Squid代理权限配置方法

发布时间:2020-12-18编辑:脚本学堂
本文介绍下,有关squid代理权限配置的一些知识,我们知道squid用作代理的功能还是很强大的,有需要的朋友参考下吧。

说明:由于squid是使用yum的方式安装的,如果手动编译的话,请更改相应的设置。

1,某几个IP上网不受限制(如192.168.1.10和192.168.1.20这个IP上网不受限制)
编辑vim /etc/squid/squid.conf
在前面加入:
 

复制代码 代码示例:
acl master src 192.168.1.10/32 192.168.1.20/32
http_access allow master

2,某几个IP只能上某个网站(如192.168.1.12只能访问www.jb200.com)
 

复制代码 代码示例:
acl web_ctrl src 192.168..1.12/32
acl web_ctrl_url url_regex www.jb200.com //若是增加网站的话只需在后面添加网址即可
acl allow web_ctrl web_ctrl_url

3,某几个IP限制时间上网(如192.168.1.15上班时间只能上公司网站,下班后可以上其他网站)
 

复制代码 代码示例:
acl time_client src 192.168.1.15/32                     //定义客户机地址
acl time_time time MTWHF 08:00-12:00 13:00-17:00     //在星期一到星期五的8点到12点 13点到17点
acl time_server url_regex www.jb200.com //设定要访问的网站
http_access allow time_client time_time time_server    //允许192.168.1.15上班时间上www.jb200.com
http_access deny time_time                           //拒绝上班时间的访问,防止上其他网站
http_access allow time_client                           //允许192.168.1.15上网

4,其他电脑需要使用用户名和密码才能上网,主要是用于临时使用网络
a.首先,生成一个密码文件
 

复制代码 代码示例:
[root@WebSer ~]# htpasswd -c /etc/squid/user.pass lookwest
New password:
Re-type new password:
Adding password for user lookwest
 

以上增加了一个lookwest帐户

htpasswd的用法:
1.增加用户
htpasswd  /etc/squid/user.pass lookwest
2.修改用户密码:
htpasswd -d /etc/squid/user.pass lookwest
3.删除用户:
htpasswd -D /etc/squid/user.pass lookwest

b.编辑/etc/squid/squid.conf
 

复制代码 代码示例:
auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/user.pass
//由于我使用的是64位centos所以上面是/usr/lib64/squid/ncsa_auth
//那后面跟的就是刚才生成密码文件的位置/etc/squid/user.pass
auth_param basic children 5
//指定认证程序的进程数
auth_param basic realm Welcome to LookWest
//浏览器显示输入用户/密码对话框时的领域内容
auth_param basic credentialsttl 2 hours
//基本的认证有效时间
acl lookwest proxy_auth requireD
//普通用户需要通过认证才能访问Internet
http_access allow lookwest

最后需要加入一行:
http_access deny all  

说明:
squid重新加载配置文件,无需重新启动squid服务,运行:
[root@WebSer ~]# squid -k reconfigure