局域网服务
第九章
局域网服务本章简介
•网络文件系统
•共享UNIX打印机•使用Samba与Windows 共享资源
•网络信息服务•DHCP
•管理分布式服务器•邮件服务器
现在我们将重点放在局域网服务器的配置上。就像名称服务一样,这类服务器并非网络运行的必需品,但是它们所提供的服务才是设置网络的中心目的。如果没有这些服务,网络也就失去了意义。
网络服务的种类繁多,只是一章无法概括全貌,我们将重点放在服务器对本地客户端所提供的基本服务。本章所讨论的服务涵盖:
•网络文件系统(Network File System,NFS)
•LPD(Line Printer Daemon)与LP(Line Printer)服务
•Windows文件与打印服务(Samba)
•网络信息服务(Network Information Service,NIS)
•动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)天柱山旅游景点
•邮局协议(Post Office Protocol,POP)
•Internet消息访问协议(Internet Message Access Protocol,IMAP)
以上所列的这些软件包,都是设计来服务组织内部而非外部的系统。至于那些对来自机构内部但是位于机构外部的用户而言十分重要的基础服务(例如、网页服务和名称服务),则另辟章节讨论。
首先要讨论的局域网服务是NFS,它就是一台在UNIX网络上提供文件共享服务的服务器。
242
局域网服务
243网络文件系统
网络文件系统(NFS)使得通过网络共享目录和文件成为可能。NFS最初开发自Sun Microsystems公司,但现在差不多所有的UNIX操作系统及许多非UNIX的操作系统都支持NFS。通过NFS,用户和程序可以访问位于远程系统的文件,就像访问本地文件一样。在一个理想的NFS环境里,用户既不知道也不必理会文件实际的存储位置。
NFS具备以下优点:
•NFS降低了本地磁盘存储容量的需求,因为如果所有成员能通过网络共享目录和文件,那么存储一份就够了。
•NFS简化了集中维护的工作——文件既可以集中更新,又可以在整个网络的任何地方使用。
•NFS允许用户利用熟悉的UNIX命令来处理远程的文件,而不用再学习其他新命令。网络上各主机之间移植文件时,不必使用ftp或rcp,只要使用cp就行了。NFS可分成两边,一边是客户端,一边是服务端。客户端就是使用远程目录的系统,远程端目录将被视为其本地文件系统的一部分。而服务端则提供目录给大家使用系统。将一个远程目录附到本地文件系统(客户端的一项功能),称为挂载(mounting)一个目录。提供目录让远程访问(一项服务器功能),称为共享(sharing)或输出(exporting)一个目录(注1)。单一系统通常会同时执行客户端和服务器两种NFS软件。在本节,我们将会看到如何通过NFS配置一个可以同时共享输出和挂载目录的系统。
如果你负责维护大型站点的NFS服务器,应该小心地规划和实现NFS环境。本章将说明NFS客户端与服务器的配置方式,若你想进一步了解如何设计出最理想的NFS环境,请参考由O'Reilly出版、Hal Stern等人合著的“Managing NFS and NIS”。
NFS Daemons
NFS是由几个守护程序(daemon)运行的,有些完成客户端的功能,而有些则执行服务器的功能。在讨论NFS配置之前,让我们先来看看,对于Solaris 8系统而言,这些NFS daemons的功能:
nfsd [nservers]
nfsd(NFS daemon)在NFS服务器上运行,负责服务NFS客户端的请求。而nservers选项则用来指定应该启动几个daemons。
注1:Solaris所使用的术语是sharing(共享)。而其他系统大多使用exporting(输出)。
第九章244
mountd
mountd(NFS mount daemon)在NFS服务器上运行,负责处理客户端挂载文件系统的请求。
nfslogd
nfslogd(NFS logging daemon)在NFS服务器上运行,负责登录所输出的文件系统的活动状况。
rquotad
rquotad(remote quota server)在用户端与服务器上运行,负责提供远程文件系统上用户配额(user quotas)的相关信息,并可利用quota命令显示此信息。lockd
lockd(lock daemon)在客户端与服务器上运行,负责处理文件锁定的作业。由客户端请求锁定文件,并由服务器同意。
statd
statd(network status monitor daemon)在客户端与服务器上运行,它会为lockd 请求提供监控服务。特别是系统死机之后,它可以使本地重新设置锁定状态。
在Solaris 8系统上,这些用来运行NFS的daemons,就放在/usr/lib/nfs目录中。开机时这些daemons大部分启动自/etc/init.d目录中的脚本nfs.client和nfs.server。脚本nfs.client会启动statd和lockd程序(注2)。NFS服务器不仅要执行这两个daemons,还得执行nfsd(NFS server daemon),nfslogd
(NFS logging daemon)和mountd (mount server daemon)。在Solaris系统中,脚本nfs.server会启动mountd,nfslogd 和nfsd的16个副本。Solaris系统一般不会在开机时启动rquotad,它会利用inetd来启动rquotad,如下所示(这是以grep搜索/f文件的结果):$ grep rquotad /f
rquotad/1  tli  rpc/datagram_v  wait root /usr/lib/nfs/rquotad  rquotad
每个系统启动这些daemons的方式都不一样,如果有某些daemons没有启动,请检查你的启动脚本。
共享UNIX文件系统
配置服务器的第一步是决定要共享哪些文件系统,以及应该有些什么限制。只有对客户端有用的文件系统才应该被共享。在共享一个文件系统之前,请先想一想它的用途是什么。以下是共享文件系统的一些常见的理由:加油站站长工作总结
注2:在你的系统中,这些daemons的文件名可能会用rpc.前缀。例如,在Red Hat Linux中,NFS daemon的文件名就叫做rpc.nfsd。请查阅系统的相关说明文件。
局域网服务
245
•为无盘客户端提供磁盘空间
•避免相同数据在多个系统上不必要的重复
•提供统一支持的程序和数据
•同一工作组的用户可以共享数据
一旦决定好所要共享的文件系统之后,你必须使用系统所提供的命令来配置它们。接下来,先就Solaris系统中的命令做出说明。Linux系统的做法大不相同,我们将会在后面说明。请检查你的系统文件,以了解它实现NFS文件共享的实际做法。
Share命令
在Solaris系统中,目录的共享是通过share命令来实现的。
怎么幻化
share命令的简化语法如下:
share -F nfs [-o options] pathname
其中,pathname是服务器所共享目录的路径名称,而options则控制客户端对该目录的访问权限,常
用的选项如下所示:
rw
rw授予所共享的文件系统读取与写入的权限。也可以写成rw=accesslist的形式,以标识将这样的权限授予哪些主机。当你采用访问列表(access list)时,只有出现在列表中的主机,才会被授予所共享的文件系统读取与写入的权限。如果rw选项的配置并未使用访问列表,那么所有主机均会被授予所共享的文件系统的读取和写入的权限。
ro
限制所共享的文件系统仅提供读取权限,它也可以指定为访问列表的形式,例如ro=accesslist。当你采用访问列表时,只有出现在列表中的主机,才被授予所共享的文件系统读取的权限。如果ro选项的配置并未使用访问列表,那么所有主机均会被授予所共享的文件系统读取的权限,倘若未指定任何选项,也会默认此状态。
aclok
授予所有客户端全部访问权限,这么做可能会造成一个安全漏洞。虽然Solaris系统提供这项功能,但你却不应该使用。此功能仅用来向后兼容(b a c k w a r d compatibility)一个已不存在的NFS版本。
第九章246
anon=uid
为没有提供有效用户ID(valid user id)的用户定义UID。
index=file
以网页形式的索引文件而非目录来列出此文件系统。
Log[=tag]
启用登录功能。如果可选tag被指定,就必须与/etc/f文件中所定义的tag相符。
nosub
不允许客户端挂载子目录。默认使用sub选项,也就是允许挂载子目录。
nosuid
不允许客户端在所共享的文件系统上创建setuid或setgid文件。默认使用suid选项,也就是允许客户端创建setuid或setgid的文件。
public
对所共享的文件系统使用公共文件句柄(public file handle)。
root=accesslist
允许来自访问列表所列主机的root用户,对所共享的文件系统拥有root的访问权。sec=type
对所共享的文件系统,定义访问时所采用的验证类型。type是一份以冒号分隔的NFS安全模式列表。要成功地进行访问,客户端对type列表所列的安全模式,必须至少支持其中一项。type的可能值包括:
sys
以明文(clear-text)的用户ID和工作组ID来控制文件系统的访问。这就像UNIX
何赛飞越剧
系统根据UID和GID控制文件使用权限的传统做法一样,所不同的是,此刻
UID与GID通过网络传递,而且服务器必须信任远程所提供的信息。
dh
以Diffie-Hellman公共密钥加密法进行验证。
krb4
以Kerberos第4版进行验证。
none
不使用验证功能。如果不进行任何验证,则所有用户都以用户nobody的身份
访问文件系统。城管个人总结
window=seconds
互联网赚钱以秒为单位定义最大存活时间,供NFS服务器作为是否允许dh或krb4验证的依

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。