用Linux架设FTP服务器(3)

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

配置“/etc/ftpaccess”文件

“/etc/ftpaccess”文件是用来配置“ftpd”的。这个文件主要是设置允许哪个用户、多少用户访问ftp服务器,以及一些安全方面的问题。配置文件的每一行或者定义一个属性或者设定一个属性值,。对于非匿名的“chroot”访问,必须创建一些“guestgroup”,每一个都要对应“/home/ftp/etc/group”文件中的项。

创建ftpaccess文件(touch /etc/ftpaccess),在文件中加入:

class openarch guest 208.164.186.*

limit openarch 20 MoTuWeTh,Fr0000-1800 /home/ftp/.too_many.msg

email admin@openarch.com

loginfails 3

readme README* login

readme README* cwd=*

message /home/ftp/.welcome.msg login

message .message cwd=*

compress yes all

tar yes all

chmod yes guest

delete yes guest

overwrite yes guest

rename yes guest

log commands real,guest

log transfers real,guest inbound,outbound

guestgroup ftpadmin

guestgroup webmaster

# We don‘t want users being able to upload into these areas.

upload /home/ftp/* / no

upload /home/ftp/* /etc no

upload /home/ftp/* /dev no

# We‘ll prevent downloads with noretrieve.

noretrieve /home/ftp/etc

noretrieve /home/ftp/dev

log security real,guest

guest-root /home/ftp ftpadmin webmaster

restricted-uid ftpadmin webmaster

restricted-gid ftpadmin webmaster

greeting terse

Keepalive yes

noretrieve .notar

现在把文件的权限设成600:

[root@deep]# chmod 600 /etc/ftpaccess

下面解释配置文件中的设置:

class

“class”用来定义一个允许访问ftp服务器的用户类别。可以定义任意多的类别(class)。每一个“class”行的格式如下:

class <classname> <typelist> <addrglob>

<classname>是class的名字,<typelist>是允许加到类别(class)中的用户类型,<addrglob>是这个class允许的IP地址范围。

<typelist>中的项是用逗号隔开的,每一个项有三种可能的取值:anonymous、guest或real。anonymous用户是用anonymous或ftp帐号访问ftp服务器而且只需要访问公用文件的那些用户。guest用户有一些特殊因为他们在系统中没有帐号,但是却又是guest组的成员。real用户必须在FTP服务器上有帐号,而且需要经过服务器的安全验证。

<addrglob>可以用通配符,例如:“*”表示所有的站点。下面这一行:

class openarch guest 208.164.186.*

表示只有在系统中有自己帐号的guest用户而且IP地址为“208.164.186.*”才能访问ftp服务器。

limit

“limit”根据class和时间范围来限制登录ftp服务器的用户数。“limit”的格式是:

limit <class> <n> <times> <message_file>

其中<class>是受限制的类别(class),<n>表示在这个类别中受到限制的最多用户数,<times>表示“limit”有效的时间段,<message_file>是当达到最大的用户数目的时候,别的用户还想登录时显示的信息。

<times>中的字符串用逗号隔开,每一个字串表示一天。星期一到星期日分别用Mo、Tu、We、Th、Fr、Sa和Su表示,周末也可以用Wk表示。表示时间的小时和分钟之间不要用冒号隔开。“-”用来表示范围。

例如,限制“openarch”这个类别,最多可以有20个用户,访问时间是星期一道星期四全天,星期五从半夜到下午六点。用下面这一行来表示: limit openarch 20 MoTuWeTh,Fr0000-1800 /home/ftp/.too_many.msg

如果一旦达到最大的用户数,还有别的用户想连接ftp服务器,就会把“/home/ftp/.too_mang.msg”中的信息传给用户。

loginfails

“loginfails”设置最多允许的登录失败的次数。可以用下面这一行来表示:

loginfails <n>

<n>表示最多允许的登录失败的次数。例如,只允许失败两次可以这样表示:

loginfails 3

readme

“readme”设置在什么条件下,一旦当前目录中的文件发生了变化需要提醒用户。

这个命令的格式为:

readme <path> <when>

<path>是用来提醒用户的文件的名字(例如:README),<when>设置出现这个提示信息的条件。

<when>可以为下面两种形式:LOGIN或CWD=<dir>。如果为LOGIN,当用户成功登录的时候就会出现提示信息。如果为CWD=<dir>,当用户进入<dir>目录的时候就会有提示信息。

请记住当给匿名(anonymous)用户设置提示信息的路径的时候,这个路径必须是相对于匿名ftp目录。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航