码迷,mamicode.com
首页 > 其他好文 > 详细

squid的简单配置

时间:2015-08-27 19:13:01      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:squid的简单配置



传统代理服务器的配置:

实验拓扑:

技术分享

安装前先下载squid这个安装包,这里我使用的是squid-3.4.6.tar.gz这个安装包!

首先解压安装包到/usr/src这个目录

tar zxf squid-3.4.6.tar.gz -C /usr/src


进入这个目录进行编译安装

cd /usr/src/squid-3.4.6



进行编译安装:

选择模块

./configure --prefix=/usr/local/squid \

--sysconfdir=/etc --enable-arp-acl \

--enable-linux-netfilter \

--enable-linux-tproxy \

--enable-async-io=100 \

--enable-err-language="simplify_chinese" \

--enable-underscore \

--enable-poll \

--enable-gnuregex

编译

make

编译安装

make install


编译安装完成后的优化.

useradd -M -s /sbin/nologin squid

chown -R squid:squid /usr/local/squid/var/*

ln -s /usr/local/squid/sbin/* /usr/local/sbin/

编辑squid的配置文件

vim /etc/squid.conf  #更加详细的配置项可以参考/etc/squid.conf.documented文件

在http_port 3218下添加四行

reply_body_max_size 10 MB

http_access allow all

cache_effective_user squid

cache_effective_group squid

上边的两行是squid的程序用户,没有会启动不成功.

visible_hostname cjl.com

检查文件是否有语法错误:

squid -k parse

初始化缓存目录

squid -z

启动squid

squid

检查端口是否已经监听

netstat -utpln |grep 3128


编写防火墙规则:

iptables -I INPUT -p tcp --dport 3128 -j ACCEPT

/etc/init.d/iptables save


在客户机的IE上添加代理服务器地址:

技术分享

打开网页测试是否能访问网站,我这里以百度为例!

技术分享

在传统代理的基础上我们开始构建透明代理
vim /etc/squid.conf
将http——port 3128改为下面的格式:
http_port  192.168.1.10:3128 transparent
:wq

编写iptables重定向规则:

iptables -t nat -I POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE

iptables -t nat -I PREROUTING -s 192.168.1.0/24 -i eth1  -p tcp --dport 80 -j REDIRECT --to-ports  3128
iptables -t nat -I PREROUTING -s 192.168.1.0/24 -i eth1  -p tcp --dport 443 -j REDIRECT --to-ports 3128

/etc/init.d/iptables save

临时启用路由
sysctl -w net.ipv4.ip_forward=1

sysctl -p

取消掉代理

技术分享


然后直接访问网站,网站随意!

技术分享


构建ACL访问控制
构建访问的acl:
vim /etc/squid.conf
acl localhost src 127.0..0.1/255.255.255.255  #源地址为127.0.0.1
acl MYLAN src 192.168.1.0/24   #客户机地址段
acl to_localhost dst 127.0.0.0/8 #目标地址为127.0.0.0/8
acl MC20 maxconn 20  #最大并发连接20
acl BlackURL url_regex -i ^rtsp:// ^emule:///  #以rtsp://开头的url
acl MEDIAFILE urlpath_regex -i \.mp3$ \.mp4$ \.rmvb$  #以MP4,MP3,rmvb结尾的url
acl WORKTIME time MTWHF 08:30-17:30  #时间周一至周五8:30-17:30


构建黑名单:
mkdir /etc/squid
cd /etc/squid
vim ipblock.list   #建立ip地址黑名单
61.135.167.36
123.123.123.123
:wq
vim dmblock.list  #建立目标地域黑名单
.qq.com
.msn.com
.weixin.com
:wq


vim /etc/squid.conf  #编辑调用文件
acl IPBLOCK dst "/etc/squid/ipblock.list"
acl DMBLOCK dstdomain "/etc/squid/dmblock.list"
:wq


设置访问权限:
vim /etc/squid.conf
http_access deny MYLAN MEDIAFILE  #禁止下载MP4,MP3等文件!
http_access deny MYLAN IPBLOCK  #禁止访问黑名单中的地址。
http_access deny MYLAN DMBLOCK  #禁止访问黑名单的地址域。
http_access deny MYLAN MC20  #客户机的最大并发连接20.
http_access deny MYLAN WORKTIME  #允许客户机在工作时间上网。
http_access deny all   #默认禁止所有客户机使用代理上网。


本文出自 “某某” 博客,请务必保留此出处http://moumou.blog.51cto.com/9995443/1688890

squid的简单配置

标签:squid的简单配置

原文地址:http://moumou.blog.51cto.com/9995443/1688890

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!