当我们搭建好一个FTP服务器后,接下去的工作就是要对这个服务器进行权限的管理与设置。因为这项工作直接关系到FTP服务器上文件的安全,关系到FTP服务器运行的稳定。所以,作为企业的网络管理员,不能够忽视这项工作的重要性。



在 Linux下,管理FTP服务器的权限比Windwos环境下,相对来说,要复杂一点。因为Linux下,主要通过命令行的方式来实现权限的管理与配置。 而在Windows环境下,则可以通过图形界面来配置,故后者相对简单一点。不过,若从灵活性上来讲,则前者要优越的多。如WU-FTP,是 Linux操作系统上利用的最广泛的FTP软件。其在权限的管理上,就比微软自带的FTP服务器要灵活的多。再配上Linux操作系统本身的安全性,使得 WU-FTP服务器的安全更上一层楼。



下面集合WU-FTP软件,谈谈在Linux下如何做好FTP服务器权限的管理。若用一句话来概括的话,Wu-FTP软件主要通过组来管理其自身的访问权限。具体的来讲,可以从以下几个方面了解这个服务器权限管理的全貌。



一、如何定义一个组?



定 义FTP服务器的访问组,也叫做类,是linux FTP服务器访问权限管理的最基本的动作。后续的权限管理,都是根据这个组来定义的。/etc/ftpaccess 配置文件是用来配置WU-FTP访问权限的主要参数文件。大部分的FTP服务器权限都是在这个文件中进行配置。



若我们需要定义一个FTP的组,就需要在这个参数文件中,加入如下的语句:



Class QA real,guest,anonymous 192.168.1.*



这 条语句的意思是,现在定一个QA的组。在这个组中,包括三种类型的用户,分别为REAL(真实定义的用户)、GUEST(GUEST帐户)、 ANONYMOUS(匿名访问帐户)。若现在有这三种类型的帐户,从子网为192.168.1.*的地方访问这个FTP服务器的话,则就属于QA这个组。 若是其他的IP地址访问,即使其用户属于这三个类型的帐户,其也不属于QA这个组,不具有这个组的访问权限。很明显,通过这种方式,还可以实现根据IP地 址与帐户结合的方式来管理linux FTP服务器访问权限。这比光凭帐户来管理,相对来说,要安全一点。



这种配置方式还有另外的一些变形,对其进行合理的搭配,可以大大的提高访问的安全性与灵活性。



第 一种变形:IP地址可以以域名的方式来定义,这在大型网络中,如集团型企业的网络中用的比较普遍。如现在有一个集团企业,下面有A、B、C三个子公司。为 了公司员工之间文件交流的方便,集团企业在网上建立了FTP服务器。但是,现在集团网络管理员希望各个子公司平时只能够访问FTP服务器下自己的公司的文 件夹。对于其他子公司的文件夹他们不能访问。此时,就可以建立三个组,分别对应各自的域名。如:Class A企业 real,guest,anonymous A公司的网络域名。这条语句的意思就是从A公司访问FTP服务器的帐户都属于组“A企业”。然后再为这个组配置相关的权限,就可以实现A企业的用户只能够 访问某个特定的文件。



第二种变形方式:利用“!”符号来排除某些特定的IP地址。如有时候,我们可能会把某些特定的IP地址分配给外来的 用户。如当客户来访的时候,我们就给其分配一个特定的IP地址。这主要是为了防止这些用户随意的访问我们公司的网络资源。为此,我们就需要利用“!”符号 排除某些IP地址。我们只需要在上面例子的IP地址前面,加入这个感叹号,即表示排除了这个IP地址。



二、针对组的一些具体权限的设置。



设置好上面的组之后,我们接下去的工作,就是针对这些组设置具体的权限。下面笔者就探讨一下,一些常用权限的设置。



1、某个组的用户只能够查看或者下载FTP服务器上的文件,而不能上传文件。



这 是组权限控制中非常常用的一些功能。如有时候企业可能要给客户看一些大的设计图纸。由于设计图纸比较大,通过邮件等方式根本无法传输。为此,有些企业就会 专门建立FTP服务器,让客户能够直接从这个服务器上下载设计图纸,以提高文件传输的效率。不过,为了安全考虑,客户只能够下载文件,而不能够向这个 FTP服务器上传任何的文件。为了实现这个目的,我们就需要利用file-limit参数来实现这个需求。这个参数主要用来限制某个组的任何一个用户允许 上传文件的数量。若我们把客户的帐户归类为一个组,然后把这个上传文件的数量定义为0。如此的话,只要是客户登陆FTP服务器的时候,他们可以访问这个 FTP服务器,但是却无法上传任何文件。



2、设置最大连接数。



为了FTP服务器的稳定性考虑,我们一般需要限制访问人 数。由于WU-FTP是根据组(类)来控制最大连接数的,所以,这里配置的时候要注意两个问题。一是合理配置各个类的最大连接人数。如企业中可能是根据部 门的类别来配置具体的组。所以,此时,应该跟部门的人数不同,来合理设置组的最大连接数。二就是要根据FTP服务器的性能与硬件资源,来合理配置FTP服 务器的总的连接数。这个总的连接数就是各个组的连接数的总合。若同时连接在服务器上人太多的话,则很可能FTP服务器会因为资源耗竭而当机。所以,一般情 况下,当企业的FTP服务器不仅向企业内部网络开放,也像企业外部网络开放的时候,则就需要注意,这个FTP服务器最大连接数的限制。为了达到这个目的, 我们需要配置limit 参数,来制定某个类的最大连接数。同时,也可以制定一个文本文件,当达到最大人数的时候,给访问者显示上面内容,如致歉方面的内容。



3、访问拒绝文件信息的配置。



虽然当访问被拒绝的时候,不给用户反映信息,也是可行的。但是如此配置的话,就不怎么人性化。用户访问FTP服务器的时候,当没有权限时,应该让服务器向用户说明是由于什么原因没有没有访问成功。如此的话,不但对用户比较友好;当出现故障的时候,也利于我们排除故障。



下 面,笔者就谈谈如何配置这个提示文件。提示文件包括常量与变量两块内容。常量就是一些描述性的说明,如“对不起,你不能够访问”等等。但是,很明显,常量 的话,不能够反映拒绝访问的具体信息。为了能够充分显示被拒绝访问的原因,WU-FTP服务器提供了一些变量。通过这些变量,可以很直观的反映出用户被拒 绝访问的原因。



◆%N:这个变量名表示某个组(类)当前连接的用户数目。如我们在设置FTP连接数的时候,有这方面的设置,则就可以利用 这个变量来说明问题。如可以如下方式配置出错提示文件:“对不起,现在这个类的访问认为位%N ,超过了最大连接人数,请稍候再试。”。如此的话,这个变量会把当前的实际连接人数显示出来。



◆%E:管理员的邮件地址。在这个 FTPACCESS参数文件中,还可以配置网络管理员的邮件地址。当FTP服务器出现故障的时候,则可以向这个邮件地址发送邮件。现在若我们希望能够在这 个出错信息中,显示网络管理员的邮箱地址,以方便当访问出现故障时,用户向网络管理员发送邮件寻求帮助。为此,我们可以如下定义这个出错文件:“对不起, 暂时不能够访问,若有疑问,请发邮件%E询问”。如此的话,在出错文件中,就会把这个参数文件中定义的网络管理员EMAIL显示在上面。



◆%T: 本地当前时间。有时候,我们会在欢迎界面上显示当前的时间。如现在时间是多少多少,原因你访问等等友好信息。此时,就可以利用%T参数显示本地当前时间。 另外,在有些企业也可能要限制FTP服务器访问权限时间,如只允许在早上八点到下午五点的上班时间访问。此时,就需要在出错时间中加入这个本级时间参数。 从而提示用户,现在的时间是不能够访问FTP服务器的等等。



◆%C:当前的工作目录。有时候,往往还需要对用户进行工作目录的限制。如某些用户只能够访问特定的目录等等。此时,也有必要向用户显示他们当前的访问目录,以提示他们已经越界了。此时,就可以在出错文件中,加入%C参数,让出错文件显示当前的目录。



总 之,在这个出错信息配置文件中,我们要出于清晰明了的目的,向用户展示被拒绝访问的原因。如此的话,一方面我们网络管理员可以减少很多的工作量,不用老实 被用户烦这烦那的。另一方面,也会为我们解决故障提供线索。如此的话,只要用户报上出错的提示,则我们就可以知道问题发生的原因了,从而为解决故障赢得了 时间。