利用代理服务器实现共享上网报告?

利用代理服务器实现共享上网报告?,第1张

我们要知道局域网最大的特点就是可以实现资源的最佳利用,如:共享磁盘设备、打印机等,从而可以在组建的局域网内部互相调用文件,并可在任何一台共享打印机上进行打印;当然我们也可以借助Wingate或Sygate等软件多机共享一台Modem上网;或者通过代理服务器连上Internet,享受非一般的速度。如果你家里有一台以上的电脑,如果你想把你的电脑游戏室升级到网吧,那么你得考虑把它们连成局域网。

别以为很难,其实如果只是组建一个小型的局域网,我们只要添置几块网卡和一些数据线,就可以自己动手“丰衣足食”。我们知道,Win98内置了点到点(pc to pc)的网络配置能力,这使建立小型网络变得简单。如果你的局域网有很多台机,那么您需要一个成熟的网络操作系统来管理网络,例如:WinNT、Netware或Linux等。

串并口通讯联网

如果你只是想把两台装有Windows系列操作系统的PC连接起来,我们可以直接通过计算机的串、并口,利用串、并行通讯电缆(pc to pc),把两台微机连接好后,在Windows的“控制面板/网络”下的“适配器”中选Microsoft的“拨号网络适配器”和“协议”中的“IPX/SPX兼容协议”及“NetBEUI协议”。然后启动“控制面板”,选择“添加/删除程序”,单击“安装Windows程序”,选择“通讯”,单击“直接电缆连接”,再利用Windows安装盘进行安装。安装好后,重新启动计算机。选定一台计算机作主机,在主机“我的电脑”中用右键某一驱动器(如C驱),选择“共享”,选好共享级别。分别在两机的附件中运行“直接电缆连接”,在主机上,选择所用的通讯端口。选另一台作客户机,按提示操作,稍等片刻,联机完成。打开“客户机”桌面上的“网上邻居”,你会发现你不再孤独了,你可通过“网上邻居”访问你的主机,也可以通过“映射网络驱动器”的方法将网络驱动器映射为自己的虚拟物理驱动器,更妙的是如果你所联的主机已经上了局域网,那么你还能通过主机访问所有的网上资源。而且在你访问的同时,并不影响主机的正常工作,这一点对于笔记本电脑的用户尤为有利。

网卡通讯联网

当微机(pc)多于两台的话,就需要用到网卡、网线和集线器(HUB)。如果局域网中没有网卡,就如河流没有桥梁架在两岸一样。网卡是网络接口卡NIC(NETWORK Interface Card)的简称,它是局域网最基本的组件之一。网卡安装在网络计算机和服务器的扩展槽中,充当计算机和网络之间的物理接口,因此可以简单地说网卡就是接收和传送数据桥梁。网卡根据传输速率可分为:10Mbps网卡(ISA 插口或PCI插口)、100Mbps PCI插口网卡、10Mbps/100Mbps自适应网卡和千兆网卡。目前10Mbps ISA插口的网卡仍以其低廉的价格占有市场的一定份额,但由于10Mbps ISA插口网卡的网络传输速率低,且占用大量的CPU资源,只适应于那些对速度要求不高的局域网,因此我推荐用100Mbps PCI插口的网卡或者10Mbps/100Mbps自适应网卡,价格不贵又能够适应于用户比较多,网上传输的数据量大和需要进行多媒体信息传输的应用环境。

在选择网线时要先看你所购买的网卡的接口类型,网卡的接口有两种类型(RJ45和BNC):BNC口是用细同轴电缆作为传输媒介的一种网卡接口。RJ45是采用双绞线作为传输媒介的一种网卡接口,RJ45的接口酷似电话线的接口,但网络线使用的是8芯的接头,使用RJ45的缺点是架设成本高,但安装和维护较为方便,因此我们一般使用RJ45接口。集线器 (HU:根据微机的数量,利用 HUB构成星形结构,在工作站较多的情况下,会因 HUB的处理速率远远低于通信线路的传输速度,从而造成瓶颈问题。因此有条件的话可选用交换机。一个 Hub所组成的域称为冲突域,也就是说,网络上任何一台计算机在收发数据时,其他所有计算机都能够收到,且这些计算机不能同时进行数据的收发,否则会发生碰撞(CSMA/ CD协议会阻止碰撞 )。此外每台接入 Hub的计算机,都要检测接收到的数据目的地址,以确认是否是收到自己的通信信息,因此计算机 CPU占用率高,全网通信效率低,只适用于小型工作组级别应用。

集线器HUB或者交换机的作用:

(1)每个双绞线接口只与一个工作站 (网卡)相连,信号点对点传输。

(2)当某一端口接收到信号时,HUB将其整形再生并广播到其他每个端口。

(3)HUB本身可自动检测信号碰撞,当碰撞发生时立即发出阻塞 (jam)信号通知其他端口。

(4)某一端口的传输线或网卡发生故障时,HUB自动隔离该端口,使其不影响其他端口的正常工作,因为现在的100MB的交换机价格很便宜,所以一般都选择100Mbps的网卡和100M的交换机。

局域网所需的组件都已经齐了,现在就以在现时最稳定的个人操作系统Windows2000 Professional为基础跟我来一步一步组建局域网吧。

连接局域网的步骤:

1、安装网卡。关闭计算机,打开机箱,找到一空闲PCI插槽(一般为较短的白色插槽),插入网卡,上好螺丝。

2、连接网线。将网线一头插在网卡接头处,一头插到交换机或HUB上。

3、安装网卡驱动程序。打开计算机,操作系统会检测到网卡并提示您插入驱动程序盘。插入随网卡销售的驱动程序盘,然后单击“下一步”,Windows找到驱动程序后,会显示确定屏幕,单击“下一步”。如果Windows没有找到驱动程序,单击“设备驱动程序向导”中的“浏览”按钮来指定驱动器的位置。如果您的驱动程序不是最新的版本,可以打开“设备管理”,运行“更新设备驱动程序器向导”,双击“网络适配器”,然后选中您的网卡,选择“驱动程序”键,单击“升级驱动程序”按钮。Windows会提示您插入Windows安装盘,按照提示操作即可。您还必须为网络中的每一台计算机指定一个唯一的名字和相同的工作组名(例如默认的Workgroup),然后再重新启动计算机。具体操作为在桌面“我的电脑”图标上点右键,单击“属性”。在弹出的对话框里点击“网络标识”,再点击“属性”,在“计算机”名中填入你想要指定的机器名,在工作组中填入统一的工作组名,点击确定完成。

4、安装必要的网络协议。在桌面“网上邻居”图标上单击右键,点击“属性”,在“本地连接”图标上单击右键,在弹出的属性对话框里点击“安装”,双击“协议”安装“Internet协议(TCP/IP)”,双击“客户”安装“Microsoft网络客户端”,重新启动计算机。

5、实现网络共享。在桌面“网上邻居”图标上单击右键,点击“属性”,在“本地连接”图标上单击右键,在弹出的属性对话框里点击“安装”,双击“服务”安装“Microsoft网络的文件和打印机共享”,单击“确定”,需重新启动计算机后这些设置才有效。如果您要共享驱动器或目录,在资源管理器中或桌面上,打开“我的电脑”,右击欲共享的驱动器或目录,选择“共享”,填写相应的内容。如果选择共享整个驱动器,则该驱动器下的所有目录均为网络共享。打开“网络邻居”图标可以得到网络上计算机的列表。双击您欲访问的计算机,进入驱动器。要想映射网络驱动器,请查阅Windows帮助文件。如果在使用网络访问打印机或别的计算机时出现问题,请检查您的网线连接,保证连线和共享设置正确。

6、设置可任选的启动口令安装网络驱动程序后第一次启动计算机时,会弹出一对话框提示您键入Microsoft网络的用户和口令。键入用户名,以后每次启动计算机时它会自动显示(可以使用第三步中指定的计算机名)。如果不想设置口令,将口令行置空,然后“确定”,否则键入口令,并确定口令。如果输入的口令与设置的口令不符,则计算机虽可在本地运行操作系统,但不能上网共享资源。

哈哈这样我们一个简单的基于Windows2000 Professinal的局域网建立起来了,你也可以用以上方法在你的邻里之间建立一个局域网

一、 组网设备准备

这里笔者假设你已经到电信申请了ADSL宽带业务,并且已经安装到位。组建共享局域网时,请先查看你的ADSL Modem产品说明,如果支持路由功能,那就可以省去购买宽带路由器的钱;反之,这一设备必不可少;

另外,另一必不可少的设备就是交换机,计算机之间的相互通信全靠它作中转设备;还有就是每台计算机需要安装一块网卡负责接收数据,以及急讣父��荽�涞耐ǖ馈��撸琌K,基本上就这些东西了。而如果你只有两台计算机,大可不必如此麻烦,直接在两台计算机里各安装一块网卡,再用网线连接起来就OK了。

1、 宽带路由器

宽带路由器有两个作用,一个作用是连通不同的网络,另一个作用是选择信息传送的线路,它是共享宽带连接的最佳解决方案。并以易使用、易管理、零维护的优点成为Internet共享接入的首选设备。

选择路由器和选择电脑是一个道理,首先要看硬件。硬件是路由器运行的基础,硬件型号好,质量高,路由器不但功能稳定,而且可进行功能的扩展。比如接入计算机数量,一般中上档次的接入路由器可支持100台PC机,且除了IP共享和路由功能外还具有防火墙、时间管理、DMZ等功能;再比如大容量的内存和闪存,都可为路由器提供强劲的处理能力。

目前市面上,这类产品的品牌不少,大家可向周围朋友打听打听,什么牌子在当地口碑不错。比较常见的有:友讯(D-LINK)、TP-LINK、艾泰科技、思科、3Com、华为3Com等。

2、 交换机

交换机,这个集线器的后续产品,无论是在速度及具备功能上,都是前者所不能比拟的。其主要功能就是实现多台计算机的互连互通,相当于文前提到的“中间人”的作用。

而在如今家用交换机市场,因为不同品牌、不同端口数的交换机价格差距很大,所以在选购时,应该根据自己的实际情况来选择,比如选择的组网方式、承受的价格、品牌、喜欢的交换机外形等,另外还必须注意交换机的各项性能指标,比如接口数量等,一般说来,5口和8口的交换机是首选。

3、 网卡、网线

网卡亦称作NIC,其意思是Network Interface Card(网络接口卡),它的作用是将数据分解为数据包再发送至网络。目前市面上主要是PCI接口的网卡。

另一方面,我们平常所说的10M网卡,100M网卡,10M/100M自适应网卡等,主要是按照网卡连接速率来划分的。综合以上所说,如今家用最成熟的选择是PCI接口的10M/100M产品。笔记本则是使用的PCMCIA接口的网卡,其价格比普通PC机上的PCI网卡要贵出不少,一般PCI网卡几十元即可拿下,而PCMCIA通常都要1、2百。

而在网线方面,没有过多注意的。一般都是选择超五类的双绞线,大家在购买时,商家就会依据你的网络类型替你做好接头的,所以不必担心。网线的价格以长度来衡量,一般为15元/米。

PCI网卡(普通台式机)

PCMCIA网卡(笔记本)

三、 关于设备的连接

前面我们已经清楚了组建这么一个网络需要什么设备,以及各设备的选购常识。那么,如何根据具体情况,最终确定自己究竟需要哪些设备呢?以下是可能的几种情况:

1、 双机直连

即是说其中一台计算机与ADSL Modem相连,然后通过网卡直接与另一台计算机连接。如果采用这种连接,就需要在宽带接入的计算机上作internet共享代理设置,比如安装wingate等代理软件,来实现双机共享上网。这算是最最廉价的网络。

2、 宽带路由器+网卡+计算机

这种方式主要用在共享计算机不多的情况下。因为一般的宽带路由器都提供了4个交换机端口,如果需要共享的计算机小于4台的话,就没必要再花钱去购买交换机了。具体连接方式为:ADSL宽带线路连接ADSL Modem,直连双绞线连接Modem和路由器,其它计算机用交叉双绞线与路由器相连即可。

3、 宽带路由器+交换机+网卡+计算机

对应上面一种情况,此方式就是运用在共享计算机大于宽带路由器交换端口的情况下。这时就需要交换机帮忙,并根据共享计算机的数量选择相应端口的交换机。即是说,所有共享计算机先与交换机相连,再通过交换机连接宽带路由器,从而实现共享上网。

4、 交换机+网卡+计算机

如果你的ADSL Modem自带有宽带路由功能(请查看产品说明书),那就可以省去路由器。这是跟上面三种方式唯一的区别。连接起来也更方便,根本不需要设置,连接方式为:ADSL Modem的LAN口用双绞线和交换机的任一端口连接,再将各计算机分别接入交换机剩余端口即可。

组建局域网,共享上网

——》一:网线直连不是最经济的做法,虽然我们只需要添加1条网线、1块网卡,总价格算起来不会超过100元。但是这种做法有个最大的弱点,就是上网时两台机器必须同时开着,除非你只用主机上网,否则日积月累的电费,呵呵也不见得比其它方法省钱~~,所以建议最好不使用这种办法!

——》二:采用交换机/HUB、服务器的方式。我们可以采用SyGate等软件做成谁先开机谁做主机的共享形式,但还潜在一个问题,就是当作为主机的那台机器提前关机了,另外一台机器的网络也许随之断开,如果你这时候正用ie下载文件到一半,如果你正在玩联众……呵呵后果可想而知!

——》三:采用宽带路由方式。如果你不想自己设置,可以在购买宽带的同时让技术人员帮你设置好。

同时这种方式带来的好处还有就是稳定!是以上所有方案中最稳定的,这个好像没有异议吧。还有就是省力,你不需要每次上网都要拨号了,这都由宽带路由来自动替你完成,而且宽带路由还有断线重拨功能,省去了多少麻烦?接下来就是安全,你暴露在Internet上的IP是你路由的IP,而非机器本身的IP,这样你就无形中被保护起来。

再有就是不违反电信或者网通的规定,即使他限制了MAC地址也没用,因为路由本身是有MAC地址的。

——》1,首先将宽带猫与路由器的WLAN端口连接,可使用猫随机带的连接线。

——》2,用直连网线将路由器的一个Lan口与交换机的UpLing口连接。还用直连网线连接交换机的普通口和电脑。这样硬件环境就做好了。如果你的机器比较少,也就2、3台的话,没有必要加交换机,用直连网线将路由器的一个Lan口与一台电脑连接即可。

——》3,第一台机器,先设置你的网络参数(右键“网上邻居”-“属性”-右键“本地连接”-属性-找到TCP/IP协议后双击它):

IP地址:192168111

子网掩码:2552552550

网关:19216811

DNS:不要管它。

然后一路“确定”,需要重启的时候重启。不过有没有提示,你最好还是重新启动一下。

——》4,第二台机器,如第一台,只是将IP地址变成192168112即可。依次类推,这时已经成功组成局域网。

——》5,设置宽带路由,我想应该有说明书的啦,我只简单介绍一下。

先找一台机器,然后打开IE,在地址栏里输入:19216811后回车。提示你输入用户名和密码,见说明书。

正确进入路由配置界面后,上网方式,如果是ADSL拨号选择PPPOE形式,这时需要输入你上网的用户名和密码。如果是直接分配IP选择直接IP形式,详情请咨询ISP商。

家庭组网

一、家庭网络的规划与建设

(一)家庭组网的必要性

近年来,家庭网络逐渐成为IT界的一个热门话题,连接两台或两台以上的计算机,共享其资源的概念越来越流行,家庭组网热已经开始,并将不断升温,有人不禁要问,网络会给家庭带来什么好处呢?

首先就是节约经济支出。如果你家里拥有多台计算机,组建家庭网络不仅可以带来极大的便利,而且还可以节省相应的一些费用。目前我们从到互联网服务商(ISP)处申请的帐号一般是不允许许多台计算机同时共享一个帐号上网的,所以当有两台计算机同时上网时,我们就必须具有两个上网帐号,而且家里必须有两条独立的电话线。也就是说,如果我们原来只有一条电话线和一个帐号,就必须向当地的有关电信部门再申请一条电话线和一个上网帐号。

其次就是可以实现资源共享。建立网络的目的就是最大限度地共享现有资源。目前国内同时拥有两台以上计算机的家庭,其硬件的性能差距比较大,许多家庭一台计算机多是468或586,甚至还有不少是386,而另一台计算机为当今主流配置,主频在300MHz以上。现在的情况是,很多同时使用两台或两台以上计算机的家庭,其组成一般是从486到目前流行的PIII,再加上一台家用打印机。如果将这些计算机连接起来,就可通过网络实现不同机器之间资源共享,从而大大提高了低配置机器的性能。

当然网上娱乐也是必不可少的。由于游戏的魅力实在是太大了,所以家庭用户很少有人会忽视游戏这个环节。现在游戏最为受人注目的莫过于网络对战了,因为许多人已经不满足传统的人机对战了(主要电脑的智商太低),而希望进行人与人之间的高智商实时作战。有了家庭网络,在空闲的时候一家几口在网上进行游戏大战,即便是玩红心大战也是不错的哟。一方面可以消除工作和学习带来的压力,同时也是一种感情的交流。

除上面所说的好处之外,我们还可以在家庭局域网上传输信息、相互进行语音对话或共看一部VCD影片,反正是好处多多,如果你看得心动了,就赶快和我走进以下的内容吧。

看完上面所描绘出的那份欣欣向荣的蓝图,想必你一定为之心动了吧!但是现在新的疑虑又出现了:“组建网络,总觉得是专业人士才可完成的艰难工作,而我的计算机水平顶多只是入门级的,完成家庭网络的架设,能行吗?”你当然可以!不信接着往下看,你就会从最基本的东西开始、得到手把手的帮助!

(二)选择一种适合你的网络

人们在买鞋子的时候,所遵循的标准往往都是:不选最好的,只选最合脚的。网络的规划同样如此!只有根据自己的实际情况,因地制宜,并有一定的长远目光,才能最终设计出一个最适合自己的网络。

下面,我们推荐两种网络规划方案,一种是不要集线器(HUB)的连接,一种是需要集线器(HUB)的连接。原则上,方案一适合由两台计算机组成的家庭网络选用;方案二适合由三台或三台以上计算机组成的家庭网络选用。

集线器(HUB),它是能够把多个原本独立的用户连接起来,使它们构成一个整体,以便共同使用某条通讯线路的设备。

方案一:不要集线器的连接

适用对象:两台计算机之间的连接。

所需硬件:网卡各1块、RJ45头(即水晶头)各1个、双绞线若干米、网络钳(RJ45)1把。

方案说明:双机用双绞线直接互连,不需要通过HUB。

方案二:需要集线器的连接

适用对象:三台(或以上)计算机之间的连接。

所需硬件:网卡各1块、RJ45头(即水晶头)各2个、双绞线若干米、网络钳(RJ45)1把、8口集线器(带宽10M)一个。

方案说明:各机之间用双绞线通过集线器连接在一起,必须要用到集线器。

不管你采用的是以上哪种方案,在购买网卡时,均不要忘了索取驱动程序安装盘,它通常会是一张软盘,否则你可能无法安装完成它!除网卡之外的其他硬件,都不需要驱动程序。

(三)把你的网络连接起来

好了,现在你已经选择了适合你的“鞋子”,接下来要做的,就是以前被你视为洪水猛兽畏而远之的“穿鞋”工作了一把你所准备好的硬件设备连接起来,让你的家庭网络成型!

1网卡的安装

网卡(Net Interface Card)是局域网中最基本和最重要的连接设备。请逐个打开所有计算机的主机箱,选择一个合适(ISA/PCI)的空闲插槽,将你的网卡插进去,然后用螺丝固定住,再盖好主机箱即可。

在往主板上插网卡时,一般采用先插后半部,再压下前半部的方法;如欲将网卡从主板上取下来,操作与插网卡正好相反,即一般采用先取前半部,再取后半部的方法。不仅网卡,主板上其他卡(比如显卡、Modem、声卡等)的插法和取法,都与之一样呢!

2网线的制作

网线是用来连接计算机网络必不可少的设备。每条完整的网线均由一条两端各带一个RJ45头(水晶头)的双绞线组成。欲制作网线,需事先准备好双绞线、RJ45头和网络钳这三种设备。

在制作时,先将双绞线的一头塞到网络钳的两刀片之间,露出约2厘米长,然后轻压住网络钳的两柄,缓缓将双绞线转一个圈,则可以将外皮剥下,露出里面的线芯。

由于双绞线的线芯均是两两缠在一起的,因此才被称之为双绞线。

由于一般的家庭网络都是10M的(主要是指HUB为10M,因为100M的HUB太贵),因此总共的四股线芯,只需留其中的任意两股即可,其它两股可用网络钳的刀给断去;然后,把剩下的两股共四根线展开、抚直(很重要),并按前三根靠近、第四根稍张开的顺序排列起来。

最后把RJ45头的卡子朝下,将四根线芯依次塞进RJ45头的第1、2、3、6孔(从左至右),注意一定要塞紧;之后将此带线芯的RJ45头塞进网络钳孔中,再用大力压网络钳的双柄,直到确保RJ45头已将线芯夹牢了为止!

在制作时,如果你采用的是前文所讲的方案一,则请务必注意,另一端的做法和已讲的一端有所不同:比如,一端留的是红股(包括红和红白两根)和蓝股(包括蓝和蓝白两根),其在RJ45头孔中排列顺序为红1、红白2、蓝3、蓝白4;则在另一端也必须留同样颜色的两股,其在RJ45头孔中排列顺序应为蓝1、蓝白2、红3、红白6,即和前端是相互交叉的!在此种方案中,网线所需条数为共1条。

如果你采用的是前文所讲的方案二,则简单多了,因为其另一端的做法和已讲的一端完全一样:即留完全相同颜色的两股(共四根)线芯,按照完全同样的顺序排列起来,放进RJ45头中用网络钳夹好就行了!在此种方案中,网线所需条数为每机各1条。

在你刚开始学习做网线时,可能会因为各线芯的项端不够整齐、或线芯在RJ45孔中没有塞紧、或用网络钳夹RJ45头时不够用力等原因,而导致网线制作不成功,这样就不能达到连通网络的目的!此时就需要你将“坏”的RJ45头剪掉,再重新连接新的RJ45头;旧的RJ45头已不可再利用了。

当然,如果你能去买一台RJ45的测线仪就好了!这样,你只需将已做好的网线塞入到测线仪的两个孔中,当指示灯亮时,那么恭喜你,这表明网线制作是成功的!否则……

3网线的连接

如果你选择的是方案一,则只需直接将所制作好网线两端的RJ45头(不分顺序和先后)分别插入到两台计算机网卡的RJ45孔中就算连接成功了!

如果你选择的是方案二,则需先将HUB(即集线器)放置到合适位置,电源插上,然后将所制作好网线两端的RJ45头(不分顺序和先后)分别插入到计算机网卡的RJ45孔和HUB中就算连接成功了!

4网线的检测

如果没有测线仪的话,当网线连接成功之后,也可以初步断定网线制作的是否成功。

对于方案一,连接成功之后,如果两台计算机网卡的指示灯都有亮,则一般说明网线制作是成功的。

对于方案二,连接成功之后,如果计算机网卡上的指示灯和HUB上相应孔的指示灯都有亮,则一般说明网线制作是成功的。

二、建立Windows 98对等网

(一)硬件的安装

1网络适配器的安装

网络适配器的物理安装过程和别的扩展卡安装没有什么区别,在这里不详细介绍。我们着重介绍的是如何在Windows 98的情况下安装网络适配器,其实是安装网络适配器的驱动程序,以便能驱动网络适配器工作。

网卡安插完成后,在正常地情况下,重新开机进入Windows 98时便会自动出现“找到新硬件”的提示框。系统会提示插入Windows 98光盘,按照提示插入光盘,系统会自动完成安装,完成安装后重新启动计算机,网卡的安装就完成了。

另一种情况时网卡无法被系统识别,重新开机时没有找到新硬件。这时可以手工添加网

一、浏览器缓存

浏览器缓存即http缓存;浏览器缓存根据是否需要向服务器重新发起HTTP请求将缓存过程分为两个部分,分别是 强制缓存 和 协商缓存  。

浏览器第一次请求资源的时候服务器会告诉客户端是否应该缓存资源,根据响应报文中HTTP头的缓存标识,决定是否缓存结果,是则将请求结果和缓存标识存入浏览器缓存中。如下图:

1强制缓存 :浏览器会对缓存进行查找,并根据一定的规则确定是否使用缓存。

强制缓存的缓存规则?

HTTP/10 Expires 这个字段是绝对时间,比如2018年6月30日12:30,然后在这个时间点之前的请求都会使用浏览器缓存,除非清除了缓存。

这个字段的缺点就是只会同步客户端的时间,这就有可能修改客户端时间导致缓存失效。

HTTP/11 cache-Control       这个是11的时候替换Expires的,它会有几种取值:

public :所有内容都将被缓存(客户端和代理服务器都可缓存)

private :所有内容只有客户端可以缓存, Cache-Control的默认取值

no-cache :客户端缓存内容,但是是否使用缓存则需要经过协商缓存来验证决定

no-store :所有内容都不会被缓存,即不使用强制缓存,也不使用协商缓存

max-age=xxx (xxx is numeric) :缓存内容将在xxx秒后失效

比如max-age=500,则在500秒内再次请求会直接只用缓存。

优先性:cache-Control > Expires

如果同时存在,cache-Control会覆盖Expires。

这个字段的缺点就是:

如果资源更新的速度是秒以下单位,那么该缓存是不能被使用的,因为它的时间单位最低是秒。

如果文件是通过服务器动态生成的,那么该方法的更新时间永远是生成的时间,尽管文件可能没有变化,所以起不到缓存的作用。

上图中浏览器缓存中存在该资源的缓存结果,并且没有失效,就会直接使用缓存的内容。

上图中浏览器缓存中没有该资源的缓存结果和标识,就会直接向服务器发起HTTP请求。

2协商缓存: 浏览器的强制缓存失效后(时间过期),浏览器携带缓存标识请求服务器,由服务器决定是否使用缓存。

服务器决定的规则?

控制协商缓存的字段有 Last-Modified / If-Modified-Since 和 Etag / If-None-Match。

①Last-Modified 是服务器返回给浏览器的本资源的最后修改时间。

当下次再次请求的时候,浏览器会在请求头中带 If-Modified-Since ,即上次请求下来的 Last-Modified 的值,

然后服务器会用这个值和该资源最后修改的时间比较,如果最后修改时间大于这个值,则会重新请求该资源,返回状态码200。

如果这个值和最后修改时间相等,则会返回304,告诉浏览器继续使用缓存。

② Etag 是服务器返回的一个hash值。

当下次再次请求的时候,浏览器会在请求头中带 If-None-Match ,即上次请求下来的 Etag 值,

然后服务器会用这个值和该资源在服务器的 Etag 值比较,如果一致则会返回304,继续使用缓存;如果不一致,则会重新请求,返回200。

二、服务器缓存

上面是一个简单的流程图:

用户1访问A页面,服务器解析A页面返回给用户1,同时在服务器内存上做一定映射,把A页面缓存在硬盘上面

用户2访问A页面,服务器直接根据内存上的映射找到对应的页面缓存,直接返回给用户2,这样就减少了服务器对同一页面的重复解析

服务器缓存和浏览器缓存的区别:

服务器缓存是把页面缓存到服务器上的硬盘里,而浏览器缓存是把页面缓存到用户自己的电脑里

Nginx服务器 

Nginx是一个高性能的HTTP和反向代理服务器。具有非常多的优越性:

在连接高并发的情况下,Nginx是Apache服务器不错的替代品,Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。

Nginx提供了expires、etag、if-modified-since指令来实现浏览器缓存控制。

nginx -s reload#重新加载配置文件 

nginx -s reopen#重新打开log文件 

nginx -s stop#快速关闭nginx服务 

nginx -s quit #优雅的关闭nginx服务,等待工作进程处理完所有的请求

Nginx设置静态文件的缓存过期时间 

location ~\(js|css|html|png|jpg)$ {

  expires 3d;

}

 expires    3d;  //表示缓存3天

expires    3h;  //表示缓存3小时

expires    max;  //表示缓存10年

expires    -1;  //表示永远过期。

如果设置为-1在js、css等静态文件在没有修改的情况下返回的是http 304,如果修改返回http 200

对于静态资源会自动添加ETag,可以通过添加etag off指令禁止生成ETag。如果是静态文件,那么Last-Modified值为文件的最后修改时间。

在开发调试web的时候,经常会碰到因浏览器缓存(cache)而经常要去清空缓存或者强制刷新来测试的烦恼,提供下apache不缓存配置和nginx不缓存配置的设置。在常用的缓存设置里面有两种方式,都是使用add_header来设置:分别为Cache-Control和Pragma。

location ~ \(css|js|swf|php|htm|html )$ {

  add_header Cache-Control no-store;

  add_header Pragma no-cache;

  }

nginx gzip压缩

使用 gzip 压缩可以降低网站带宽消耗,同时提升访问速度。

主要在nginx服务端将页面进行压缩,然后在浏览器端进行解压和解析,

目前大多数流行的浏览器都迟滞gzip格式的压缩,所以不用担心。

默认情况下,Nginx的gzip压缩是关闭的,同时,Nginx默认只对text/html进行压缩

gzip on;

ersio #开启gzip压缩输出

gzip_http_vn 10 ;#默认11

#其中的gzip_http_version的设置,它的默认值是11,就是说对HTTP/11协议的请求才会进行gzip压缩

#如果我们使用了proxy_pass进行反向代理,那么nginx和后端的upstream server之间是用HTTP/10协议通信的。

gzip_vary on ;

#和http头有关系,加个vary头,给代理服务器用的,有的浏览器支持压缩,有的不支持,

#所以避免浪费不支持的也压缩,所以根据客户端的HTTP头来判断,是否需要压缩

gzip_comp_level 6;

#设置gzip压缩等级,等级越底压缩速度越快文件压缩比越小,反之速度越慢文件压缩比越大 1-9

gzip_proxied any;

#Ngnix作为反向代理的时候启用

#expample:gzip_proxied no-cache;

# off – 关闭所有的代理结果数据压缩

# expired – 启用压缩,如果header中包含”Expires”头信息

# no-cache – 启用压缩,如果header中包含”Cache-Control:no-cache”头信息

# no-store – 启用压缩,如果header中包含”Cache-Control:no-store”头信息

# private – 启用压缩,如果header中包含”Cache-Control:private”头信息

# no_last_modified – 启用压缩,如果header中包含”Last_Modified”头信息

# no_etag – 启用压缩,如果header中包含“ETag”头信息

# auth – 启用压缩,如果header中包含“Authorization”头信息

# any – 无条件压缩所有结果数据

gzip_types text/html ;#压缩的文件类型

#设置需要压缩的MIME类型,非设置值不进行压缩

#param:text/html|application/x-javascript|text/css|application/xml

gzip_buffers 16 8k; #设置gzip申请内存的大小,其作用是按块大小的倍数申请内存空间设置gzip申请内存的大小,其作用是按块大小的倍数申请内存空间

#设置gzip申请内存的大小,其作用是按块大小的倍数申请内存空间

# param1:int 增加的倍数

# param2:int(k) 后面单位是k

# example: gzip_buffers 4 8k;

# Disable gzip for certain browsers

gzip_disable “MSIE [1-6](!SV1)”; #ie6不支持gzip,需要禁用掉ie6

HTTP:超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。Ted Nelson组织协调万维网协会(World Wide Web Consortium)和互联网工程工作小组(Internet Engineering Task Force )共同合作研究,最终发布了一系列的RFC,其中著名的RFC 2616定义了HTTP 11。

  1工作原理:一次HTTP操作称为一个事务,其工作过程可分为四步:

  首先客户机与服务器需要建立连接。只要单击某个超级链接,HTTP的工作就开始了。

  建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。

  服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。

  客户端接收服务器所返回的信息通过浏览器显示在用户的显示屏上,然后客

  http工作流程图

  户机与服务器断开连接。

  如果在以上过程中的某一步出现错误,那么产生错误的信息将返回到客户端,由显示屏输出。对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。

  许多HTTP通讯是由一个用户代理初始化的并且包括一个申请在源服务器上资源的请求。最简单的情况可能是在用户代理和服务器之间通过一个单独的连接来完成。在Internet上,HTTP通讯通常发生在TCP/IP连接之上。缺省端口是TCP 80,但其它的端口也是可用的。但这并不预示着HTTP协议在Internet或其它网络的其它协议之上才能完成。HTTP只预示着一个可靠的传输。

  这个过程就好像我们打电话订货一样,我们可以打电话给商家,告诉他我们需要什么规格的商品,然后商家再告诉我们什么商品有货,什么商品缺货。这些,我们是通过电话线用电话联系(HTTP是通过TCP/IP),当然我们也可以通过传真,只要商家那边也有传真。

在WWW中,“客户”与“服务器”是一个相对的概念,只存在于一个特定的连接期间,即在某个连接中的客户在另一个连接中可能作为服务器。基于HTTP协议的客户/服务器模式的信息交换过程,它分四个过程:建立连接、发送请求信息、发送响应信息、关闭连接。

HTTP协议是基于请求/响应范式的。一个客户机与服务器建立连接后,发送一个请求给服务器,请求方式的格式为,统一资源标识符、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。服务器接到请求后,给予相应的响应信息,其格式为一个状态行包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。

2http运作方式的一种

  其实简单说就是任何服务器除了包括HTML文件以外,还有一个HTTP驻留程序,用于响应用户请求。你的浏览器是HTTP客户,向服务器发送请求,当浏览器中输入了一个开始文件或点击了一个超级链接时,浏览器就向服务器发送了HTTP请求,此请求被送往由IP地址指定的URL。驻留程序接收到请求,在进行必要的操作后回送所要求的文件。在这一过程中,在网络上发送和接收的数据已经被分成一个或多个数据包(packet),每个数据包包括:要传送的数据;控制信息,即告诉网络怎样处理数据包。TCP/IP决定了每个数据包的格式。如果事先不告诉你,你可能不会知道信息被分成用于传输和再重新组合起来的许多小块。

  许多HTTP通讯是由一个用户代理初始化的并且包括一个申请在源服务器上资源的请求。最简单的情况可能是在用户代理(UA)和源服务器(O)之间通过一个单独的连接来完成。

  当一个或多个中介出现在请求/响应链中时,情况就变得复杂一些。中介有三种:代理(Proxy)、网关(Gateway)和通道(Tunnel)。一个代理根据URI的绝对格式来接受请求,重写全部或部分消息,通过URI的标识把已格式化过的请求发送到服务器。网关是一个接收代理,作为一些其它服务器的上层,并且如果必须的话,可以把请求翻译给下层的服务器协议。一个通道作为不改变消息的两个连接之间的中继点。当通讯需要通过一个中介(例如:防火墙等)或者是中介不能识别消息的内容时,通道经常被使用。

3协议基础

  HTTP(HyperText Transport Protocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2616。HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URL、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。服务器以一个状态行作为响应,响应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体内容。

  通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。这两种类型的消息由一个起始行,一个或者多个头域,一个指示头域结束的空行和可选的消息体组成。HTTP的头域包括通用头,请求头,响应头和实体头四个部分。每个头域由一个域名,冒号(:)和域值三部分组成。域名是大小写无关的,域值前可以添加任何数量的空格符,头域可以被扩展为多行,在每行开始处,使用至少一个空格或制表符。

4通用头域

  通用头域包含请求和响应消息都支持的头域,通用头域包含Cache-Control、Connection、Date、Pragma、Transfer-Encoding、Upgrade、Via。对通用头域的扩展要求通讯双方都支持此扩展,如果存在不支持的通用头域,一般将会作为实体头域处理。

  常用的通用域头有:

  Cache-Control头域、Date头域、Pragma头域、Host头域、Referer头域、Range头域、User-Agent头域

  一、货物入库

  1. 物流配送中心根据客户的入库指令视仓储情况做相应的入库受理。

  2. 按所签的合同进行货物受理并根据给货物分配的库区库位打印出入库单。

  3. 在货物正式入库前进行货物验收,主要是对要入库的货物进行核对处理,并对所入库货物进行统一编号(包括合同号、批号、入库日期等)。

  4. 然后进行库位分配,主要是对事先没有预分配 的货物进行库位自动或人工安排处理,并产生货物库位清单。

  5. 库存管理主要是对货物在仓库中的一些动态变化信息的统计查询等工作。

  6. 对货物在仓库中,物流公司还将进行批号管理、盘存处理、内驳处理和库存的优化等工作,做到更有效的管理仓库。

  二、运输配送

  1.物流配送中心根据客户的发货指令视库存情况做相应的配送处理。

  2.根据配送计划系统将自动地进行车辆、人员、 应的出库处理。

  3.根据选好的因素由专人负责货物的调配处理,可分自动配货和人工配货, 目的是为了更高效的利用物流公司手头的资源。

  4. 根据系统的安排结果按实际情况进行人工调整。

  5. 在安排好后,系统将根据货物所放地点(库位)情况按物流公司自己设定的优化原则打印出拣货清单。

  6. 承运人凭拣货清单到仓库提货,仓库那头做相应的出库处理。

  7. 装车完毕后,根据所送客户数打印出相应的送货单。

  8. 车辆运输途中可通过GPS车辆定位系统随时监控,并做到信息及时沟通。

  9. 在货物到达目的地后,经受货方确认后,凭回单向物流配送中心确认。

  10.产生所有需要的统计分析数据和财务结算,并产生应收款与应付款。

HTTP协议工作原理是我们现在要为大家介绍的内容。作为WWW的基础的HTTP协议,它的工作原理可以分为外部和内部。试想,一个庞大的网络结构,它的协议又怎么能简单呢。所以我们一定要在了解了HTTP协议的基本结构后来看它的工作流程。 

  既然我们明白了URL的构成,那么HTTP是怎么工作呢?我们接下来就要讨论这个问题。 

  一次HTTP操作称为一个事务,HTTP协议工作原理可分为四步: 

  首先客户机与服务器需要建立连接。只要单击某个超级链接,HTTP的工作就开始了。

  建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。 

  服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。 

  客户端接收服务器所返回的信息通过浏览器显示在用户的显示屏上,然后客http工作流程图户机与服务器断开连接。 

  如果在以上过程中的某一步出现错误,那么产生错误的信息将返回到客户端,有显示屏输出。对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。 

  许多HTTP通讯是由一个用户代理初始化的并且包括一个申请在源服务器上资源的请求。最简单的情况可能是在用户代理和服务器之间通过一个单独的连接来完成。在Internet上,HTTP通讯通常发生在TCP/IP连接之上。缺省端口是TCP 80,但其它的端口也是可用的。但这并不预示着HTTP协议在Internet或其它网络的其它协议之上才能完成。HTTP只预示着一个可靠的传输。 

  这个过程就好像我们打电话订货一样,我们可以打电话给商家,告诉他我们需要什么规格的商品,然后商家再告诉我们什么商品有货,什么商品缺货。这些,我们是通过电话线用电话联系(HTTP是通过TCP/IP),当然我们也可以通过传真,只要商家那边也有传真。 

  以上简要介绍了HTTP协议的宏观运作方式,下面介绍一下HTTP协议工作原理的内部操作过程。

  在WWW中,“客户”与“服务器”是一个相对的概念,只存在于一个特定的连接期间,即在某个连接中的客户在另一个连接中可能作为服务器。基于HTTP协议的客户/服务器模式的信息交换过程,它分四个过程:建立连接、发送请求信息、发送响应信息、关闭连接。这就好像上面的例子,我们电话订货的全过程。 

  其实简单说就是任何服务器除了包括HTML文件以外,还有一个HTTP驻留程序,用于响应用户请求。你的浏览器是HTTP客户,向服务器发送请求,当浏览器中输入了一个开始文件或点击了一个超级链接时,浏览器就向服务器发送了HTTP请求,此请求被送往由IP地址指定的URL。驻留程序接收到请求,在进行必要的操作后回送所要求的文件。在这一过程中,在网络上发送和接收的数据已经被分成一个或多个数据包(packet),每个数据包包括:要传送的数据;控制信息,即告诉网络怎样处理数据包。TCP/IP决定了每个数据包的格式。如果事先不告诉你,你可能不会知道信息被分成用于传输和再重新组合起来的许多小块。 

  也就是说商家除了拥有商品之外,它也有一个职员在接听你的电话,当你打电话的时候,你的声音转换成各种复杂的数据,通过电话线传输到对方的电话机,对方的电话机又把各种复杂的数据转换成声音,使得对方商家的职员能够明白你的请求。这个过程你不需要明白声音是怎么转换成复杂的数据的。到此整个HTTP协议工作原理的过程就为大家介绍完了

21、C PGP

PGP为公网传输邮件加密软件(网络通信);winzip文件压缩工具可实现压缩文件加密(本地);Prolock本地加密软件;pctools电脑工具包,含本地加密软件。

22、B 发信方的私钥

基于不对称加密方式:加密明文时采用(收信方)公钥加密,解密密文时使用(发信方)私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是唯一知道自己私钥的人。

23、B 病毒具有寄生机制,而蠕虫则借助于网络运行

蠕虫病毒其实也是病毒的一种,这里问的应该是与其他病毒的区别。蠕虫病毒的前缀是:Worm。这种病毒的公有特性是通过网络或者系统漏洞进行传播。

24、A 无路由双宿主主机上

无路由双宿主主机:有二个网络接口,本身可作为一个防火墙,将数据包传输到其对应的代理服务程序,需关闭其路由功能。代理服务器起防火墙作业,阻止外部服务器直接与内部服务器通信,故代理服务器需与内部和外部均互联,但不架设内部与外部的路由。

25、C 允许来自内部主机的所有连接

包过滤路由器的工作过程如下。

a、在包过滤路由器的端口存储包过滤规则(安全策略)。

b、当数据包达到端口时,对数据包的报头进行分析。

c、应用包过滤规则对数据包进行匹配。

d、如果一条规则允许数据包传输,该数据包被输出。

e、如果一条规则拒绝数据包传输,该数据包被阻塞。

f、如果一个数据包不能被任一条规则匹配,该数据包被阻塞。数据包匹配流程图如附图所示。

屏蔽路由器包过滤之后对访问不在进行控制,所有连接均将被允许。、

26、C 黑客工具软件

27、C 从n分解q、p的难度

RSA是被研究得最广泛的公钥算法,RSA的安全性依赖于大数分解。(详细情况请自己了解该算法)

不对称加密算法的安全性依赖于私钥的安全性。

28、B RSA

PGP是一个基于RSA公匙加密体系的邮件加密软件。

37、D

38、B

39、A(网络安全的,这个不一定准确,你自己考虑)

40、D

电路级网关也被称为线路级网关,它工作在会话层。电路级网关用来监控受信任的客户或服务器与不受信任的主机间的TCP握手信息,这样来决定该会话是否合法

41、A

42、B

43、D

44、D

45、B(这个不一定准确,你自己考虑)

有事得走了,具体解释,需要再问

天下的防火墙至少都会说两个词:Yes或者No。直接说就是接受或者拒绝。最简单的防火墙是以太网桥。但几乎没有人会认为这种原始防火墙能管多大用。大多数防火墙采用的技术和标准可谓五花八门。这些防火墙的形式多种多样:有的取代系统上已经装备的TCP/IP协议栈;有的在已有的协议栈上建立自己的软件模块;有的干脆就是独立的一套操作系统。还有一些应用型的防火墙只对特定类型的网络连接提供保护(比如SMTP或者HTTP协议等)。还有一些基于硬件的防火墙产品其实应该归入安全路由器一类。以上的产品都可以叫做防火墙,因为他们的工作方式都是一样的:分析出入防火墙的数据包,决定放行还是把他们扔到一边。

所有的防火墙都具有IP地址过滤功能。这项任务要检查IP包头,根据其IP源地址和目标地址作出放行/丢弃决定。看看下面这张图,两个网段之间隔了一个防火墙,防火墙的一端有台UNIX计算机,另一边的网段则摆了台PC客户机。

当PC客户机向UNIX计算机发起telnet请求时,PC的telnet客户程序就产生一个TCP包并把它传给本地的协议栈准备发送。接下来,协议栈将这个TCP包“塞”到一个IP包里,然后通过PC机的TCP/IP栈所定义的路径将它发送给UNIX计算机。在这个例子里,这个IP包必须经过横在PC和UNIX计算机中的防火墙才能到达UNIX计算机。

现在我们“命令”(用专业术语来说就是配制)防火墙把所有发给UNIX计算机的数据包都给拒了,完成这项工作以后,“心肠”比较好的防火墙还会通知客户程序一声呢!既然发向目标的IP数据没法转发,那么只有和UNIX计算机同在一个网段的用户才能访问UNIX计算机了。

还有一种情况,你可以命令防火墙专给那台可怜的PC机找茬,别人的数据包都让过就它不行。这正是防火墙最基本的功能:根据IP地址做转发判断。但要上了大场面这种小伎俩就玩不转了,由于黑客们可以采用IP地址欺骗技术,伪装成合法地址的计算机就可以穿越信任这个地址的防火墙了。不过根据地址的转发决策机制还是最基本和必需的。另外要注意的一点是,不要用DNS主机名建立过滤表,对DNS的伪造比IP地址欺骗要容易多了。

服务器TCP/UDP 端口过滤

仅仅依靠地址进行数据过滤在实际运用中是不可行的,还有个原因就是目标主机上往往运行着多种通信服务,比方说,我们不想让用户采用 telnet的方式连到系统,但这绝不等于我们非得同时禁止他们使用SMTP/POP邮件服务器吧?所以说,在地址之外我们还要对服务器的TCP/ UDP端口进行过滤。

比如,默认的telnet服务连接端口号是23。假如我们不许PC客户机建立对UNIX计算机(在这时我们当它是服务器)的telnet连接,那么我们只需命令防火墙检查发送目标是UNIX服务器的数据包,把其中具有23目标端口号的包过滤就行了。这样,我们把IP地址和目标服务器TCP/UDP端口结合起来不就可以作为过滤标准来实现相当可靠的防火墙了吗?不,没这么简单。

客户机也有TCP/UDP端口

TCP/IP是一种端对端协议,每个网络节点都具有唯一的地址。网络节点的应用层也是这样,处于应用层的每个应用程序和服务都具有自己的对应“地址”,也就是端口号。地址和端口都具备了才能建立客户机和服务器的各种应用之间的有效通信联系。比如,telnet服务器在端口23侦听入站连接。同时telnet客户机也有一个端口号,否则客户机的IP栈怎么知道某个数据包是属于哪个应用程序的呢?

由于历史的原因,几乎所有的TCP/IP客户程序都使用大于1023的随机分配端口号。只有UNIX计算机上的root用户才可以访问1024以下的端口,而这些端口还保留为服务器上的服务所用。所以,除非我们让所有具有大于1023端口号的数据包进入网络,否则各种网络连接都没法正常工作。

这对防火墙而言可就麻烦了,如果阻塞入站的全部端口,那么所有的客户机都没法使用网络资源。因为服务器发出响应外部连接请求的入站(就是进入防火墙的意思)数据包都没法经过防火墙的入站过滤。反过来,打开所有高于1023的端口就可行了吗?也不尽然。由于很多服务使用的端口都大于1023,比如X client、基于RPC的NFS服务以及为数众多的非UNIX IP产品等(NetWare/IP)就是这样的。那么让达到1023端口标准的数据包都进入网络的话网络还能说是安全的吗?连这些客户程序都不敢说自己是足够安全的。

双向过滤

OK,咱们换个思路。我们给防火墙这样下命令:已知服务的数据包可以进来,其他的全部挡在防火墙之外。比如,如果你知道用户要访问Web服务器,那就只让具有源端口号80的数据包进入网络:

不过新问题又出现了。首先,你怎么知道你要访问的服务器具有哪些正在运行的端口号呢? 象HTTP这样的服务器本来就是可以任意配置的,所采用的端口也可以随意配置。如果你这样设置防火墙,你就没法访问哪些没采用标准端口号的的网络站点了!反过来,你也没法保证进入网络的数据包中具有端口号80的就一定来自Web服务器。有些黑客就是利用这一点制作自己的入侵工具,并让其运行在本机的80端口!

检查ACK位

源地址我们不相信,源端口也信不得了,这个不得不与黑客共舞的疯狂世界上还有什么值得我们信任呢?还好,事情还没到走投无路的地步。对策还是有的,不过这个办法只能用于TCP协议。

TCP是一种可靠的通信协议,“可靠”这个词意味着协议具有包括纠错机制在内的一些特殊性质。为了实现其可靠性,每个TCP连接都要先经过一个“握手”过程来交换连接参数。还有,每个发送出去的包在后续的其他包被发送出去之前必须获得一个确认响应。但并不是对每个TCP包都非要采用专门的ACK包来响应,实际上仅仅在TCP包头上设置一个专门的位就可以完成这个功能了。所以,只要产生了响应包就要设置ACK位。连接会话的第一个包不用于确认,所以它就没有设置ACK位,后续会话交换的TCP包就要设置ACK位了。

举个例子,PC向远端的Web服务器发起一个连接,它生成一个没有设置ACK位的连接请求包。当服务器响应该请求时,服务器就发回一个设置了ACK位的数据包,同时在包里标记从客户机所收到的字节数。然后客户机就用自己的响应包再响应该数据包,这个数据包也设置了ACK位并标记了从服务器收到的字节数。通过监视ACK位,我们就可以将进入网络的数据限制在响应包的范围之内。于是,远程系统根本无法发起TCP连接但却能响应收到的数据包了。

这套机制还不能算是无懈可击,简单地举个例子,假设我们有台内部Web服务器,那么端口80就不得不被打开以便外部请求可以进入网络。还有,对UDP包而言就没法监视ACK位了,因为UDP包压根就没有ACK位。还有一些TCP应用程序,比如FTP,连接就必须由这些服务器程序自己发起。

FTP带来的困难

一般的Internet服务对所有的通信都只使用一对端口号,FTP程序在连接期间则使用两对端口号。第一对端口号用于FTP的“命令通道”提供登录和执行命令的通信链路,而另一对端口号则用于FTP的“数据通道”提供客户机和服务器之间的文件传送。

在通常的FTP会话过程中,客户机首先向服务器的端口21(命令通道)发送一个TCP连接请求,然后执行LOGIN、DIR等各种命令。一旦用户请求服务器发送数据,FTP服务器就用其20端口 (数据通道)向客户的数据端口发起连接。问题来了,如果服务器向客户机发起传送数据的连接,那么它就会发送没有设置ACK位的数据包,防火墙则按照刚才的规则拒绝该数据包同时也就意味着数据传送没戏了。通常只有高级的、也就是够聪明的防火墙才能看出客户机刚才告诉服务器的端口,然后才许可对该端口的入站连接。

UDP端口过滤

好了,现在我们回过头来看看怎么解决UDP问题。刚才说了,UDP包没有ACK位所以不能进行ACK位过滤。UDP 是发出去不管的“不可靠”通信,这种类型的服务通常用于广播、路由、多媒体等广播形式的通信任务。NFS、DNS、WINS、NetBIOS-over-TCP/IP和 NetWare/IP都使用UDP。

看来最简单的可行办法就是不允许建立入站UDP连接。防火墙设置为只许转发来自内部接口的UDP包,来自外部接口的UDP包则不转发。现在的问题是,比方说,DNS名称解析请求就使用UDP,如果你提供DNS服务,至少得允许一些内部请求穿越防火墙。还有IRC这样的客户程序也使用UDP,如果要让你的用户使用它,就同样要让他们的UDP包进入网络。我们能做的就是对那些从本地到可信任站点之间的连接进行限制。但是,什么叫可信任!如果黑客采取地址欺骗的方法不又回到老路上去了吗?

有些新型路由器可以通过“记忆”出站UDP包来解决这个问题:如果入站UDP包匹配最近出站UDP包的目标地址和端口号就让它进来。如果在内存中找不到匹配的UDP包就只好拒绝它了!但是,我们如何确信产生数据包的外部主机就是内部客户机希望通信的服务器呢?如果黑客诈称DNS服务器的地址,那么他在理论上当然可以从附着DNS的UDP端口发起攻击。只要你允许DNS查询和反馈包进入网络这个问题就必然存在。办法是采用代理服务器。

所谓代理服务器,顾名思义就是代表你的网络和外界打交道的服务器。代理服务器不允许存在任何网络内外的直接连接。它本身就提供公共和专用的DNS、邮件服务器等多种功能。代理服务器重写数据包而不是简单地将其转发了事。给人的感觉就是网络内部的主机都站在了网络的边缘,但实际上他们都躲在代理的后面,露面的不过是代理这个假面具。

小结

IP地址可能是假的,这是由于IP协议的源路有机制所带来的,这种机制告诉路由器不要为数据包采用正常的路径,而是按照包头内的路径传送数据包。于是黑客就可以使用系统的IP地址获得返回的数据包。有些高级防火墙可以让用户禁止源路由。通常我们的网络都通过一条路径连接ISP,然后再进入Internet。这时禁用源路由就会迫使数据包必须沿着正常的路径返回。

还有,我们需要了解防火墙在拒绝数据包的时候还做了哪些其他工作。比如,防火墙是否向连接发起系统发回了“主机不可到达”的ICMP消息?或者防火墙真没再做其他事?这些问题都可能存在安全隐患。ICMP“主机不可达”消息会告诉黑客“防火墙专门阻塞了某些端口”,黑客立即就可以从这个消息中闻到一点什么气味。如果ICMP“主机不可达”是通信中发生的错误,那么老实的系统可能就真的什么也不发送了。反过来,什么响应都没有却会使发起通信的系统不断地尝试建立连接直到应用程序或者协议栈超时,结果最终用户只能得到一个错误信息。当然这种方式会让黑客无法判断某端口到底是关闭了还是没有使用

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 利用代理服务器实现共享上网报告?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情