重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要讲解了“CentOS6.7下Linux Squid代理服务器的安装配置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CentOS6.7下Linux Squid代理服务器的安装配置”吧!
成都创新互联公司主营加查网站建设的网络公司,主营网站建设方案,重庆APP开发公司,加查h5微信平台小程序开发搭建,加查网站营销推广欢迎加查等地区企业咨询
代理上网软件:
windows SYGATE
centos squid 3128
ubuntu shadowsocks
客户机设置:
.bashrc中加入http代理
export http_proxy=http://yourproxyaddress:proxyport
export https_proxy=http://yourproxyaddress:proxyport
wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.sh
bsp是shadowsocks的多用户、流量限制管理工具,使用简单的命令就能实现管理
CentOS6.7 Linux Squid 代理服务器安装配置
http://balich.blog.51cto.com/6641781/1710760
CentOS6.7 Squid代理服务器安装配置
Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,到为一组人共享网络资源而缓存万维网,域名系统和其他网络搜索,到通过过滤流量帮助网络安全,到局域网通过代理上网。Squid与Linux下其它的代理软件如Apache、Socks、TIS FWTK和delegate相比,下载安装简单,配置简单灵活,支持缓存和多种协议。Squid之所以使用广泛,是因为它的缓存功能,Squid缓存不仅可以节省宝贵的带宽资源,也可以大大降低服务器的I/O. 从经济角度考虑,它是很多网站架构中不可或缺的角色。
Squid不仅可以做正向代理,又可以做反向代理。
正向代理,Squid后面是客户端,客户端想上网不管什么网都得经过Squid. 当一个用户(客户端)想要请求一个主页时,它向Squid发出一个申请,要Squid替它请求,然后Squid 连接用户要请求的网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户请求同样的页面时,Squid把保存的备份立即传给用户,使用户觉得速度相当快。
正向代理,客户端需要做一些设置,才能实现,也就是平时我们在IE选项中设置的那个代理。而反向代理是,Squid后面为某个站点的服务器,客户端请求该站点时,会先把请求发送到Squid上,然后Squid去处理用户的请求动作。
如何区分:
正向代理,Squid后面是客户端,客户端上网要通过Squid去上,对于用而言,是知道有代理的存在,常用在企业中,作为代理上网,可以很好的控制后面的客户端访问网站;
反向代理,Squid后面是服务器,服务器返回给用户数据需要走Squid,对于用户而言,是不知道访问是一个代理,而觉得是服务器本身.
官方地址:http://www.squid-cache.org/
参考文档:http://www.squid-cache.org/Doc/config/
系统环境:
操作系统:CentOS 6.7
Squid版本:3.1.23
hostname:balichvm.org
1)、安装
[root@balichvm ~]# yum install squid –y
2)、Squid 配置正向代理,默认的配置文件/etc/squid/squid.conf
(1) 编辑/etc/squid/squid.conf,修改如下参数
增加visible_hostname balichvm.org
# cache_dir ufs /var/spool/squid 100 16 256 ##将前面的#号去掉
格式表示:名称;文件格式; 缓存目录路径; 缓存大小,单位MB; 一级子目录的数量; 二级子目录的数量
cache_dir ufs /var/spool/squid 100 16 256
增加cache_men,默认是没有这个配置,手动添加,由于缓存存放在硬盘上比较慢,可以放到内存上
cache_mem 64 MB
在refresh_pattern下面加入下我们需要缓存的文件,比如图片,音频,视频
refresh_pattern\.(jpg|png|gif|mp3|xml|js|css) 1440 20% 2880 ignore-reload
保存配置文件后,使用squid –kcheck 命令检查语法是否正确。
(2)、启动squid
[root@balichvm ~]# /etc/init.d/squid start
正在启动 squid:. [确定]
[root@balichvm ~]#
此时会在/var/spool/squid 生成缓存的目录。
(3).测试。squid默认监听的是3128端口(如果有使用iptables需要放行,或者关闭。)
[root@balichOS ~]# curl-x192.168.171.51:3128 -I www.baidu.com
HTTP/1.0 200 OK
Date: Fri, 06 Nov 2015 14:22:23 GMT
Content-Type: text/html; charset=utf-8
Vary: Accept-Encoding
Set-Cookie:BAIDUID=CA2C3DE3C2832FD456EA94D7B71041E5:FG=1; expires=Thu, 31-Dec-37 23:55:55GMT; max-age=2147483647; path=/; domain=.baidu.com
Set-Cookie:BIDUPSID=CA2C3DE3C2832FD456EA94D7B71041E5; expires=Thu, 31-Dec-37 23:55:55 GMT;max-age=2147483647; path=/; domain=.baidu.com
Set-Cookie: PSTM=1446819743; expires=Thu,31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com
Set-Cookie: BDSVRTM=0; path=/
Set-Cookie: BD_HOME=0; path=/
Set-Cookie:H_PS_PSSID=10299_17764_17898_1433_7477_17620_17900_17782_17001_17072_15769_12054;path=/; domain=.baidu.com
P3P: CP=" OTI DSP COR IVA OUR IND COM"
Cache-Control: private
Cxy_all:baidu+75e6e8b83b863a1d9ff7d7c75a6c2d38
Expires: Fri, 06 Nov 2015 14:22:19 GMT
X-Powered-By: HPHP
Server: BWS/1.1
X-UA-Compatible: IE=Edge,chrome=1
BDPAGETYPE: 1
BDQID: 0xd402ae2e0002376f
BDUSERID: 0
X-Cache: MISS from balichvm.org
X-Cache-Lookup: MISS from balichvm.org:3128
Via: 1.0 balichvm.org (squid/3.1.23)
Connection: keep-alive
这样就相当于是一台代理服务器,提供给后面的客户端上网,这种多用于企业。
如果只开放访问那些网站,需要用到访问控制了
(4).访问控制(acl)
在acl CONNECT method CONNECT 下面增加如下配置
acl http proto HTTP #指定使用什么协议
acl good_domain dstdomain .baidu.com .qq.com #定义远程访问的域名
http_access allow good_domain #允许的
http_access deny !good_domain
保存配置文件后,重新加载配置文件,可以使用这个命令:squid reconfigure
在windows上测试,需要把ip的网关修改为squid服务器的IP地址。
3)、配置反向代理
反向代理是可以减轻后端的服务器的压力的,同时可以给用户更快的反问速度,从用户的角度来说,就想真实的访问的是后端的机器。因此,在配置文件上,首先squid监听的端口需要从3128修改为80。
比如我们做一个百度的单向代理,配置文件修改如下:
http_port 3128 改为 http_port80 accel vhost vport
增加如下内容:
cache_peer 61.135.169.125 parent 80 0originserver name=baidu
cache_peer_domain baidu www.baidu.com
保存配置文件,重启服务
[root@balichvm ~]# /etc/init.d/squidrestart
停止 squid:................ [确定]
正在启动squid:. [确定]
[root@balichvm ~]#
在Windows上测试,需要修改hosts文件,把www.baidu.com指向到我们的squid服务器IP上即可。
YUM代理设置
编辑/etc/yum.conf,在最后加入
# Proxy
proxy=http://username:password@proxy_ip:port/
也可以使用proxy_username和proxy_password来配置代理的用户名和密码
这样的配置完成后,所有的用户在使用yum时,都会使用代理,可以说是全局代理。
如果需要为单独的用户配置代理,可以在用户的~/.bash_profile中设置。
Wget的代理设置
编辑/etc/wgetrc,在最后加入
# Proxy
http_proxy=http://username:password@proxy_ip:port/
ftp_proxy=http://username:password@proxy_ip:port/
系统全局代理
如果需要为某个用户设置一个系统级的代理,可以在~/.bash_profile中设置:
http_proxy="http://username:password@proxy_ip:port"
export_http_proxy
上面的设置只对某个用户生效,如果要对所有系统用户生效,写在/etc/profile中就可以了。
感谢各位的阅读,以上就是“CentOS6.7下Linux Squid代理服务器的安装配置”的内容了,经过本文的学习后,相信大家对CentOS6.7下Linux Squid代理服务器的安装配置这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!