Squid代理服务器
1.代理服务器的作用
1),共享网络
2),加快访问速度,节约通信带宽
3),防止内部主机受到攻击
4),限制用户访问,完善网络管理
2.代理服务器的原理
1),代理服务器主要采用了缓存机制
2),与NAT不同,客户端的数据并没有直接出到外网,它的请求是被代理服务器转发出去的.这个过程有点像你请人捎话给另外一个人差不多.而NAT是把数据包稍作修改(主要是IP包的源地址和目标地址)后就转发到了外网.
3.squid简介
1),它由国家网络应用实验室负责开发
2),squid来源于arpa的缓冲服务器Harvest research Project
3),squid支持http,ftp,gopher,ssl等多种协议
4),squid的官方网站http://www.squid-cache.org
4.配置基本的代理服务功能
1),http_port 192.168.1.1:3128 --在192.168.1.1这个IP上的3128端口提供代理服务,ip可以省略表示本机的所有IP.
2),cache_mem 8 MB --内存缓存大小.如果你的服务器只做代理可以设置为物理内存的一般,否则应该少于1/3
3),cache_dir ufs /var/spool/squid 100 16 256 ---指定缓存数据保存的位置 ufs是保存的格式, /var/spool/squid是存储路径,100是缓存大小单位MB,16是一级目录数量,256是二级目录数量,二级目录中保存数据. 可以用多个cache_dir命令来定义多个这样的交换空间,并且这些交换空间可以分布不同的磁盘分区。为什么要定义这么多子目录呢?这是因为如果子目录太少,则存储在一个子目录下的文件数目将大大增加,这也会导致系统寻找某一个文件的时间大大增加,从而使系统的整体性能急剧降低。所以,为了减少每个目录下的文件数量,我们必须增加所使用的目录的数量。如果仅仅使用一级子目录则顶级目录下的子目录数目太大了,所以我们使用两级子目录结构。那么,怎么来确定你的系统所需要的子目录数目呢?我们可以用下面的公式来估算。
已知量:
DS = 可用交换空间总量(单位KB)/ 交换空间数目
OS = 平均每个对象的大小= 20k
NO = 平均每个二级子目录所存储的对象数目 = 256
未知量:
L1 = 一级子目录的数量
L2 = 二级子目录的数量
计算公式:
L1 x L2 = DS / OS / NO
注意这是个不定方程,可以有多个解。
4),cache_effective_user squid --设定缓存的有效用户
5),cache_effective_group squid --设定缓存的有效用户组
6),dns_nameservers 202.96.134.133 --告诉squid用哪个dns服务器解析域名(该项可选)
7),cache_access_log /var/log/squid/accwss.log --设置用户访问internet的记录信息存放位置即访问日志
8),visible_hostname 192.168.1.1 --设置squid主机名
9),cache_mgr rongquan.li@sz-aptech.com --设置管理员的邮箱,当发生错误时会显示到客户端的网页中去.
5.设置错误提示为中文
mv /usr/share/squid/errors/Simplife_chinese /etc/squid/errors
6.初始化squid,主要用来生成缓存目录
/usr/sbin/squid -z
7.启动缓存服务器
server squid start
8.客户端的设置
控制面板->Internet选项->连接->局域网设置->代理服务器 ,填入正确的IP和端口即可
1.代理服务器的作用
1),共享网络
2),加快访问速度,节约通信带宽
3),防止内部主机受到攻击
4),限制用户访问,完善网络管理
2.代理服务器的原理
1),代理服务器主要采用了缓存机制
2),与NAT不同,客户端的数据并没有直接出到外网,它的请求是被代理服务器转发出去的.这个过程有点像你请人捎话给另外一个人差不多.而NAT是把数据包稍作修改(主要是IP包的源地址和目标地址)后就转发到了外网.
3.squid简介
1),它由国家网络应用实验室负责开发
2),squid来源于arpa的缓冲服务器Harvest research Project
3),squid支持http,ftp,gopher,ssl等多种协议
4),squid的官方网站http://www.squid-cache.org
4.配置基本的代理服务功能
1),http_port 192.168.1.1:3128 --在192.168.1.1这个IP上的3128端口提供代理服务,ip可以省略表示本机的所有IP.
2),cache_mem 8 MB --内存缓存大小.如果你的服务器只做代理可以设置为物理内存的一般,否则应该少于1/3
3),cache_dir ufs /var/spool/squid 100 16 256 ---指定缓存数据保存的位置 ufs是保存的格式, /var/spool/squid是存储路径,100是缓存大小单位MB,16是一级目录数量,256是二级目录数量,二级目录中保存数据. 可以用多个cache_dir命令来定义多个这样的交换空间,并且这些交换空间可以分布不同的磁盘分区。为什么要定义这么多子目录呢?这是因为如果子目录太少,则存储在一个子目录下的文件数目将大大增加,这也会导致系统寻找某一个文件的时间大大增加,从而使系统的整体性能急剧降低。所以,为了减少每个目录下的文件数量,我们必须增加所使用的目录的数量。如果仅仅使用一级子目录则顶级目录下的子目录数目太大了,所以我们使用两级子目录结构。那么,怎么来确定你的系统所需要的子目录数目呢?我们可以用下面的公式来估算。
已知量:
DS = 可用交换空间总量(单位KB)/ 交换空间数目
OS = 平均每个对象的大小= 20k
NO = 平均每个二级子目录所存储的对象数目 = 256
未知量:
L1 = 一级子目录的数量
L2 = 二级子目录的数量
计算公式:
L1 x L2 = DS / OS / NO
注意这是个不定方程,可以有多个解。
4),cache_effective_user squid --设定缓存的有效用户
5),cache_effective_group squid --设定缓存的有效用户组
6),dns_nameservers 202.96.134.133 --告诉squid用哪个dns服务器解析域名(该项可选)
7),cache_access_log /var/log/squid/accwss.log --设置用户访问internet的记录信息存放位置即访问日志
8),visible_hostname 192.168.1.1 --设置squid主机名
9),cache_mgr rongquan.li@sz-aptech.com --设置管理员的邮箱,当发生错误时会显示到客户端的网页中去.
5.设置错误提示为中文
mv /usr/share/squid/errors/Simplife_chinese /etc/squid/errors
6.初始化squid,主要用来生成缓存目录
/usr/sbin/squid -z
7.启动缓存服务器
server squid start
8.客户端的设置
控制面板->Internet选项->连接->局域网设置->代理服务器 ,填入正确的IP和端口即可