Chinaunix首页 | 论坛 | 博客
  • 博客访问: 226091
  • 博文数量: 36
  • 博客积分: 3044
  • 博客等级: 中校
  • 技术积分: 356
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-20 18:31
文章分类

全部博文(36)

文章存档

2010年(36)

分类: LINUX

2010-03-09 00:07:05

     版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任.http://U16.cublog.cn 
 
    代理服务器是目前网络中常见的服务器之一,它可以提供文件缓存.复制和地址过滤等服务,充分利用有限的出口带宽,加快内部主机的访问速度,也可以解决多用户需要同时访问外网,但共有IP地址不足的问题.同时可以作为一个防火墙,隔离内网与外网,并且能提供监控网络和记录传输信息的功能,加强局域网的安全性等.它的主要作用有以下几点...

       1.共享网络:它是代理服务器最主要的服务之一,内网的主机通过代理服务器可以同时访问外网,而不受公有IP地址数目的限制...
    
       2.加快访问速度,节约通信带宽:

       3.防止内部主机受到攻击:内部主机的访问是通过代理服务器完成的.在这个过程中,内部主机地址等信息不会发送到外部,这样外部攻击者就无法通过扫描对内部主机进行渗透,进而起到保护内部主机的作用...

       4.限制用户访问,完善网络管理:在代理服务器上设置相应的访问策略和访问权限.
代理分为:普通代理. (标准的传统的代理服务器,需要客户机在浏览器中指定代理服务器的IP地址...)
              透明代理. (适用于企业的网关主机,共享接入Internet,客户机不需要指定代理服务器IP,端口等信息,需要设置防火墙策略将客户机的web访问数据转交给代理服务程序处理..)
              反向代理. (将客户机作为目的端,外网服务器作为客户端)
     Squid是Linux和Unix平台下最为流行的高性能免费应用层代理服务器,它具有权限管理灵活,性能高,效率快等特点.

软件包名:squid
服务名:squid
主程序:/usr/sbin/squid
主配置文件:/etc/squid/squid.conf
默认监听端口:3128
默认访问日志文件:/var/log/squid/access.log
http_port   IP:端口 (设置squid监听的IP地址和端口)
cache_mem  指定使用多少物理内存作为高速缓存.如果这台服务器仅用于共享上网,没有其他服务,则可加大物理内存的1/2,但如果还有其他服务则cache_mem的大小不应超过物理内存的1/3.,否则会影响服务器的总体性能.

cache_dir  ufs   /var/spool/squid 4096 16 256指定硬盘缓冲区的大小,其中ufs指的是缓冲的存储类型,一般为ufs,/var/spool/squid指硬盘缓冲存放的目录,4096代表缓存空间最大为4096M,16代表squid可以在硬盘缓冲存放的目录下建立的第一级子目录的数目,缺省值为16,;256是可以建立第二级子目录的数目,缺省值256。
cache_effective_user  squid  设定使用缓存的有效用户.(系统默认)
cache_effective_group  squid  设定使用缓存的有效用户组(系统默认)
dns_nameservers   IP  为了使Squid能解析域名,必须告诉squid有效DNS服务器..
cache_access_log 定义了访问记录日志文件的路径,该日志记录了用户访问Internet的详细信息,通过日志文件可以查看每台客户机上网的记录...所以大家不要干坏事的...
cache_log 设置记录缓存的相关信息日志文件的路径...
cache_store_log 定义了记录网页在缓存中调用情况日志文件的路径...
visible_hostname 定义了运行squid的主机名称,当访问发生错误时,该选项的值会显示在错误提示网页中.建议输入主机的IP地址..
cache_mgr 定义设置squid管理员的d E-mail地址,当访问发生错误时,该选项会显示在页面上.

规则:我们还可以使用acl   定义squid访问控制列表.下面是其选项信息..
src  IP   源IP地址(客户机的IP地址).
dst  IP   目标地址(服务的器IP地址).
scrdomain 源名称 (客户机所属的域).
dstdomain 目标名称(服务器所属的域).
time 一天中的某一时刻和一周内的某一天.
url_regex  URL规则的表达式
urlpath_regex:URL-path 略去协议和主机名的URL规则表达式匹配.
proxy_auth 通过外部程序进行用户认证.
maxconn 单一IP最大连接数.
time 语法[星期][时间段].星期可以使用这些关键字M(Mondy),T(Tuesday)...
                       时间段:某一时刻-另一时刻
    我们来模拟一个实验环境,squid代理服务器两网卡假设外网卡IP:192.168.0.195,内网卡IP:192.168.10.10,内网客户端IP:192.168.10.11,外网有个web服务器IP:192.168.0.197,在18:30-8:30不允许客户机访问外网,但是不下载以.rmvb和.mp3为结尾的文件,使用透明代理的方式,单个文件最大不能超过10M,代理端口为8080,错误提示显示的中文信息,管理员邮箱为,内存大小64M,缓存目录1024M,必须有可见主机名
好了就以这个信息,下面我们去配置Squid服务器...
[root@station195 ~]# yum  -y   install  squid (我本机配置好yum源,直接就使用yum安装)
[root@station195 ~]# cd /etc/squid/
[root@station195 squid]# cp -p squid.conf squid.conf.bak(对文件进行备份)
[root@station195 squid]# vim squid.conf
cache_mgr   
http_port      192.168.10.10:8080  transparent
error_directory   /usr/share/squid/errors/Simply_Chinese
visible_hostname    station195.example.com
cache_mem    64 MB
reply_body_max_size    1024000000    allow   all
cache_dir ufs /var/spool/squid 1024
acl mynetwork src 192.168.10.0/24
acl worktime time 18:00-23:59
acl worktime  time 00:00-8:30
http_access   allow   mynetwork   !worktime
acl nomp3 url_regex   -i   ^http.*\.mp3$
acl normvb url_regex  -i   ^http.*\.rmvb$
http_access allow mynetwork !nomp3
http_access allow mynetwork !normvb

测试结果全部成功的,很晚了就不在这抓图了,大家可以模仿着做着试试,有疑问可以给我留言,欢迎共同交流...
 
 
 
 
 
 
 
阅读(1859) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~