Squid快速入门(yum安装)
加油站代理服务器
前言
Squid是一个Linux系统下优秀的代理服务器软件。Squid可以配置普通上网代理(正向代理)、反向代理、透明代理。Squid接收用户的下载申请,并自动处理所下载的数据。当一个用户想要下载一个主页时,可以向 Squid 发出一个申请,要 Squid 代替其进行下载,然后 Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid 把保存的备份立即传给用户。
按照代理类型的不同,可以将 Squid 代理分为正向代理和反向代理,正向代理中,根据实现方式的不同,又可以分为普通代理和透明代理。
- 普通代理:需要客户机在浏览器中指定代理服务器的地址、端口。
- 透明代理:适用于企业的网关主机(共享接入 Internet)中,客户机不需要指定代理服务器地址、端口等信息,代理服务器需要设置防火墙策略将客户机的 Web 访问数据转交给代理服务程序处理。
- 反向代理:是指以代理服务器来接受 Internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 Internet 上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
环境与需求
环境
所有加油站均可以连接内网,为10.0.0.0/8网段内。
省内所有加油站通过代理访问【https://yyt.etcsd.com/ltk】
本例:
系统:CentOS6.5。
[root@uu ~]# uname -an
Linux uu 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 x86_64 x86_64 GNU/Linux
配置模式为普通上网代理(正向代理)。
Squid主机IP为110.225.11.206。
系统优化
hostname zhang
/etc/init.d/iptables stop
chkconfig iptables off
> /etc/issue
cd /etc/yum.repos.d/
wget http://mirrors.neusoft.edu.cn/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
sed -i 's#$releasever#6.5#g' CentOS6-Base-163.repo
echo 'export LC_ALL=C'>> /etc/profile
echo $LC_ALL
source /etc/profile
cd ~
yum install lrzsz tree lsof -y
setenforce 0
getenforce
echo '*/10 * * * * /usr/sbin/ntpdate pool.ntp.org >/dev/null 2>&1'>>/var/spool/cron/root
chkconfig --list | awk '{print $1}' |grep -Ev "sshd|network|rsyslog|crond|sysstat"|sed -r 's#(.*)#chkconfig \1 off#g'|bash
chkconfig --list |grep 3:on
exit
vi /etc/sysconfig/i18n --?LANG="zh_CN.UTF-8"
. /etc/sysconfig/i18n
yum方法
安装
yum安装
注释:版本较低,不易控制。
yum install squid -y
chkconfig --level 35 squid on
cp /etc/squid/squid.conf /etc/squid/squid.conf.bak
配置
> /etc/squid/squid.conf
vim /etc/squid/squid.conf
http_port 3128
cache_mem 256 MB
max_filedescriptors 10240
maximum_object_size 4 MB //设置squid磁盘缓存最大文件,超过4M的文件不保存到硬盘
minimum_object_size 0 KB //设置squid磁盘缓存最小文件
maximum_object_size_in_memory 4096 KB //设置squid内存缓存最大文件,超过4M的文件不保存到内存
cache_dir ufs /var/spool/squid 1024 16 256 //定义squid的cache存放路径 、cache目录容量(单位M)、一级缓存目录数量、二级缓存目录数量
logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st "%{Referer}>h" "%{User-Agent}>h" %Ss:%Sh //log文件日志格式
access_log /var/log/squid/access.log combined //log文件存放路径和日志格式
cache_log /var/log/squid/cache.log //设置缓存日志
logfile_rotate 60 //log轮循 60天
cache_swap_high 95 //cache目录使用量大于95%时,开始清理旧的cache
cache_swap_low 90 //cache目录清理到90%时停止。
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 443 # https
acl CONNECT method CONNECT
acl http proto HTTP
acl good_domain dstdomain yyt.etcsd.com
http_access allow manager localhost
http_access allow http good_domain
http_access deny http !good_domain
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow all
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
visible_hostname zhang
cache_mgr 15666661331@163.com
初始化和启动
killall squid squid -k parse squid -z service squid start netstat -ntpl #############################注释:############################## squid -z #初始化缓存目录,squid新版本3.1可以省略 /etc/init.d/squid start #启动squid服务 squid -k check #可以检测配置文件是否有错;可以简写为-kche squid -k rec #可以重新加载配置,reconfig的简写; service squid restart #重启squid服务;重启经常性的很慢,可以先killall squid,在启动服务; netstat -ntpl #查看端口是否打开:
在windows上设置代理
打开IE -> 工具 -> Internet选项 -> 连接 -> 局域网设置。勾选代理服务器下面的方格。设置地址为squid代理服务器IP,端口为3128。
Squid快速入门(yum安装)的更多相关文章
- webpack快速入门——如何安装webpack及注意事项
1.window+R键,输入cmd打开命令行工具,输入 mkdir XXXX(XX:文件夹名): 2.cd XXX 进入刚刚创建好的文件夹里,输入cnpm install -g webpack (安装 ...
- Redis快速入门:安装、配置和操作
本文是有关Redis的系列技术文章之一.在之前的文章中介绍了<Redis快速入门:初识Redis>,对Redis有了一个初步的了解.今天继续为大家介绍Redis如何安装.配置和操作. 系列 ...
- (1)Maven快速入门_1maven安装
Maven 快速入门 1.1 Maven官网下载 windows 系统 下载 下图红色框选处. 下载到本地解压, 创建一个本地maven仓库的目录 maven_lib 配置Maven的环境变量 ...
- maven快速入门之安装
maven是基于项目对象模型(pom) 可以通过y一小段描述信息来管理项目的构建,报告,和文档的软件项目管理工具. 覆盖编译,测试运行清理构建周期,提供仓库的概念,统一帮助管理项目. 下载:http: ...
- docker安装kafka快速入门
docker安装kafka快速入门 1.安装zookeeper docker search zookeeperdocker pull zookeeperdocker run -d -v /home/s ...
- 【转】Tomcat 快速入门
本文转载自:https://www.cnblogs.com/jingmoxukong/p/8258837.html?utm_source=gold_browser_extension 目录 Tomca ...
- webpack快速入门——实战技巧:watch的正确使用方法,webpack自动打包
随着项目大了,后端与前端联调,我们不需要每一次都去打包,这样特别麻烦,我们希望的场景是,每次按保存键,webpack自动为我们打包,这个工具就是watch! 因为watch是webpack自带的插件, ...
- webpack快速入门——CSS进阶:自动处理CSS3前缀
为了浏览器的兼容性,有时候我们必须加入-webkit,-ms,-o,-moz这些前缀.目的就是让我们写的页面在每个浏览器中都可以顺利运行. 1.安装 cnpm i postcss-loader aut ...
- webpack快速入门——webpack3.X 快速上手一个Demo
1.进入根目录,建两个文件夹,分别为src和dist 1).src文件夹:用来存放我们编写的javascript代码,可以简单的理解为用JavaScript编写的模块. 2).dist文件夹:用来存放 ...
随机推荐
- php可变数量的参数
PHP 在用户自定义函数中支持可变数量的参数列表.在 PHP 5.6 及以上的版本中,由 ... 语法实现:在 PHP 5.5 及更早版本中,使用函数 func_num_args(),func_get ...
- Java中Super和final关键字以及异常类
1.final类不能有子类,也就谈不上继承的说法,如果用final修饰成员变量或者局部变量,那成了常量需要制定常量的值. 2.对象的上转型对象,上转型对象不能操作子类新增的成员变量,不能调用子类新增的 ...
- k3 Bos开发百问百答
K/3 BOS开发百问百答 (版本:V1.1) K3产品市场部 目录 一.基础资料篇__ 1 [摘要]bos基础资料的显示问题_ 1 [摘要]单 ...
- C# 位移运算
一:“<<”和“>>”运算符用于执行移位运算,分别称为左移位运算符和右移位运算符.对于X<<N和X>>N形式的运算,含义是将X向左或向右移动N位,得到的 ...
- OpenSSL + Windows 下载安装
Download Win32 OpenSSLhttps://slproweb.com/products/Win32OpenSSL.htmlhttps://wiki.openssl.org/index. ...
- C#学习-面向对象
封装:把客观事物封装成类,并将类内部的实现隐藏,以保证数据的完整性: 比如年龄赋值为负数,就是个例子.当我们把类的字段定义为公共类型时,外部对象可以直接对类内部的数据进行操作,此时无法对这些操作进行一 ...
- ExceptionLess的MVC调用
引用 <package id="Exceptionless" version="4.2.1989" targetFramework="net46 ...
- How to trigger an Animation when TextBlock’s Text is changed during a DataBinding
原文:http://michaelscherf.wordpress.com/2009/02/23/how-to-trigger-an-animation-when-textblocks-text-is ...
- EF大数据批量处理 EntityFrameWork下增加扩展方法
为EF操作方法添加扩展方法 BulkInsert 大致设计方式为 通过当前DbContext 获取当前连接字符串,调用连接字符串获取当前实体的所有字段及字段属性,映射到DataTable中 在调用Sy ...
- Tensorflow name_scope
在 Tensorflow 当中有两种途径生成变量 variable, 一种是 tf.get_variable(), 另一种是 tf.Variable(). 使用tf.get_variable()定义的 ...