(图片来源网络)

传统代理

需要手动设置代理服务器的地址和端口,然后使用代理服务器访问网络

配置squid.conf

主要配置如下
http_port 3128    #用于指定代理服务器监听的地址和端口
cache_mem 64 MB   #指定缓存功能使用的内存空间,建议为实际物理内存的1/4
maximum_object_size 4096 KB    #允许保存到缓存空间的最大文件大小
visible_hostname localhost.localdomain  #代理服务器的本地主机名称,uname –n可以看到
reply_body_max_size 10240000 allow all    #允许 用户下载的最大文件大小,单位字节
cache_dir ufs /var/spool/squid 100 16 256   #指定缓存数据所使用的目录,容量,子目录数量,ufs缓存文件格式。缓存目录分配的磁盘空间大小(单位MB),一级目录数量16个,二级目录数据量256个
cache_swap_high 90   #缓存目录空闲空间小于90%时,新缓存自动取代旧缓存
cache_swap_low 85    #空闲空间降到85%才停止取代
cache_replacement_policy lru   #缓存替换策略
memory_replacement_policy lru   #内存替换策略
memory_pools on   #开启内存池

客户端手动设置代理

打开浏览器的“Internet选项”

设置代理

透明代理

提供予传统代理服务器相同的功能和服务,其区别在于:客户机不需要指定代理服务器的地址和端口,而是通过默认路由,防火墙策略将web访问重定向。

安装域名解析bind-9.3

[root@localhost ~]# rpm -Uvh /media/Server/bind-9.3.3-7.el5.i386.rpm
warning: /media/Server/bind-9.3.3-7.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]1:bind                   ########################################### [100%]
[root@localhost ~]# rpm -Uvh /media/Server/caching-nameserver-9.3.3-7.el5.i386.rpm
warning: /media/Server/caching-nameserver-9.3.3-7.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]1:caching-nameserver     ########################################### [100%]
[root@localhost ~]# rpm -Uvh /media/Server/bind-chroot-9.3.3-7.el5.i386.rpm
warning: /media/Server/bind-chroot-9.3.3-7.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]1:bind-chroot            ########################################### [100%]
[root@localhost ~]# cd /var/named/chroot/etc/
[root@localhost etc]# ls
localtime  named.caching-nameserver.conf  named.rfc1912.zones  rndc.key
[root@localhost etc]# cp -p named.caching-nameserver.conf named.conf
[root@localhost etc]# cat >named.conf <<end
> options {
> directory "/var/named";
> forwarders { 8.8.8.8; };//DNS解析转发给8.8.8.8处理
> };
> end
[root@localhost etc]# service named restart
停止 named:                                               [失败]
启动 named:                                               [确定]

防火墙重定向请求:

[root@localhost ~]# iptables -t nat -A PREROUTING -i eth1  -p tcp --dport 80 -j REDIRECT --to-ports 3128//把所有80端口请求转交squid
[root@localhost ~]# iptables -t nat -A PREROUTING -i eth1  -p tcp --dport 443 -j REDIRECT --to-ports 3128把所有443端口请求转交squid

配置squid.conf

[root@localhost ~]# vim /etc/squid/squid.conf
http_port 192.168.1.10:3128 transparent   //修改为透明模式

配置客户端ip,DNS使用192.168.1.10的代理

测试成功:

ACL控制上网行为

ACL列表名 类型 内容

http_accessallow或deny列表名

no_cacheallow或deny 列表名

acl all src 0.0.0.0/0.0.0.0
acl Safe_ports port 80 443#除80和443以外,!表示取反
acl ConnLimit maxconn 40    #多于40个请求
acl src_ip 192.168.2.167 192.168.1.0/24#源地址,网段
acl dst_ip dst 192.168.2.167 192.168.1.0/24#目标地址,网段
acl dstdomain  .qq.com .taobao.com#匹配qq,淘宝的域名
acl forbid urlpath_regex   -i   \.mp3 \.rmvp  #匹配MP3,rmvb,-i表示不区分大小写
acl limit_time time 12:00-13:00 #匹配每天的12到13点,M-monday.T-tuesday.W-wednesday.H-Thursday.F-fariday.A-Saturday.S-sunday
acl QueryString urlpath_regex -i cgi-bin \? \.asp \.php \.jsp \.cgi#匹配动态内容
no_cache deny query  #不缓存动态内容
http_access deny ConnLimit
http_access allow all#接受所有请求,与ACL定义的all相关
http_access deny !Safe_ports  #除80和443端口以外拒绝其他端口请求
http_access deny srcip  #源地址是192.168.1.0被拒绝
http_access deny dstdomain  #禁止上qq和淘宝
http_access deny forbid    #禁止下载MP3和rmvb

转载于:https://blog.51cto.com/dragon123/1591545

搭建squid代理服务器相关推荐

  1. Centos7搭建Squid代理服务器

    Centos7搭建Squid代理服务器 sumu's home 1.无需验证版----http 1.1 安装 yum install squid 1.2 修改配置文件 打开文件: vim /etc/s ...

  2. CentOS下搭建Squid代理服务器

    "量子扰动超导探测器.战争期间用它搜索潜艇,寻找敌人的赛伯武器系统." "哦?海军的玩意儿?打仗的时候用过?这么说,乌贼能读出你大脑芯片上储存的东西?"她停住脚 ...

  3. 完整版的squid代理服务器搭建实现(ip,域名,上网时间限制)

    搭建squid代理服务器 注:实验环境Centos7+Windows10,centos7双网卡 一.Centos7添加两个网络适配器分别VMnet1(权主机模式设置子网192.168.0.0)和VMn ...

  4. 服务器-Squid代理服务器及应用

    文章目录 一 web代理的工作机制 二 代理的基本类型 三:使用代理的好处 四:搭建Squid代理服务器 4.1 修改主机名,便于识别 4.2.编译安装Squid 4.3 修改squid配置文件 4. ...

  5. 万字长文带你了解最常用的开源 Squid 代理服务器

    作者:JackTian 微信公众号:杰哥的IT之旅(ID:Jake_Internet) 一.Squid 是什么? Squid:是一个高性能的代理缓存服务器,Squid 支持 FTP.gopher.HT ...

  6. Squid代理服务器应用(服务搭建详细步骤讲解)

    Squid代理服务器应用(服务搭建详细步骤讲解) 文章目录 一.代理的工作机制 二.Squid 代理的类型 三.Squid部署 (一).安装 Squid 服务 (二).构建传统代理服务器 (三).构建 ...

  7. Linux搭建squid varnish 代理服务器

        Linux搭建HTTP代理服务器 代理服务器(Proxy Server): 正向代理 --- 客户端程序(如浏览器)用制定代理服务器的地址:端口 反向代理 --- 负载均衡,反向代理工作机 ...

  8. kali用Squid简单配置搭建http代理服务器

    Squid - 代理服务器 Squid是一个全功能的Web代理缓存服务器应用程序,它为超文本传输协议(HTTP),文件传输协议(FTP)和其他流行的网络协议提供代理和缓存服务. Squid可以实现缓存 ...

  9. 搭建Linux安全的Squid代理服务器

    本文介绍Linux下非常著名.常用的Squid代理服务器的使用,并着重讲述如何使用其提供的访问控制策略,来保证代理服务器的合法使用. 代理服务器的功能是代理网络用户取得网络信息,它 是网络信息的中转站 ...

最新文章

  1. 腾讯 QQ 就“读取浏览器历史记录”道歉!
  2. POJ-1002 解题报告
  3. linux下安装sniffit
  4. hadoop balance failed
  5. jzoj3833-平坦的折线【模型转换,LIS】
  6. HTML5 Canvas中绘制文本
  7. 用python写三角形_python写个三角形的问题
  8. Java中类、抽象类、接口之间的区别和联系。
  9. 使用html和css的一些经验
  10. lambda函数(配合map函数)以及[x for x in]的超详细解释(实例+原理)
  11. 42条风景优美至今基本完整的宁波古道(转)
  12. oracle数据投毒,Oracle 监听投毒COST解决
  13. 京东非自营下运费模式
  14. 迈阿密大学的计算机系咋样,迈阿密大学牛津分校计算机专业如何?过来人告诉你...
  15. 【R实验.7】回归分析
  16. OSI7层网络模型协议精析
  17. 如何用手机打印文件?手机中存储的文档怎么打印
  18. 趁我酒醉后专车司机想要非礼我
  19. 【超详细】手把手教你搭建MongoDB集群搭建
  20. 数智十年,向新而行:2022 第十届CCF大数据与计算智能大赛在京启动

热门文章

  1. 如何一小时杀入天池OCR比赛前排?
  2. 中科院计算所实习-深度学习方向
  3. Datahwhale第三期集训团队成员
  4. 为什么博士要挤破头进高校?同一个实验室,硕士们进了大厂拿高薪
  5. 面试官问:硬盘里的苍老师每天以TB级别数据增长,你咋处理?我懵了。。。...
  6. 矩阵乘法的优化及其在卷积中的应用
  7. 俄罗斯的顶级数学家,到底有多恐怖?
  8. 坑爹的Python陷阱(避坑指南)
  9. 任正非:要感谢特朗普,他一吓唬,治好了华为人的富裕病,都努力工作了
  10. 清华学生计划表上热搜,大写的服!