代理服务器(squid)

前段时间 搭建了一个测试用的代理服务器,说下自己的想法

代理分了三种:普通代理,透明代理和反向代理

在测试环境中,普通代理需要在浏览器中设置代理服务器的ip和端口来连接互联网

而透明代理只需要将网关指向代理服务器的ip就可以通过代理服务器连接互联网,

至于反向代理,用于对web服务器的加速,没有测试

代理服务器主要工作在设置配置文件,测试机器直接装的包,配置文件在/etc/squid/squid.conf,至于安装源码包的话,配置还有缓存等等都是在自定义路径下
源码的安装方法

./configure --prefix=path --enable-async-io=160 --enable-icmp   --enable-kill-parent-hack --enable-cache-digests --enable-default-err-language=Simplify_Chinese --enable-poll

–prefix 代表想要安装的路径 e.g --prefix=/usr/local/squid/
至于后边的参数请输入

./configure --help

查看,上边那些参数都是复制的,概不负责
接下来编译

make

最后安装

make install

太长了 分个楼吧

说说普通代理,安装好squid后会有默认配置,都是关于本机的,我们没动,只是在其基础上添加自己的配置
开始配置:

http_port 3128

启用3128端口

cache_dir ufs /var/spool/squid 10240 32 256

定义缓存的,对应格式
<cache_dir> <目录> <大小M>
前两项可以不动,最后两项是一级目录数量和二级目录数量,最好是16的倍数

找到如下语句

http_access deny all

这里就涉及到访问控制了,规则是从上向下匹配,所以顺序很重要,上面代码中的语句最好放在访问控制的最后,代表拒绝所有,这样你可以在它上面添加自己的访问规则,首先匹配自己定义的访问规则,如果都不符合,就会到这里,拒绝全部,恩,就是这样
前期自己测试的话先设置为

http_access allow all

等squid可以跑起来了改回去

最后别忘了设置

visible_hostname squid_server

名字是随意取的
不定义这个squid还起不来

简单的配置下先,剩下的设置都使用默认的吧,保存配置,退出

分个楼先

~~~~~插~~~~楼~~~~
广告招租:7_142:

准备启动:

squid -z

初始化cache

service squid start

启动squid

netstat -ntl | grep 3128

查看3128端口是否在监听
Unnamed.jpg恩 在监听

继续分楼

:5_117: 你的广告招租 碉堡了

其他配置:

cache_mem 8 MB

缓存可以占用内存的大小

cache_swap_low 90
cache_swap_high 95

那两个数字是百分比,在缓存中内容高于cache容量的90%时会发生替换,新缓存替换旧缓存,当接近95%时,配置文档注释的大概意思是主动回收空间,俺也不知道怎么个回收法,可以自行去看下各个配置的说明

maximum_object_size 4096 KB

缓存文件的最大上限,也就是超过4M的文件,将不会在硬盘cache中存储

maximum_object_size_in_memory 8 KB

同上,不过是针对内存

仍然分楼

中间插播广告,还不如不分楼,效果不好,可以分多个帖子,分为(一)(二)。。。。更好些。。

~~~~~插~~~~楼~~~~
广告招租:5_115:

咨询代理 具体事宜 我派小Y姐和你详谈 :5_108:

我怎么没想到呢 分分分… 我看见大把的分

都写在一个楼里就行了 字数够的

:5_106:又见小广告

:7_139:收费的哦

开新帖咯

小Y姐 全权负责 :7_143:

瞬间小Y就被你卖了:7_143:

继续拉广告赞助嘛 ?:7_142:

:5_113: 做姐的代价

呵呵,你领会我的意思了。。。。:4_92:

@Tina昱
:7_142: