如何搭建Squid代理服务器?

“每个理性的IT人士都置顶了吴柯的运维笔记”

“量子扰动超导探测器。战争期间用它搜索潜艇,寻找敌人的赛伯武器系统.”

“哦?海军的玩意儿?打仗的时候用过?这么说,乌贼能读出你大脑芯片上储存的东西?”她停住脚步。我觉得她藏在那两片镜面后面的一双眼睛正死死盯着我。

“要说探测磁场,哪怕最低级的乌贼都比过去的磁力探测器强十亿倍,就跟在体育场的一片欢呼声中听清谁说的一句悄悄话似的。

‍‍“squid”一般是指“量子扰动超导探测器(当然今天要讲的是开源系统中的代理服务器啦)”‍‍

‍Squid代理服务器

Squid

Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,到为一组人共享网络资源而缓存万维网,域名系统和其他网络搜索,到通过过滤流量帮助网络安全,到局域网通过代理上网。Squid主要设计用于在Linux一类系统运行。

对于Web用户来说,Squid是一个高性能的代理缓存服务器,可以加快内部网浏览Internet的速度,提高客户机的访问命中率。Squid不仅支持HTTP协议,还支持FTP、gopher、SSL和WAIS等协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。

Squid的另一个优越性在于它使用访问控制清单(ACL)访问权限清单(ARL)。访问控制清单和访问权限清单通过阻止特定的网络连接来减少潜在的Internet非法连接,可以使用这些清单来确保内部网的主机无法访问有威胁的或不适宜的站点。

Squid对硬件的要求是内存一定要大,不应小于128M,硬盘转速越快越好,最好使用服务器专用SCSI硬盘,处理器要求不高,400MH以上既可。

通过模拟配置代理服务器,实现以下目标:

1.代理服务器可以将远程的Web服务器页面缓存在本地

2.代理服务器端口设置为80端口

3.用户通过访问代理服务器即可获得远程Web服务器上的页面内容

4.远程Web服务器对客户端用户是透明的

5.利用缓存机制提高网站的响应速度

‍如图,分别在web服务器、代理服务器和客户端进行配置:‍

1

‍web服务器配置‍

1)装包

# yum -y install httpd

#systemctl start httpd

#systemctl enable httpd

2)为Web访问建立测试文件

#cat /var/www/html/index.html

2

‍部署Squid代理服务器‍

1)装包:

# yum -y install squid

2)修改配置文件:

# vim /etc/squid/squid.conf.. ..http_port 80 vhost

#设置反向代理visible_hostname www.wuke.com #设置主机名,默认没有该语句

cache_peer 192.168.2.100 parent 80 0 originserver #定义后端真实服务器信息

cache_dir ufs /var/spool/squid 200 16 256 #硬盘缓存,缓存容量为200M,自动创建16个一级子目录和256个二级子目录

http_access allow all #允许本机所有主机使用代理服务器

3)启服务

# systemctl start squid

#systemctl enable squid

4)squid服务通过TCP 80端口监听客户端请求:

# netstat -anptu | grep 80

tcp 0 0 :::80 :::* LISTEN 3213/(squid)

3

‍客户端测试‍

客户端开启浏览器访问

# curl http://192.168.4.5 #返回的是192.168.2.100服务的页面

原文发布于微信公众号 - 吴柯的运维笔记(wukeyy18s)

原文发表时间:2017-08-27

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏开发与安全

时间系统、进程的调度与切换

注:本分类下文章大多整理自《深入分析linux内核源代码》一书,另有参考其他一些资料如《linux内核完全剖析》、《linux c 编程一站式学习》等,只是为了...

34100
来自专栏影子

给Ionic写一个cordova(PhoneGap)插件

13740
来自专栏IT技术精选文摘

Paxos协议学习小结

一直对Paxos协议比较感兴趣,之前对这个算法 有耳闻 但只是了解皮毛,最近在学Zookeeper,趁着这股新鲜劲,就花时间研究了下Zookeeper的选举算法...

332100
来自专栏Golang语言社区

大型服务端开发的反模式技巧

1. 用线程池执行异步任务 ? 为了减少阻塞时间,加快响应速度,把无需返回结果的操作变成异步任务,用线程池来执行,这是提高性能的一种手段。 你可能要惊讶了,这么...

32060
来自专栏Golang语言社区

大型服务端开发的反模式技巧

1. 用线程池执行异步任务 ? 为了减少阻塞时间,加快响应速度,把无需返回结果的操作变成异步任务,用线程池来执行,这是提高性能的一种手段。 你可能要惊讶了,这么...

36850
来自专栏FreeBuf

一则邮件攻击样本分析分享

通过邮件投递病毒文件是网络攻击常用的一种方式,因此防御邮件攻击是每个安全团队都需要重点考虑的内容。中兴通讯每天都会收到数万封外部邮件,为了及时检测每封邮件是否含...

13920
来自专栏影子

给Ionic写一个cordova(PhoneGap)插件

507100
来自专栏带你撸出一手好代码

开发了一个小工具

国庆因为有事,没有像朋友圈里的同学一样出去浪。闲暇时间, 为了克服平时使用电脑时的一个坏习惯,我开发了一个小工具来帮助自己。 平时使用电脑时, 我喜欢把所有东...

32480
来自专栏西枫里博客

关机后远程唤醒的配置,简单实现广域网远程开机和连接

出门在外经常需要家里或者办公室电脑里面的资料。通常通过远程桌面等控制类软件连接。当家里没人,没人开电脑就麻烦了,如果让家里电脑始终开着浪费能源,所以远程桌面...

59520
来自专栏数据和云

RAC一个节点自动重启问题分析

题记:在RAC数据库的故障当中,节点重启的现象很常见,在这种问题的处理当中,有一定的规律性。为了更好的说明这个问题的处理过程,保证出现该类问题的时候,能够有序的...

41950

扫码关注云+社区

领取腾讯云代金券