首 页文章中心

Linux学习网

您的位置Linux学习网 > Linux服务器应用 > 文章内容

linux下架设wu-ftpd

作者:佚名  来源:不详  发布时间:2008-6-22 14:13:00
wu-ftpd的安装非常容易,大多数版本的linux中都包含了wu-ftpd的rpm软件包,你可

以在安装linux时指定装入。如果你想自行编译源代码,也可以到ftp://ftp.wu-ftpd.org

下载最新版本的源代码包。

  安装好以后,可以用ckconfig命令来检查是否已经正确安装。 在/etc/passwd中可以
指定ftp用户的登入目录。

wu-ftpd主要有以下6个配置文件:

ftpaccess(主要配置文件,控制存取权限)

ftpconvertions(配置文件压缩/解压缩转换)

ftpgroups(设定ftp自己定义的群组)

ftphosts(设定个别的用户权限)

ftpservers(设定不同IP/Domain Name以对应到不同的虚拟主机)

ftpusers(设定哪些帐号不能用ftp连线)

下面我们来一一介绍。

⒈/etc/ftpaccess(wu-ftpd的主要配置文件)

class--定义群组,用法如下:

class<种类><用户地址>[<用户地址>……]

由class定义的群组用户才可以连线进来,可以使用多层式的class来规范哪些群组的用户能够从哪些地方上来。这里有三个重要的种类,real、anonymous个guest。real如果没有列在定义中,那么这台机器中任何真实的一般用户都无法用自己的帐号连上来。anonymous如果没有在定义,就表示不让没有帐号的的人连上来。如果有定义guest,那么guest群组的人就可以上来。另外<用户地址>是指ftp上来的用户会用到的IP地址,则可自行设定。以下是一些例子:


class all real,guest,anonymous *


定义了一个名为all的class,包含三种人,所有IP的连线用户(也就是所有人都包括了)


class local real localhost loopback


local这个class说,只有real的用户可以从本机机器连上来


class remote guest,anonymous *


remote这个class包含了从任何地方上来的guest和anonymous用户,但是real用户不算


class rmtuser real !*.example.com


rmtuser这个class包含了从外面来的(除了example.com)真实用户


autogroup--自动对应群组,用法如下:


autogroup[……]


当你定义好的那些同属于一个class的用户,一旦连线上来就会被对应到一个相应的群组下面,这样你就可以用Unix的文件权限对某一群人做限制。


deny--拒绝某些地址连线,用法如下:


deny<拒绝连线的地址><信息文件>


禁止某些机器连线,并显示<信息文件>。例如:


deny 210.62.146.*:255.255.255.254 /etc/reject.msg


guestgroup--设定访客群


guestuser--设定访客帐号


realgroup--设定真实群组


realuser--设定真实帐号


nice--设定给某些class多少优先权,用法如下:


nice


在linux中,nice的值是-20(最优先)到19(最后处理),这里你可以指定负的值来提高某class的优先顺序。


defumask--设定某class的umask,用法如下:


defumask[]


umask是建立文件时该文件的的权限掩码


tcpwindow--设定tcpwindow的大小


keepalive--设定是否使用TCP SO_KEEPALIVE来控制断线情形


timeout--设定连线超时,用法如下:


timeout accept<秒>


接受连线超时,预设120秒


timeout connect<秒>


连线建立超时,预设120秒


timeout data<秒>


数据传送超时,预设1200秒


timeout idle<秒>


用户发呆超时,预设900秒


file-limit--限制某class只能传几个文件,用法如下:


file-limit[][]


对某个class限制存取文件的数目,包含了in(上传)、out(下载),total raw代表整个传输的结果,不光是数据文件。例如:


file-limit out 20 lvfour


限制lvfour这个class的用户最多只能下载20个文件


byte-limit--限制某class只能传几个字节,用法跟file-limit相似


limit-time--限制一个连线只能持续多久,用法如下:


limit-time{*|anonymous|guest}<分钟>


为了避免有人挂在站上不下来,可以用这个方法限制用户的上线时间,例如:


limit-time guest 5


让guest帐号的用户只能用5分钟


limit--限制某class能同时几人上线,用法如下:


limit<连线数目><时间区段><额满信息文件>


设定某个class在某一时间区段内最多能够几人同时上线,后面是当超过连线数目时要显示的信息。例如:


limit all 32 Any /home/ftp/etc/toomanyuser.msg


限制所有连线在任何时间只能有32个用户,超过则拒绝连线并显示信息


limit levellone 5 Any2300-0600 /home/ftp/etc/toomanyuser.msg


限制levellone这个class的用户在23:00到6:00这段时间内只能有5人连线


noretrieve--设定哪些文件不可下载


noretrieve[absolute/relative][class=]…[-][<文件名>…]


absolute或relative指文件是用绝对路径还是相对路径


allow=retrieve--设定哪些文件可以下载


allow[absolute/relative][class=]…[-][<文件名>…]


loginfails--设置登入错误可尝试的次数


当用户连线时可能打错ID或密码,这个设定可以让他打错几次以后就断线,避免有人用穷举法猜测密码。


private--设定线上是否可以执行SITE GROUP/SITE GPASS


当开放SITE GROUP与SITE GPASS指令时,可以用这两个指令切换到/etc/ftpgroup的群组。一般而言我们不会用到这个功能,以避免安全漏洞。


greeting--显示Server的版本信息,用法如下:


greeting


当用户登入画面显示的server信息,full是预设值,包含版本号以及hostname,brief只有hostname,而terse只有“FTP server ready”的信息。


barnner--设定未进入Login画面之前用户看到的信息,用法如下:


banner<文件路径>


这里叙述了在用户登入时,在还没打ID/Password之前要出现的信息。文件路径指的是相对于真实的路径,而不是相对于ftp的根目录。


host--设定ftp主机名


email--指定ftp管理者的email地址


message--信息文件的设定,用法如下:


message<文件>{<何时>{……}}


这里的文件的路径是相对于ftp的根目录的,“何时”是指当你做了什么动作之后的反应,有几个选择:


login(登入时)


cwd=<目录>(进入某目录时)


class 名称是前面已经定义过的,允许你的信息只对哪些人发出。


[1] [2]  下一页

收藏本页到: 365Key | del.icio.us | | 添加到雅虎收藏+
  • 网站帮助 - 广告合作 - 网站地图