网络管理-配置ARPA_第1页
网络管理-配置ARPA_第2页
网络管理-配置ARPA_第3页
网络管理-配置ARPA_第4页
网络管理-配置ARPA_第5页
已阅读5页,还剩4页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、网络管理配置ARPA/Berkeley服务配置ARPA/Berkeley 服务(1)目标:完成这一章,你将能做到以下事情:了解常用的ARPA-Berkeley服务。了解超级守护进程:inetd的功能。了解在inetd中启动ftp/telnet服务的过程。了解inetd配置文件。在命令行启动或停止网络服务。通过配置inetd.conf文件来启动或禁止某种internet服务。通过配置inetd.sec文件允许或禁止选定的客户机对网络服务的使用。通过配置passwd文件来允许或禁止指定的用户使用网络服务。记录ARPA/Berkeley网络服务请求的日志。使用/etc/hosts.equiv文件来定

2、义主机之间的信任关系。使用/.rhosts文件来定义主机之间用户的信任关系。1.Internet 服务的总览功能描述 ARPA Berkeley 终端存取文件传输远程命令执行电子邮件内部进程通信网络信息动态路由名称服务时间同步远程启动远程打印 telnetftpSMTPgatedNTPBOOTP rloginrcpremsh, rexecsendmail(使用SMTP)Socketsrwho,ruptime,fingerBINDprinter(rlpdaemon) 2.internet 服务的"客户机/服务器"模式客户端使用一个服务服务器提供一个服务# rlogin gar

3、y <-> rlogindInternet 服务是基于“客户机/服务器”的模式。客户机使用服务器提供的服务。关键字“客户机/服务器”经常被用在系统之间而不是用在进程之间,但是一个服务器之所以能够提供服务是因为有一个服务进程运行,另一个方面,一个客户端只有运行一个客户端进程才能和服务器上的进程进行通信。一个系统如果同时运行一个客户进程和服务器进程,就能同时作为一个服务器和一个客户机。上例是说明一个简单的客户机/服务器关系,一个用户在节点roger上执行一个rlogin命令从gary节点上获取一个虚拟的终端。rlogin程序是一个客户端的进程。而服务器上运行的是相应的服务器端的进程rl

4、ogind,然后在rlogin和rlogind之间会建立一个网络通信对话线程。3.通过/sbin/rc启动Internet服务多数internet服务是一个守护进程。在系统启动过程中,系统运行在运行级别为2的时候启动这些进程,然后在系统中持续运行。internet服务在服务器上有如下一些守护进程:gated named rwhod xntpd sendmail 每一个服务在/sbin/init.d下面都有一个启动/关闭脚本,相关的配置脚本在目录下。你也可以禁用其中的一些服务。检查文件中的控制变量(特别是netdaemons),来决定启动或者停止系统中的哪些服务。4.通过inetd启动inter

5、net服务虽然许多网络服务都有相应的守护进程在系统中持续运行,但还是有一些internet服务的服务进程是通过inetd(超级守护进程)来管理。inetd守护进程在系统启动过程中系统运行级别为2时启动,这个进程启动后会监控每个internet服务请求使用的的端口。当inetd接收到一个客户端的请求,就会启动对应的服务进程来响应这个请求。inetd超级守护进程管理的internet服务有:telnetftptftpbootprloginremsh其它的服务通过inetd启动服务进程有两个主要的优点。首先,服务器进程只在需要的时候启动,这会减轻服务器的负载,第二,使用inetd,服务器可以同时与多

6、个客户端建立连接,inetd守护进程处理另外的客户端请求的方式很简单,就是为这个客户端启动另外一个进程。如果有三个客户端telnet到你的服务器,inetd会启动三个telnetd服务器进程。注意:inetd只是在服务器上运行,即使没有inetd进程,你仍然可以telnet和ftp到其它的主机。inetd守护进程在运行级别2时候启动并且在系统中持续运行直到系统关闭。与其它在启动过程中执行的脚本不同,inetd在/sbin/init.d/inetd 没有控制参数,这就意味着如果你不想在系统启动的时候同时启动inetd,你必须从/etc/rc2.d中删除inetd启动脚本。你可以通过执行inetd

7、启动脚本手工停止或者启动inetd:# /sbin/init.d/inetd stop# /sbin/init.d/inetd startinetd守护进程相关的几个配置文件在下节描述:/etc/inetd.conf/etc/services/var/adm/inetd.sec你的位置:首页>系统管理>网络管理>配置ARPA/Berkeley服务(2)配置ARPA/Berkeley 服务(2)5.配置/etc/inetd.conf文件问题:我需要提供FTP服务吗?问题: 如何启动一个ftp守护进程?回答:配置/etc/inetd.conf文件.ftp stream tcp n

8、owait root /usr/lbin/ftpd ftpd -ltelnetstream tcp nowait root /usr/lbin/telnetd telnetd# login stream tcp nowait root /usr/lbin/rlogind rlogindshell stream tcp nowait root /usr/lbin/remshd remshd. # inetd -cinetd启动的时候,它会读取/etc/inetd.conf的配置信息,然后启动相应的服务。如果想要禁用某种服务,你可以在/etc/inetd.conf文件中对应的条目前面加上注释符号#

9、。注意:如果修改了/etc/inetd.conf文件,你必须使用inetd -c命令来强制inetd重新读取这个文件。以下说明/etc/inetd.conf文件中各个字段的含义:服务名这个名称对应/etc/services中指定的服务名,如果这个服务器是RPC-based(NFS),这个服务名称就应该在rpc中。socket类型可以为stream或者为dgram,取决于服务器socket是一个stream还是datagram。socket会在以后的章节中讨论。协议必须是/etc/protocols中定义的一个有效的协议,例如,tcp或者udp。等待/不等待等待只在datagram中使用。而其它

10、的socket都应该为非等待方式。如果是等待方式,在一个datagram到达的时刻一个socket只能执行一个datagram服务器。用户指明服务由哪个用户身份启动。服务器程序当inetd接收到一个请求时候,执行的程序的绝对路径。参数服务器程序启动的argv0参数,通常指服务器进程的名称。一个/etc/inetd.conf文件的例子# ARPA/Berkeley 服务#ftp stream tcp nowait root /usr/lbin/ftpd ftpd -ltelnetstream tcp nowait root /usr/lbin/telnetd telnetd # Before u

11、ncommenting the "tftp" entry below,please make sure# that you have a "tftp" user in /etc/passwd.If you don't# have one,please consult the tftpd(1M) manual entry for# information about setting up this service.tftp dgram udp wait root /usr/lbin/tftpdtftpd/usr/lib/sw/HP-UX.insta

12、ll #bootps dgram udp wait root /usr/lbin/bootpd bootpd#finger stream tcp nowait bin/usr/lbin/fingerdfingerdloginstream tcp nowait root/usr/lbin/rlogind rlogindshell stream tcp nowait root/usr/lbin/remshd remshdexecstream tcp nowait root /usr/lbin/rexecd rexecd #uucp stream tcp nowait root /usr/sbin/

13、uucpd uucpd# . .6.配置/etc/services问题:为了接收FTP的请求,应该监听哪个端口?回答:配置/etc/services文件.ftp 21/tcp # file Transfer protocol (Control)telnet 23/tcp # Virtual Terminal Protocollogin513/tcp# remote loginshell514/tcp# remote command,no passwd used每一个IP数据包中都包含有一个目标地址,这个地址是由目标主机的IP地址和目标主机的端口号组成,依靠这个地址,系统才能将每个数据包发送给正

14、确的目标。每一个internet服务有一个“通用”的端口号,所有的主机上都有这些端口号,/etc/services 文件中记录这些端口号和其对应的服务名。inetd通过检查/etc/inetd.conf文件来决定提供哪些服务,然后再参考/etc/services文件来决定使用哪些端口来监控这些服务。通过在/etc/services中的一行开始加上“”号可以禁用一种服务,但是更常用的方式是注释掉/etc/inetd.conf中的条目。建立一个连接让我们来了解一下客户机连接服务器的详细步骤。下例描述了两个主机之间建立一个ftp连接的详细过程:首先,inetd守护进程在系统启动的时候自动启动。在读取

15、了/etc/inetd.conf和/etc/services文件后,inetd便会在21号端口监听FTP请求。如果inetd.conf中还配置了其它的服务,inetd也会监听其对应的端口。当客户机上的一个用户发出一个ftp命令,客户端的ftp进程会任意打开一个端口同时向服务器上的21端口发送一个ftp请求。客户端的进程不需要使用21号端口,因为没有人会去查找客户机进程。而服务器必须使用一个通用的端口号,以便各个客户端发送请求。服务器端的inetd守护进程从端口21接收到这个请求,由于21端口为ftp指定的端口,inetd会启动一个ftpd服务进程,靠这个进程建立一个与客户端ftp进程之间的通信

16、连接。而inetd会继续监听其它的请求。如果同时另外一个客户机请求提供ftp服务,服务器端的inetd守护进程会在端口21启动另外一个ftpd进程。注意:用netstat -a 命令可以检查有哪些端口可用7.配置/var/adm/inetd.sec文件问题:哪些客户机允许使用FTP服务。回答:修改/var/adm/inetd.sec.ftp deny telnet deny 128.1.*.*shell allow 192.1.1.* 192.1.3.*login allow 192.1.1-3.* host1 host2.如果想要限制客户机使用某些服务,可以通过修改/var/adm/inet

17、d.sec文件来实现。这个文件的每一个行都定义了某些客户机可以存取inetd管理的一种服务,上例中的情况为:inetd守护进程拒绝客户机使用ftp服务,而所有的其它主机都可以使用ftp服务。网络128.1中的主机都不允许telnet到这个服务器。只有网络或者中的主机可以remsh到这个服务器。网络,或者中的主机都可以rlogin到服务器,除此之外,host1和host2也可以rlogin到这个服务器。如果inetd.sec文件不存在,表明所有的客户机可以使用服务器提供的全部服务。如果这个文件存在,但是没有任何与inetd服务相关的条目,未列出的服务对所有的客户机都有效。inetd.sec文件的

18、格式如下:服务名/etc/services中定义的有效服务名allow/deny决定后面列出的主机是否能使用一种服务,默认为allow。主机允许使用服务的主机的IP地址,网络名,或者主机名。可以使用通配符(*)和范围符号(-)。这些字符可以出现在地址的任何部分。这个文件的属主为root用户。它的许可权限为r-r-r-。注意:必须使用/etc/services文件中定义的正式的服务名。rlogin服务的服务名为login。rcp 和remsh的服务名是shell。8.配置inetd的日志功能Q:哪个客户机使用了服务器上的哪个服务?在/var/adm/syslog/syslog.log中有记录!s

19、ep 5 15:51:10 host1 inetd2234:telnet/tcp : Connection from host1 sep 5 15:51:12 host1 inetd2251:login/tcp : Connection from host1export INETD_ARGS="-1" # Enable inetd logging at every boot by# setting the INETD_ARGS variable hereinetd -l 命令会启动inetd的日志功能。如果启动日志功能。系统日志中就会记录有连接信息。如果使用日志功能,ine

20、td会记录所有的连接请求。其中也会记录由于安全检查失败的连接试图。所以这个功能可以用来检查是否有人尝试非法进入你的系统。inetd的日志功能在系统启动时候生效,配置文件如下:export INETD_ARGS="-1"注意,inetd日志中记录的是主机名,但是没有记录用户名。而/var/adm/wtmp和/var/adm/btmp文件中记录有成功的和不成功的登录尝试。使用以下的命令来浏览这些文件:# last (浏览成功的登录)# lastb (浏览不成功的登录)9.不同系统的用户之间的相互信任没有建立信任关系的时候:建立了信任关系后:# rlogin gary# rlog

21、in garyPassword: *Welcome to garyWelcome to gary!系统和用户之间的信任关系:允许一些用户或所有用户不需要密码就可以进入另外一台主机只能在Berkeley服务中使用(rlogin remsh rcp) 通过配置/etc/hosts.equiv和/rhosts文件建立这种关系系统之间和系统的用户之间的信任关系让本地用户在使用rlogin,remsh,和rcp命令通过网络存取其它主机时不需要输入密码。建立系统之间的信任关系是通过配置/etc/hosts.equiv文件来完成的。而建立不同系统的用户之间的信任关系需要配置/.rhosts文件,这两个文件会

22、在以后讨论。配置这些文件之后你就可以以相同的帐号方便、透明的存取其它主机。但是这种方式也有很大的风险。所以一定要确保下面的文件的许可权限为:r-r-r- /etc/hosts.equivrw- /.rhosts10.配置/etc/hosts.equiv文件host1 host2 host3/etc/hosts.equiv /etc/hosts.equivlogin:leo host1 -sue host1 tomhost1 1:$ rlogin host22: $ rlogin host2 -l tom3: $ remsh host3 ls 哪个命令会成功?4:$ remsh host3 -l

23、 tom ls5: $login: sue $ rcp host2: .profile/etc/hosts.equiv将建立主机之间的信任关系,而这些主机是同一用户经常登录的主机,如果远程主机上的用户名和本地主机的用户名是一致的,用户不会被提示输入口令就能进入另外主机。这个文件不适用于超级用户。如果你以超级用户登录,并且试图存取另外的主机,/etc/host.equiv文件不会生效。/etc/hosts.equiv只在使用Berkeley服务时有效,如remsh,rcp和rlogin。注意:当你在hosts.equiv中列出一个主机,哪个系统中的所有的和本地用户名一致的用户都可以直接存取你的系

24、统,root用户除外。root用户之间的信任关系可以通过设置.rhosts文件来实现。/etc/hosts.equiv中的条目例子解释:1. $ rlogin host2leo 想要以用户leo身份登录host2。由于配置了等价性,不需要输入密码就可以直接登录host2。2. $ rlogin host2 -l tomleo必须输入密码,因为/etc/hosts.equiv中不能设置不同用户的等价性。3. remsh host3 lsleo想要以leo的身份存取host3。这个命令会失败,因为只配置了host1上的用户tom的信任关系。4. remsh host3 -l tom lsleo 想

25、要以用户tom身份存取host3。这个行动会失败,因为只配置了host1上的用户tom的信任关系。5. rcp host2: .profilehost1上的用户sue想要存取host2。rcp会失败,因为sue是唯一被host2排除在外的host1上的用户。11.配置/.rhosts文件host1 host2login: leo root/.rhostshost11.rlogin host2 -l root sue/.rhosts2.remsh host2 ls host1 sue3.remsh host2 -l sue ls host1 joelogin: sue leo/.rhosts4:

26、rlogin host2host1 -sue5:rcp leohost2:.profile host1 +问题:哪个命令会成功?任何用户都可以创建和配置$HOME/.rhosts文件,这个文件的作用是指定远程主机上用户和本地用户之间的信任关系。$HOME/.rhosts的文件属主必须为本地用户。本地主机信任的远程主机的用户是在本地的$HOME/.rhosts文件中列出的,这个用户可以使用本地用户的帐号登录系统而不需要输入密码,远程用户同样也可以在本地系统上拷贝文件或者执行命令。.rhosts文件只对Berkeley服务有效:如remsh,rcp,和rlogin。号和号在.rhosts文件中也可

27、以使用。你可以参考上例。注意: .rhosts可以用来让没有权限存取/etc/hosts.equiv文件的远程系统上的用户进入系统。如果你想要root也可以使用信任关系,你必须在超级用户的home目录下创建.rhosts文件,。例子解释:1. rlogin host2 -l root要求输入密码,因为host2上的root用户的.rhosts文件中只配置了系统host1上的root用户。2. remsh host2 lsleo想要以host2上的用户leo身份使用系统。这会成功,因为host2上的/home/leo/.rhosts文件配置了允许host1上的所有用户以leo身份登录host2。3. remsh host2 -l sue ls这会失败因为在host2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论