常见问题 的常见问题>>

如何建立只答应FTP登陆的帐户?

发布时间:2010-12-01 10:55:52

答案:

一般情况下,我们在Linux操作系统中建立用户帐户的话,其不仅可以通过FTP服务登陆到FTP服务器,而且其也可以直接利用这个用户名登录到FTP服务器所在的操作系统。这跟微软服务器上部署的FTP服务器还是有一定的差异。很明显,Linux操作系统如此设计的话,会影响到FTP服务器所在的操作系统的安全性。

所以,我们需要经过相关的设置,让这个FTP帐户之能够通过FTP服务的形式登录到FTP服务器,而不能利用SSH协议远程登录,或者不能直接作为操作系统的登录用户名。要实现这个目的,我们往往需要进行如下的设置。

1、按常规程序新建立用户名。我们先需要在Linux操作系统中,建立相关的用户名。在建立用户名的过程中,我们往往需要为FTP服务器建立一个独立的组。然后把用户名加入到这个组中。如此的话,我们就在后面就可以以组为单位限制其的访问模式了。

2、我们需要编辑“/etc/shells”文件,在这个配置文件中加入一个空的shell。这个空的shell可以限制用户对FTP服务器的访问。如我们可以在这个配置文件中,加入如下一个空的shell,/dev/null。

技巧:一般来说,为了阅读的方便,我们往往把自己添加的内容放在配置文件的最后,并且,最好能够添加相关的注释。这主要是为了我们后续治理的方便。不然等时间长了之后,我们自己都不知道为什么要加入这个项目。

3、再次编辑/etc/passwd配置文件。这里主要实现目录的重定向。也就是说,当前面设置的那个FTP组的用户,访问FTP服务器的时候,其目录会进行重定向,会自动转到那个目录中。只要是通过“.”这个符号把FTP目录跟/目录连接起来。通过如此的限制,FTP组的用户就只能够访问自己用户下面的文件内容,而不能够访问所有的文件系统。

通过以上描述,我们可以发现单从配置上来说,Linux环境上的FTP服务器配置要比微软的复杂的多。很多功能的话,都需要通过手工修改配置文件来实现。而微软自带的FTP服务器的话,则可以通过傻瓜式的向导来实现大部分的治理操作。但是,包括笔者在内的很多网络治理员还是喜欢采用Linux作为FTP服务器的载体。这主要是因为Linux操作系统要比微软的操作系统要稳定。所以,部署在这上面的服务器,相对来收,也是前者稳定的多。而且,FTP服务器的话,跟其他应用服务器一样,往往稳定性是压倒一切的。也许,在不久的将来,当微软的操作系统比Linux更加稳定的时候,可以改变这一现状。

本FAQ适用范围

下一步您可以:
查看产品 >>