首页 | Linux 基础 | 资讯动态 | Linux 应用 | Linux 服务器 | Linux 开发 | Linux 安全 | 专题 | 联盟论坛
  当前位置:主页>Linux 服务器>文章内容
Linux架设代理服务器(1)
来源:www.unix5.com 作者:riechelr_hl(收集) 发布时间:2007-06-22  

  2.当该请求包通过透明代理服务器时,被重定向到代理服务器的绑定端口8080。于是,透明代理服务器用某一端口(比如1088)向202.99.11.120的80端口发起web连接请求,请求web页面。 
        3,收到响应的web页面后,代理服务器把该数据传送给客户端。
  4.客户端浏览器显示该页面。
  
  从www.linuxaid.com.cn的角度看来,连接是在1.2.3.4地1088端口和202.99.11.120的80端口之间建立的。从client的角度看来,连接是在192.168.1.100的1066端口和202.99.11.120的80端口之间建立的。
  
  以上就是传统代理服务器和透明代理服务器的区别所在。
  
  二、各种代理服务器的比较
  
  linux下的代理服务器软件很多,我从www.freshmeat.com(一个著名的linux软件站点)查看了一下,足有六十多个。但是被广泛应用的只有Apache、socks、squid等几个实践证明是高性能的代理软件。下面我们分别来比较一下这几个软件:
  
  2.1 Apache
  
  Apache是世界上用的最广泛的HTTP服务器,之所以用的最广泛,是因为它强大的功能、高效率、安全性和速度。从1.1.x版本开始,Apache开始包含了一个代理模块。用Apache作代理服务器的性能优势并不明显,不建议使用。
  
  
  2.2 Socks
  
  Socks是一种网络代理协议,该协议可以让客户机通过Socks服务器获得对Internet的完全访问能力。Scoks在服务器和客户端之间建立一个安全的代理数据通道,从客户的角度看来,Scoks是透明的;从服务器的角度看来,Socks就是客户端。客户端不需要具有对Internet的直接访问能力(也就是说,可以使用私有IP地址),因为Socks服务器能够把来自于客户端的连接请求重定向到Internet。此外,Socks服务器可以对用户连接请求进行认证,允许合法用户建立代理连接。同理,Socks也能防止非授权的Internet用户访问及的内部网络。所以常常把Socks当作防火墙来使用。
  常见的浏览器如netscape、IE等可以直接使用Socks, 并且我们也可以使用socsk5的所带的client来使那些不直接支持socks的internet软件使用Socks。
  更多的资料可以参考Socks官方站点http://www.socks.nec.com。
  
  2.3 Squid
  
  对于web用户来说,Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher和HTTP协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。
  Squid把数据元缓存在内存中,同时也缓存DNS查询的结果,除此之外,它还支持非模块化的DNS查询,对失败的请求进行消极缓存。Squid支持SSL,支持访问控制。由于使用了ICP(轻量Internet缓存协议),Squid能够实现层叠的代理阵列,从而最大限度地节约带宽。
  Squid由一个主要的服务程序squid,一个DNS查询程序dnsserver,几个重写请求和执行认证的程序,以及几个管理工具组成。当Squid启动以后,它可以派生出预先指定数目的dnsserver进程,而每一个dnsserver进程都可以执行单独的DNS查询,这样一来就大大减少了服务器等待DNS查询的时间。
  
  2.4 选择
  
  从上面的比较可以看出,Apache主要功能是web服务器,代理功能只不过是其一个模块而已,Socks虽然强大,但有欠灵活,因此我们着重推荐你使用Squid。下面的章节我们就一起来学习Squid激动人心的特性及相关的安装与配置。
  
  三、安装Squid Proxy Server
  
  3.1获取软件
  
  你可以通过以下途径获取该软件:
  1.从Squid的官方站点http://www.squid-cache.org下载该软件;
  2.从你的linux发行版本中获取该软件;
  通常,Squid软件包有两种:一种是源代码,下载后需要自己重新编译;可执行文件,下载后只需解压就可以使用;另一种是就是RedHat所使用的rpm包。下面我们分别讲讲这两种软件包的安装方法。
  
  3.2安装软件
  
  我们以目前最新的稳定版本squid-2.3.STABLEX为例。
  
  3.2.1rpm包的安装
  
  1.进入/mnt/cdrom/RedHat/RPMS
  2.执行rpm -ivh squid-2.2.STABLE4-8.i386.rpm。
  当然,我们也可以在开始安装系统的过程中安装该软件。
  
  3.2.2 源代码包的安装
  
  1.从http://www.squid-cache.org下载squid-2.3.STABLE2-src.tar.gz。
  2.把该文件拷贝到/usr/local目录。
  3.解开该文件 tar xvzf squid-2.3.STABLE2-src.tar.gz。
  4.解开后,在/usr/local生成一个新的目录squid-2.3.STABLE2,为了方便用mv命令把 该目录重命名为squid mv squid-2.3.STABLE2 squid;
  5.进入squid cd squid
  6.执行./configure 可以用./confgure --prefix=/directory/you/want指定安装目录
  系统缺省安装目录为/usr/local/squid。
  7.执行 make all
  8.执行 make install
  9.安装结束后,squid的可执行文件在安装目录的bin子目录下,配置文件在etc子目录下。
  
  四、配置squid基础篇——让代理服务器跑起来
  
  由于RedHat各方面的优势(包括易用性,稳定性等等),全世界范围内使用该发行版的用户比较多,所以,我们下面的说明都是以RedHat6.1环境下squid-2.2.STABLE4-8版本为主。从我的使用经验看来,该版本的squid要比其他版本稳定的多,以前的1.1.22版本也比较稳定,但是在功能及灵活性方面有所欠缺。
  squid有一个主要的配置文件squid.conf,在RedHat环境下所有squid的配置文件位于/etc/squid子目录下。
  
  4.1常用的配置选项
  
  因为缺省的配置文件有问题,所以我们必须首先修改该配置文件的有关内容,以便让squid跑起来。
  下面我们来看一看squid.conf文件的结构以及一些常用的选项:
  squid.conf配置文件的可以分为十三个部分,这十三个部分分别是:
  1.NETWORK OPTIONS (有关的网络选项)
共6页: 上一页 [1] 2 [3] [4] [5] [6] 下一页
 
如果您对本文有任何疑问或者建议,请到论坛讨论区发表您的意见: >> 论坛入口
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
  热点文章
·Linux系统下Apache服务器设置与
·在Linux x86上安装Oracle数据库1
·Linux操作系统下IPTables配置方
·Linux系统下SVN服务器的搭建过程
·Linux系统下的Oracle数据库编程
·Linux 服务器集群系统
·Linux下免费数据库PostgreSQL开
·高端Linux操作系统服务器技术之
·在Ubuntu Linux 上架设Web服务器
· 在 Linux 上构建 Web spider
·Debian Linux操作系统下启动远程
·用LVS在Linux上搭建负载均衡的集
  相关文章
·用Linux建立局域网服务器
·Linux架设代理服务器(2)
·PostgreSQL的热备和恢复
·实战安全设置WEB专用服务器技巧
·源码安装Postgresql8.1.3+PostGI
·Linux下免费数据库PostgreSQL开
·剖析Linux系统下基于NUMA构建的
·教你用SRP服务构建Linux下FTP服
·Linux系统下的Oracle数据库编程
·Linux系统下Mini SQL数据库开发
·在Ubuntu Linux 上架设Web服务器
·用LVS在Linux上搭建负载均衡的集

本站信息源至:互联网络,均为学习,交流所用,如有版权问题,请联系我们.
站长QQ:397422079 E_mail:riechelr_hl@unix5.com
转载本站内容请注明原作者名.谢谢!