Squid代理服务器

1、squid代理:

缓存网页,减少重复请求,加快访问速度,隐藏真实ip

代理的分类:

传统代理:使用Internet和内网,客户端需明确指定代理服务器。

透明代理:使用于内网访问外网,指定代理服务器,但必须指定网关,网管配置iptables策略,将端口重定向到代理服务器端口。

2、squid和nat的区别:

NAT:工作在网络层,通过转换地址转发数据包,实现内外网之间通信。

应用代理:工作在应用层,通过缓存提供服务,不进行数据包转发,主要实现web缓存服务。

3、squid的安装

./configure --prefix=/usr/local/squid(安装目录) --sysconfdir=/etc(配置文件位置) --enable-linux-netfilter(支持内核过滤) --enable-linux-tproxy(支持透明模式) --enable-async-io=100 --enable-err-language=”Simplify_Chinese”(错误信息显示语言) --enable-underscore(允许URL中有下划线) --enable-poll(使用Poll()模式,提升性能) --enable-gnuregex(使用GNU正则表达式

4、主配置文件/etc/squid.con的配置项:

http_port 3128 默认端口号:3128

cache_effective_user squid 指定squid的程序用户

cache_effective_group squid 指定账号的基本组

repy_body_max_size 10 MB 允许下载最大文件大小

maximum_object_size 4096 KB 允许缓存的最大对象

visible_hostname a.benet.com 指定主机名(名称随意)

5、squid的管理命令:

squid -k parse 检测语法

squd -z 初始化缓存目录

squid 启动squid

squid -k reconfigure 重新加载配置

关闭squid: kill 进程号(查看进程号命令:netstat -anpt | grep “squid”)

6、透明代理配置:

1)在/etc/squid.conf配置文件添加支持透明代理

http_port 192.168.1.1:3128 transparent

(192.168.1.1是内网网关)

2)添加iptables策略,将80号端口(HTTP)和443端口(HTTPS)重定向到3128

Iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to 3128

Iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to 3128

7、squid的控制

由ACL和http_access两条命令实施,ACL定义规则,http_access应用规则。

格式: acl 名称 控制类型 控制内容

http_access allow|deny 名称1 名称2

控制类型:src 源地址 dst 目标地址

port 端口号 time 访问时间

dstdomain 目标域 maxconn 连接数url_grgex 目标URL地址 urlpath_regex URL路径(文件类型)

可以设置黑白明单以控制允许或拒绝访问的主机

例:建立针对目标地址的黑名单文件

mkdir /etc/squid

cd /etc/squid

vim ipblock.list --写入地址(61.135.167.36 125.39.127.25 60.28.14.0/24)

调用指定文件中的列表内容:

acl IPBLOCK dst “etc/squid/ipblock.list”

8、sarg是一款squid日志分析工具,采用html格式,详细列出站点信息时间、排名、连接次数、访问量,主配置文件为sarg.conf可设置字体大小、背景、颜色等。

原文发布于微信公众号 - L宝宝聊IT(gh_b0e552aa80db)

原文发表时间:2018-03-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏青枫的专栏

通过360可以查看端口号

端口号: 物理端口    网卡口 逻辑端口    我们指的就是逻辑端口 每个程序都会至少有一个逻辑端口。 端口号是正在运行的程序的标识。(用于标识进...

882
来自专栏技术支持log

linux ssh连接报错Connection closed by remote host

远程连接CentOS服务器时发现有这样的报错: Connection closed by remote host ssh 加上 -v 参数打印下debug信息...

1100
来自专栏zhangdd.com

ceph增加删除osd操作教程

ceph集群作为存储后端开始使用后扩osd时,每次添加完后等ceph集群恢复正常后再继续添加下一个,避免同时添加2个及以上的osd。

571
来自专栏深度学习之tensorflow实战篇

windows 下对Redis的安装和部署以及连接客户端

Redis的安装和部署 一、Redis的下载地址 Redis官方并没有提供Redis的windows安装包,但在github上, 有相关的下载地址,如下: ...

3215
来自专栏北京马哥教育

生产环境之“进程”两字

一、进程概念 运行中的程序的一个副本,是被载入内存的一个指令集合 进程ID(Process ID,PID)号码被用来标记各个进程UID、GID、和SELinux...

3398
来自专栏知识分享

有人WIFI模块使用详解

 补充 模块在连接路由器时如果希望模块固定IP 不过发现固定IP之后好像连接路由器的等待时间增加了 ? ? 用的这一款 ? 看一下现在可能用到了引脚 ? ? 这...

3285
来自专栏北京马哥教育

利用硬链接和truncate降低drop table对线上环境的影响

众所周知drop table会严重的消耗服务器IO性能,如果被drop的table容量较大,甚至会影响到线上的正常。 首先,我们看一下为什么drop容量大的ta...

2668
来自专栏xingoo, 一个梦想做发明家的程序员

JSP Session管理

  本篇讲述JSP中session的相关知识和管理方法;   先说说cookie与session   在web中常用的两种用户信息管理方式:cookie 和 s...

1997
来自专栏技术博文

Nginx 日志文件 access_log 详解

Module ngx_http_log_module nginx 日志相关指令主要有两条, 一条是log_format,用来设置日志格式, 另外一条是acces...

2655
来自专栏LeoXu的博客

Windows 下使用 Memcached

Memcached 的使用其实就是客户端-服务器模式,所以服务端安装好之后还需要有一个客户端来连接服务端,然后才能进行存取键值对等操作。

762

扫码关注云+社区