首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >速读原著-TCP/IP(Finger协议)

速读原著-TCP/IP(Finger协议)

作者头像
cwl_java
发布于 2020-03-18 09:51:28
发布于 2020-03-18 09:51:28
1.3K0
举报
文章被收录于专栏:cwl_Javacwl_Java

第30章 其他的TCP/IP应用程序

30.2 Finger协议

F i n g e r协议返回一个指定主机上一个或多个用户的信息。它常被用来检查某个人是否登录了,或者搞清一个人的登录名以便给他发送邮件。 RFC1288 [Zimmerman 1991] 指明了这个协议。

由于两个原因,很多站点不支持一个 F i n g e r服务器。第一,F i n g e r服务器的一个早期版本中的一个编程错误被 1 9 8 8年声名狼藉的 I n t e r n e t蠕虫病毒利用,作为进入点之一( R F C 11 3 5 [Reynolds 1989] 和 [Curry 1992] 更详细地描述了蠕虫)。第二,F i n g e r协议有可能会泄露一些很多管理员认为是有关用户的私有信息(登录名、电话号码,他们上次的登录时间,等等)。R F C 1 2 8 8的第3节给出了这个有关服务安全方面的细节。

从一个协议的角度来看, F i n g e r服务器有一个知名的端口 7 9。客户对这个端口做一个主动打开,然后发送一个在线的请求。服务器处理这个请求,把输出发送回去,然后关闭连接。查询和响应都是采用NVT ASCII,类似于我们在F T P和S M T P协议中所看到的。

尽管大多数的U n i x用户都是使用finger ( 1 )客户来访问F i n g e r服务器,我们将从使用 Te l n e t客户与F i n g e r服务器直接相连开始,看看客户发出的每一条在线命令。如果客户的查询是一个空行(在NVT ASCII中,空行以一个回车符 C R跟着一个换行符 L F来传输),它就是一个请求查询所有在线用户信息的命令。

o ff i c e和o ffice phone的空白输出字段是从用户的口令 ( p a s s w o r d )文件记录的选项字段中取出的(在这个例子中,这两个字段的值没有提供)。 服务器必须在最后做一个主动的关闭操作,因为服务器返回的是一个可变长度的信息。当客户收到文件结束字符时,就知道服务器的输出结束了。

当客户的请求由一个用户名组成时,服务器只以该用户的信息作为响应。下面是另一个例子,这个例子中删去了Te l n e t客户的输出:

当一个系统完全禁止了F i n g e r服务时,因为没有进程被动打开端口 7 9,所以客户的主动打开将从服务器接收到一个R S T。

一些站点在端口 7 9提供了一个服务器,但服务器只是向客户输出信息,而不理睬客户的任何请求:

对一个组织来说,另一种可能就是实现一个防火墙网关:在组织内部和 I n t e r n e t之间的一个路由器,负责过滤(也就是扔掉)特定的 I P数据报([Cheswick and Bellovin 1994] 详细讨论了防火墙网关)。防火墙网关可以被配置成扔掉从 I n t e r n e t进来的这样一些数据报,这些数据报是目的端口为7 9的T C P报文段。

对于F i n g e r的服务器和U n i x的F i n g e r客户还有其他的实现。欲知详情,请参考 R F C 1 2 8 8和有关f i n g e r ( 1 )的手册。

R F C 1 2 8 8指出提供了F i n g e r服务器的、具有T C P / I P连接的自动售货机应该对客户的空行请求响应以现有产品的列表。对于由一个名字组成的客户请求,它们应该响应以一个数目或者与这个产品有关的可用项的列表。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/03/17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
速读原著-TCP/IP(Whois协议)
W h o i s协议是另一种信息服务。尽管任何站点都可以提供一个 W h o i s服务器,在I n t e r N I C站点(r s . i n t e r n i c . n e t)的服务器是最常使用的。这个服务器维护着所有的 D N S域和很多连接在I n t e r n e t上的系统的系统管理员的信息(另一个可用的服务器在 n i c . d d n . m i l,不过只包含了有关M I L N E T的信息)。不幸的是信息有可能是过期的或不完整的。 RFC954 [Harrenstein, Stahl,and Feinler 1985] 说明了W h o i s服务。
cwl_java
2020/03/18
1.4K0
速读原著-TCP/IP(Whois协议)
速读原著-TCP/IP(Telnet协议)
Te l n e t协议可以工作在任何主机(例如,任何操作系统)或任何终端之间。 RFC 854[Postel 和Reynolds 1983a]定义了该协议的规范,其中还定义了一种通用字符终端叫做网络虚拟终端N V T(Network Virtual Te r m i n a l)。N V T是虚拟设备,连接的双方,即客户机和服务器,都必须把它们的物理终端和 N V T进行相互转换。也就是说,不管客户进程终端是什么类型,操作系统必须把它转换为 N V T格式。同时,不管服务器进程的终端是什么类型,操作系统必须能够把N V T格式转换为终端所能够支持的格式。
cwl_java
2020/03/18
1.4K0
速读原著-TCP/IP(FTP示例)
现在看一些使用F T P的例子:它对数据连接的管理,采用 NVT ASCII码的文本文件如何发送,F T P使用Te l n e t同步信号来中止进行中的文件传输,最后是常用的“匿名 F T P”。
cwl_java
2020/03/18
7630
速读原著-TCP/IP(FTP协议)
F T P与我们已描述的另一种应用不同,它采用两个 T C P连接来传输一个文件。
cwl_java
2020/03/18
1K0
速读原著-TCP/IP(SMTP的未来)
I n t e r n e t邮件发生了很多改变。应当记得 I n t e r n e t邮件的三个组成部分:信封、首部和正文。新加入的S M T P命令影响了信封,首部中可以使用非 A S C I I字母,正文(M I M E)中也加入了结构。本节中我们依次对这三部分的扩充进行讨论。
cwl_java
2020/03/18
3870
速读原著-TCP/IP(SMTP协议)
两个M TA之间用NVT ASCII进行通信。客户向服务器发出命令,服务器用数字应答码和可选的人可读字符串进行响应。这与上一章的 F T P类似。
cwl_java
2020/03/18
1.2K0
速读原著-TCP/IP(sock程序)
在本书中一直使用一个称为 s o c k的小测试程序,用来生成 T C P和U D P数据。它既可以用作一个客户进程,也可以用作一个服务器进程。有这样一个可以从外壳程序执行的测试程序,使我们避免了为每一个我们想要研究的特征编写新的客户和服务器 C程序。因为本书的目的是了解网络互联协议,而不是网络编程,所以在这个附录中我们只描述这个程序和它不同的选项。
cwl_java
2020/03/19
1.1K0
速读原著-TCP/IP(Ping程序简介)
“p i n g”这个名字源于声纳定位操作。 P i n g程序由Mike Muuss编写,目的是为了测试另一台主机是否可达。该程序发送一份 I C M P回显请求报文给主机,并等待返回 I C M P回显应答(图6 - 3列出了所有的I C M P报文类型)。
cwl_java
2020/03/06
4660
速读原著-TCP/IP(分层)
网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如 T C P / I P,是一组不同层次上的多个协议的组合。 T C P / I P通常被认为是一个四层协议系统,如图 1 - 1所示。每一层负责不同的功能:
cwl_java
2020/02/29
4810
速读原著-TCP/IP(Rlogin协议)
R l o g i n的第一次发布是在 4 . 2 B S D中,当时它仅能实现 U n i x主机之间的远程登录。这就使得R l o g i n比Te l n e t简单。由于客户进程和服务器进程的操作系统预先都知道对方的操作系统类型,所以就不需要选项协商机制。在过去的几年中, R l o g i n协议也派生出几种非 U n i x环境的版本。
cwl_java
2020/03/17
1.1K0
速读原著-TCP/IP(FTP:文件传送协议)
F T P是另一个常见的应用程序。它是用于文件传输的 I n t e r n e t标准。我们必须分清文件传送(file transfer)和文件存取 (file access)之间的区别,前者是 F T P提供的,后者是如 N F S(S u n的网络文件系统,第 2 9章)等应用系统提供的。由 F T P提供的文件传送是将一个完整的文件从一个系统复制到另一个系统中。要使用 F T P,就需要有登录服务器的注册帐号,或者通过允许匿名F T P的服务器来使用(本章我们将给出这样的一个例子)。 与Te l n e t类似,F T P最早的设计是用于两台不同的主机,这两个主机可能运行在不同的操作系统下、使用不同的文件结构、并可能使用不同字符集。但不同的是,Te l n e t获得异构性是强制两端都采用同一个标准:使用7比特A S C I I码的N V T。而F T P是采用另一种方法来处理不同系统间的差异。F T P支持有限数量的文件类型(A S C I I,二进制,等等)和文件结构(面向字节流或记录)。参考文献959 [Postel 和 Reynolds 1985] 是F T P的正式规范。该文献叙述了近年来文件传输的历史演变。
cwl_java
2020/03/18
6230
速读原著-TCP/IP(Telnet举例)
在这里我们将介绍在三种不同的操作方式下 Te l n e t选项协商的情况。这些方式包括:单字符方式、实行方式和准行方式。同样我们还将讨论当用户在服务器端按了中断键退出了一个正在运行的进程后,系统的运行情况。
cwl_java
2020/03/18
7740
速读原著-TCP/IP(DNS示例)
让我们从一个简单的例子来了解一个名字解析器与一个名字服务器之间的通信过程。在s u n主机上运行Te l n e t客户程序远程登录到g e m i n i主机上,并连接d a y t i m e服务器:
cwl_java
2020/03/11
5080
速读原著-TCP/IP(X窗口系统)
X窗口系统(X Window System),或简称为X,是一种客户-服务器应用程序。它可以使得多个客户(应用)使用由一个服务器管理的位映射显示器。服务器是一个软件,用来管理显示器、键盘和鼠标。客户是一个应用程序,它与服务器在同一台主机上或者在不同的主机上。
cwl_java
2020/03/18
5690
速读原著-TCP/IP(X窗口系统)
速读原著-TCP/IP(复位报文段)
我们已经介绍了T C P首部中的R S T比特是用于“复位”的。一般说来,无论何时一个报文段发往基准的连接( referenced connection)出现错误,T C P都会发出一个复位报文段(这里提到的“基准的连接”是指由目的 I P地址和目的端口号以及源 I P地址和源端口号指明的连接。这就是为什么RFC 793称之为插口)。
cwl_java
2020/03/11
9270
速读原著-TCP/IP(Rlogin的例子)
在这里举两个例子:第一个是当 R l o g i n会话建立的时候,客户和服务器的协议交互;从第二个例子可以看到,当用户键入中断键以取消正在服务器运行的程序时,服务器将产生很多输出。在图1 9 - 2中,我们给出了通常情况下, R l o g i n会话上的数据流交互情况。
cwl_java
2020/03/17
6610
速读原著-TCP/IP(Rlogin的例子)
速读原著-TCP/IP(TCP 服务器的设计)
我们在1 . 8节说过大多数的T C P服务器进程是并发的。当一个新的连接请求到达服务器时,服务器接受这个请求,并调用一个新进程来处理这个新的客户请求。不同的操作系统使用不同的技术来调用新的服务器进程。在 U n i x系统下,常用的技术是使用 f o r k函数来创建新的进程。
cwl_java
2020/03/11
8610
速读原著-TCP/IP(NFS协议)
使用N F S,客户可以透明地访问服务器上的文件和文件系统。这不同于提供文件传输的F T P(第2 7章)。F T P会产生文件一个完整的副本。 N F S只访问一个进程引用文件的那一部分,并且N F S的一个目的就是使得这种访问透明。这就意味着任何能够访问一个本地文件的客户程序不需要做任何修改,就应该能够访问一个 N F S文件。
cwl_java
2020/03/18
1.4K0
速读原著-TCP/IP(其他的TCP/IP应用程序)
本章中我们描述了另外一些很多实现都支持的 T C P / I P应用程序。有些很简单,易于全面了解(F i n g e r和W h o i s),而另一个则相当复杂( X窗口系统)。我们只提供了这个复杂应用程序的一个简短的概述,集中介绍其对 T C P / I P协议的使用。
cwl_java
2020/03/18
5330
速读原著-TCP/IP(SNMP协议)
前面的3个操作是由管理进程向代理进程发出的。后面两个是代理进程发给管理进程的(为简化起见,前面3个操作今后叫做g e t、g e t - n e x t和s e t操作)。图2 5 - 1描述了这5种操作。
cwl_java
2020/03/17
6580
相关推荐
速读原著-TCP/IP(Whois协议)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档