squid代理服务简单配置

简介:

Squid做为应用层的代理服务软件,squid主要用于提供缓存加速,应用层过滤控制的功能。


工作机制:

当客户机通过代理来请求web页面时,指定的大力服务器会先检查自己的缓存,如果缓存中已经有客户机需要的页面,则直接将缓存中的页面内容反馈给客户机;如果缓存中没有客户机要访问的页面,则有代理服务器向Internet发送请求,当获得返回的web页面以后,将网页数据保存到缓存中并发送给客户机。

代理服务器squid的好处:1,、提高了客户机的web访问响应速度。2、由于客户机的web请求是由代理服务器代替完成的,从而可以隐藏用户的真实IP地址,一定程度上起到安全作用。


代理类型:

作用在公网上的传统代理:手动设置代理服务器的端口和地址,然后才能代理来访问网络。对于网页浏览器,访问网站时的域名解析请求也会发给指定的代理服务器。

作用在局域网的透明代理:不需要手动设置代理服务器的端口和地址,而通过默认路由、防火墙策略将web重定向,实际任然交给代理服务器来处理。重定向的过程对于客户机来说是“透明”的,用户甚至并不知道自己在使用代理服务器来处理。

 

实验环境:两台Linux6系统、一台windows7系统。

1win7做客户机IP地址192.168.100.100,网关192.168.100.1

2Linux的公网web服务器,eth010.0.0.10,子网255.255.255.0、网关10.0.0.1

3Linuxsquid代理服务器,eth0192.168.100.1eth110.0.0.1

 

步骤一:配置好地址后,将Squid代理服务器上启动默认路由功能。

[root@root ~]# vim /etc/sysctl.conf 

net.ipv4.ip_forward = 1

[root@root ~]# sysctl -p  //刷新生效

net.ipv4.ip_forward = 1

 

步骤二:用win7客户机访问Linuxweb服务器

wKioL1XpkFuiH_ilAAJQfU9I1Po187.jpg 

 

步骤三:在Linuxweb服务上查看日志文件。访问的地址全都是客户机的IP地址。

[root@root ~]# vim /etc/httpd/logs/access_log  //查看web日志记录

wKiom1XpjkPwC9mtAAKg0pGmMyA228.jpg 

 

步骤四:在squid代理服务器中安装squid软件包,然后解压缩并用yum进行编译安装。

[root@root ~]#tar zxvf squid-3.4.6.tar.gz -C /opt  //解压到/opt目录下  

[root@root ~]#yum -y install gcc gcc-c++ //手工编译

[root@root ~]#cd /opt/squid-3.4.6.tar.gz  //进入这个目录下

[root@root squid-3.4.6 ]#./configure \

--prefix=/usr/local/squid \  //安装目录

--sysconfdir=/etc \  //单独将配置文件修改到其他目录

--enable-arp-acl \  //可以在规则中设置直接通过客户端MAC进行管理,

                       防止客户端使用IP欺骗

--enable-linux-netfilter \  //使用内核过滤

--enable-linux-tproxy \   //支持透明模式

--enable-async-io=值 \    //异步I/O,提升存储性能,

                               相当于--enable-pthreads   

                               或--enable-storeio=ufs,aufs --with

                               或-pthreads --with-aufs-thread=值

--enable-err-language="Simplify_Chinese" \   //错误信息的显示语言

--enable-underscore \   //允许URL中有下划线

--enable-poll \   // 使用poll()模式,提升性能

--enable-gnuregex \  //使用GNU正则表达式


编译安装的截图

wKiom1XpjzPRLlJfAADxoGDBBQM665.jpg


[root@root squid-3.4.6 ]#make && make install

[root@root squid-3.4.6 ]#ln -s /usr/local/squid/sbin/* /usr/local/sbin/  //创建软连接

[root@root squid-3.4.6 ]#useradd -M -s /sbin/nologin squid   //创建squid服务的专属用户

[root@root squid-3.4.6 ]#chown -R squid:squid /usr/local/squid/var/  //修改文件的属主和属组信息

[root@root squid-3.4.6 ]#vi /etc/squid.conf  //编辑配置文件

http_port 3128    //squid代理服务端口

cache_mem 64 MB   //最大缓存大小

maximum_object_size 4096 KB    //缓存对象大小

visible_hostname root.benet.com   //指定本地主机名和域名

cache_effective_user squid  //指定squid程序用户

cache_effective_group squid  //指定squid的程序组

cache_dir ufs /usr/local/squid/var/cache/squid 100 16 256 //缓存路径,去掉“#”号就行启用

 

启动服务查看端口

wKiom1XpjnuAM0L-AAB0h5wnyjI222.jpg 

 

启动代理服务后:

手动设置windows 7浏览器的代理服务,点击浏览器右边的工具→internet选项→连接→局域网设置,输入linux-2的本地代理服务IP地址,并且指定代理端口。

 wKiom1Xpjp-AoyenAAPNpCHSiXU677.jpg

 

最后在Linuxweb服务器上查看日志文件

wKioL1XpkLLCDmTtAAIVa7LJX2Y616.jpg 














本文转自白羊IT51CTO博客,原文链接: http://blog.51cto.com/000011211684/1691393 ,如需转载请自行联系原作者
相关文章
|
缓存 监控 安全
squid 代理服务器应用(下)
定位是缓存加速 缓存从后端的web服务器获取到的 加速是为了客户端访问的 squid 三种模式: 传统代理 需要客户端指向squid代理服务器,客户端能感知到squid代理服务器的存在 透明代理(常用) 客户端不需要配置,只要直接访问即可,服务端,借助了防火墙规则及静态路由的方式,完成透明代理 反向代理 做为类似与Nginx服务器的反向代理功能,但自身不需要一个首页,基于IP:端口,权重的方式完成反向 代理 对于Squid自身的管理/功能 : ACL:主要做的是http access (基于http协议,access访问) 的允许和拒绝管理 sarg:日志分析功能,可以以天的方式指定将ac
squid 代理服务器应用(下)
|
缓存 网络协议 Apache
|
Web App开发 测试技术 网络安全
|
Web App开发 缓存 监控
|
缓存 数据安全/隐私保护
|
Web App开发 缓存 网络协议