网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > linux > 网络管理 > Linux服务器 > Linux组网入门(6):代理服务器  

Linux组网入门(6):代理服务器

2002-12-04  作者:BitsCN整理  来源:中国网管联盟  点评 投稿 收藏


  作者:fjxufeng
  
  为了节省和控制上网开支,许多公司及办公室采取了申请一条DDN专线,将整个公司或办公室连成一个局域网,然后让整个局域网共享这条DDN专线上网。在这种情况下,如下图所示,我们必须通过一个代理服务器来实现。
  
  图7-1 用代理服务器上网
  
  
  7.1 HTTP代理服务器
   代理服务器,顾名思义就是局域上不能直接上网的机器将上网请求(比如说,浏览某个主页)发给能够直接上网的代理服务器,然后代理服务器代理完成这个上网请求,将它所要浏览的主页调入代理服务器的缓存;然后将这个页面传给请求者。这样局域网上的机器使用起来就像能够直接访问网络一样。
   并且,代理服务器还可以进行一些网站的过滤和控制的功能,这样就实现了我们使用它的初衷——控制和节省上网费用。
   在LINUX中,有一个功能很强大的http/https/ftp的代理服务器程序——Squid Proxy Server,由于它安装简单,使用方便,所以已经被广泛地使用。在RedHat LINUX的安装光盘中已经包含了它。下面我们说说它的使用方法。
  
   7.1.1 安装Squid Proxy Server
   由于在安装光盘中用Squid的RPM安装包,所以我们可以使用RPM来安装Squid。

网管论坛bbs_bitsCN_com


   rpm –ivh squid-1.1.22-2.rpm
   当然,由于这个安装包是在光盘上的,我们要先将光盘mount到文件系统中来,才能够进行安装。
   这样,squid就会完成安装,并做了相应的初始设置。
  
   7.1.2 配置初步
   Squid Proxy Server仅有一个配置文件——/etc/squid.conf。我们必须对它进行相应的修改才能适用于我们的系统。下面就是一些最基本的配置选项。我们可以用vi打开这个文件进行编辑。
   1. 设置http/https/ftp的代理端口号:
   代理端口的默认值是3128,可以根据自己的喜好修改。但是要注意的是,千万不能与一些著名的端口冲突,例如POP端口——110等。如果你不是十分熟悉,就保留默认值吧。
   下面就是在/etc/squid.conf文件中的一句:
   http_port 3128
   2.添加访问控制组:
   我们将需要区别开的不同用户定义成一个访问控制组。比如一个公司的内部网的网络IP是192.168.200.0。而且只想区分公司内和公司外的两类用户,则我们就在/etc/squid.conf文件中添加下表的两句:
   acl all src 0.0.0.0/0.0.0.0
   acl company src 192.168.200.0/255.255.255.0 网管联盟bitsCN@com
   这样,我们说定义了一个包含所有人的组,和一个包含公司内部网的所有人的组。下面就可以对这两个组分别进行访问权力的设制。
   3. 设置每个访问控制组的访问权力:
   比如,我们希望公司内部的所有人都能够通过代理服务器上网,而禁止其它的人使用代理服务器上网,则我们就在/etc/squid.conf文件中添加下面两句:
   http_access allow company
   http_access deny all
   也就是我们allow(允许)“company”组使用代理服务器,而除了这个组以外的“all”deny(禁止)使用代理服务器。要注意的是,这两句一定不能顺序调换。否则将禁止所有的用户使用。
   请大家好好体会。
   4. 存盘退出;
   5. 执行下面的命令,使得新的配置生效:
   /etc/rc.d/init.d/squid restart
   上面仅仅是一个最基本的设置,squid提供了许多功能强大的可选项,大家可以根据实际情况进行更详尽的设置。在/etc/squid.conf文件中,每一项设置均有详尽的注释,大家可以参看这些帮助为squid作更多的设置。
  
   7.1.3 客户端设置
   下面我们以IE为例,简单说明局域网上的客户机的设置。 网管朋友网www_bitscn_net
   1.打开IE,在菜单栏上选择“工具”® “Internet选项”®“连接”®“局域网设置”,将出现如下图所示的对话框:
  
  图7-2 局域网设置
   如图所示,选中“使用代理服务器”选项,并且填上代理服务器的IP地址192.168.9.1以及代理端口号3128。
   2. 为了更好地使用squid代理服务器,我们可以进行更加详细的设置,单击“高级…”按钮,进入如图7-3所示的代理服务器设置对话框。
  
  图7-3 代理服务器设置对话框
  
   由于Squid是一个http和ftp的代理服务器,所以我们应该将使用代理服务器的协议修改为只有http和ftp,修改后如下图所示:
  
  图7-4 修改后的代理服务器
  
  7.2 IP代理服务器
   使用HTTP代理服务器,可以使局域网中的每一台电脑能够获得http/https/ftp三种服务。接下来我们讨论如何让LINUX成为一个连接局域网和Internet无缝连接的一个IP代理服务器。
   在Internet中,每个主机都必须有一个唯一的IP地址。现在的IP协议是IPV4,第四版本的IP协议,在设计它的时候,尽管人们已经大胆地使用了32位地址(大约可以表示320亿个不同地址),但是仍然无法满足日益增长的网络需求。所以网络界已经开始研究和过渡到IPV6(采用128位地址,可以表示320亿的四次方个不同地址)。但在尚未采用新的IP协议的时候,人们只能使用一些折衷的方法。
网管有家bitscn.net

   现在最常用的方法就是:如果某个网络直接与Internet相连,那就需要先申请一些公用地址,这些公用地址是唯一的,没有重复的。而对于那些不打算直接与Internet相连的网络则采用一些允许重复的“私有地址”。这样,虽然这些私有地址可能被许多网络使用,但是由于它们并不相互通信,所以就不会造成什么影响。按照RFC 1918文件的规定,以下地址为“私有地址”:
   1个A类地址:10.0.0.0
   16个B类地址:172.16.0.0~172.31.0.0
   256个C类地址用于私用地址:192.168.0.0~192.168.255.0
   也就是说,使用这些网络地址来定义内部网,然后通过一个网关或其它可以执行“网络地址翻译”功能的其它系统与Internet相连。如下图所示:
  
  图7-5 IP代理服务器工作示意图
   正如上图所示,在局域网上使用的是私有地址,而网关拥有两个IP地址,一个是内部网的,而另一个则是全球唯一的公用地址。一般来说,申请一条DDN专线,就可以得到8个公用地址。
   在后面的章节中,我们将以这个图为原型,讨论具体的设置方法。值得说明的是,在局域网部分,虽然图中只画出了两台,而实际上,最多可以扩充到254台。(因为我们使用的是一个C类地址:192.168.200.0) 网管联盟bitsCN_com
  
  7.3 安装IP代理服务器
   7.3.1 重新编译内核
   如果你使用的是RedHat LINUX 6.0,那么就请跳过这个小节。因为在RedHat LINUX 6.0中已经完成了这个部分的工作了。否则,请确认以下选项是否与要求一致。
   IP:forwarding/gatewaying(CONFIG_IP_FORWARD)[Y/n] y
   IP:optimize as router not host(CONFIG_IP_ROUTER)[Y/n] y
   NetWork firewalls(CONFIG_FIREWALL)[y/n] y
   TCP/IP networking(CONFIG_NET)[y/n] y
   IP:firewalling(CONFIG_IP_FIREWALL)[y/n] y
   IP:masquerading(CONFIG_IP_MASQUERADE) y
  
   7.3.2 配置两块网卡
   要作为IP代理服务器的这台电脑,必须安装两块网卡,而且必须确认两块网卡eth0和eth1工作正常。关于网卡的配置,请大家参看本篇的第三章。而在配置网卡的过程中,可以使用以下命令来使得网卡重新加载:
   /etc/rc.d/init.d/network restart
   将两块网卡的IP地址按实际情况设置好,一个是局域网内的IP地址,一个是连接Internet的公用IP地址。例如:
   我们用第一块网卡(eth0)将IP代理服务器连接到内部网交换机上,则将内部网的IP地址给第一块网卡。
网管论坛bbs_bitsCN_com

   IP address:192.168.200.1 netmask:255.255.255.0
   我们用第二块网卡(eth1)将IP代理服务器与DDN专线相连(这个部分的连接一般由DDN专线的提供方ISP设置。则将随着DDN而获得的公用地址给第二块网卡。
   IP address:202.101.98.1 netmask:255.255.255.0
  
   7.3.3 设置IP的转发规则
   根据LINUX的内核版本不同,LINUX所提供的IP转发规则设置工作也不一样。在早期版本中,用的是ipfwadm,而在新的版本中(LINUX 2.2以后版本)使用的是ipchains。以下就简单地说明如何使用ipchains工具设置IP的转发规则。
   1. 设置思路
   一般来说,我们可以采用以下两种思路进行IP的转发规则设置:
   1) 先全面禁止所有的输入、输出、转发包,然后根据需要逐步打开所要求的各项服务。这种方法相对来说更安全,但是如果你对要实现的服务和功能不能清楚地知道应该打开哪些服务和端口就不太好办了。
   2) 我们也可以先打开所有的输入、输出、转发包。然后禁止一些危险包,IP欺骗包,广播包,ICMP服务类型攻击等。这种方法的缺点就是不够安全。但是比较方便、容易配置。所以本文以这种方法作为设置的思路。
   2. 设置前的准备

网管网www_bitscn_com


   在设置之前,我们应该对自己所要进行设置的网络环境和要求有一个全面的了解,以便在设置的时候做到心中有数。在本例中我们就是以图7-5所示为参考。
   另外,由于IP的转发规则比较多,而且容易变化,所以我们一般建立一个专门的脚本文件(例如:/etc/ipchains.set)来存放这些IP的转发规则。当创建之后,我们要用chmod命令赋予它可执行的权限。然后运行它,这样IP的转发规则就生效了。
   为了让这个IP转发规则能够在一启动就生效,我们必须在/etc/rc.d/rc.local中加上一行:
   /etc/ipchains.set
   3. 基础知识
   LINUX内核在一启动时规定了三个
TAGs入门   组网   代理服务   地址   设置   IP    
 上一篇:Linux组网入门(5):DNS服务器   下一篇:Linux服务器硬盘提速方案
Linux组网入门(6):代理服务器 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: