《在Linux系统下FTP的配置与应用.wps》由会员分享,可在线阅读,更多相关《在Linux系统下FTP的配置与应用.wps(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、FTP 服务是 Internet 上的标准服务之一,用来在网络上传输文件。在 linux 系统中,通常用 wu-ftpd 来实现该服务(www.wu-ftpd.org)。通常,wu-ftpd 提供三种 ftp 登录形式:1、anonymous ftp2、real ftp3、guest ftpanonymous ftp 应用最广泛的一种 ftp,通常,用户以 anonymous 为用户名,以电子邮件地址为密码进行登录。real ftp 就是以真实的用户名和密码进行登录,登录以后,用户可以访问整个目录结构。通常认为,real ftp 能对系统安全构成极大威胁,所以,除非万不得以,应尽量避免使用 r
2、eal ftp。guest ftp 也是 real ftp 的一种形式,不同之处在于,一个 geust 登录后,他就不能访问除宿主目录以外的内容。在 wu-ftpd 中,是通过特定的配置文来控制 ftp 访问的,主要的配置文件有:/etc/ftpaccess/etc/ftpusers/etc/ftphosts/etc/ftpconversions等等,下面我们就分别来讲讲这些配置文件。ftpaccess 是主要的 ftp 配置文件,在该文件内你可以实现对 ftp 各方面的控制,由于控制命令名目繁多,我们将以 wu-ftpd 的 2.6 版本为例分几个部分来讲,相关文档可见wu-ftpd 手册。
3、1、访问控制class 说明:该命令用于定义用户类,定义用户类的目的是为了方便对服务的控制。其中:为类名,为一字符串;可以以逗号分隔的“anonymous”、“guest”、“real”关键字之一,real 说明该用户类中的用户可以用真实的账号来访问 ftp,anonymous 说明该用户类中的用户使用匿名 ftp,guest说明该用户类中的用户用 guest 账号访问 ftp。定义该用户类源 ip 地址或域名,可以用以下定义方法:ip 地址:子网掩码,或address/cidr。这里也可以指定一个文件,该文件包含了该用户类源 ip 地址的定义。之前还可以用惊叹号表示除以外的地址类。例子:cl
4、ass anon anonymous*class mng real 210.221.80.0/24class user real!第一条定义了 anon 用户类,为匿名用户,可以是来自任何地方。第二条定义了 mng 用户类,为真实用户,来自 210.221.80 网段。第三条定义了 user 用户类,为真实用户,可以是除 以外的任何地址。我们接着来看 ftpaccess 的其他配置。deny说明:拒绝源地址符合的访问,同时显示文件的内容。也可以是某一文件,该文件包含了拒绝的 ip 地址类的定义。可以用!nameserverd 来拒绝没有注册域名的客户端请求。如:deny!nameserverd
5、/home/ftp/etc/noname.msg拒绝没有注册域名的客户端请求,并且显示 noname.msg 的内容。guestgroup guestuser realgroup realuser 说明:如果客户端为中的真实用户(real user)则该客户端被当作 guest 用户处理;如果客户端为真实用户则该客户端也被当作 guest 用户处理;realgroup 和 realuser 把非匿名连接视为真实用户连接。和也可以用用户 id 和组 id 代替。比如:guestuser*realgroup admin表示除了 admin 组以外的任何非匿名连接视为 guest 用户连接,admi
6、n 仍旧视为真实用户连接。nice 说明:如果为中的用户连接的话,则调整 ftpd 进程的 nice 值为中指定的值。41 页 1 2 3 4keepalive说明:是否在会话过程中保持数据通道的激活状态。timeout accepttimeout connecttimeout datatimeout idletimeout maxidletimeout RFC931说明:设置各种超时。accept 设置 ftpd 服务等待被动数据通道连接请求的超时。(缺省为 120 秒)connect 设置 ftpd 服务标准数据通道连接请求的超时。(缺省为 120 秒)data 设置 ftpd 服务等待客
7、户端在数据通道上多长时间没有动作为超时。(缺省为1200 秒)idle 设置 ftpd 服务等待客户端用户在命令通道上多长时间没有动作为超时。(缺省为 900 秒)maxidle 设置用户可以在客户端设置的更长的空闲时间的上限。(缺省为 10 秒)RFC931 设置一个 RFC931 协议会话的最长时间。为零则取消对该协议的支持。tcpwindows 说明:设置 tcp 窗口的大小。一般 linux 系统缺省值为 6。如果网络连接情况较好可以增大该值,否则,应减小之。我们接着来看 ftpaccess 的其他配置。file-limit 说明:用来限制在给定类中的用户可以传输的文件数目。可分为进、
8、出、合计三类。如果没有指定类,则改选项将应用于所有没有传输文件限制的类。可选参数 raw 用来限制总的流量。byte-limit 说明:说明:用来限制在给定类中的用户可以传输的数据流量。可分为进、出、合计三类。如果没有指定类,则改选项将应用于所有没有传输文件限制的类。可选参数 raw 用来限制总的流量。limit-time*anonymousguest说明:用于限制一个 ftp 会话的总时间。缺省值为无限,真实用户不受限制。guestserver 说明:控制那一部主机用来提供 anonymous 或 guest 访问。如果没有指定,则拒绝所有 anonymous 或 guest 访问。limi
9、t说明:控制在一定的时间内,可以访问 ftp 的指定),当达到最大限制数时,显示的内容。格式有些复杂:星期天到星期六分别为 Su、Mo、Tu、We、Th、Fr、Sa,时间采用军用格式,在小时和分钟间没有冒号,范围用破折号指定。如:limit anon 20 MoTuWe,Th0800-1730/home/ftp/etc/topmsg表示在星期一、星期二、星期三的全天,星期四的上午八点到下午五点半这段时间内,对 anon 类的用户登录数目限制为 20,达到这一限制时显示 topmsg 的内容。noretrieve absolutrelativeclass=-说明:拒绝传送某些文件。你可以指定该文
10、件的绝对路径,也可以只给出文件名。如果只给出文件名,则将拒绝传送所有符合该文件名的文件。如:noretrieve/etc/group passwd anon将拒绝向 anon 类传送 etc 目录下的 group 文件及任何目录下的 passwd 文件。allow-retrieve absolutrelative class=-说明:定义允许传送的文件,即使被 noretrieve 拒绝。loginfails说明:当登录失败的次数达到时,显示“repeated login failures”并终止 ftp 会话。private说明:是否允许用户利用 SITE GROUP 和 SITE GPAS
11、S 命令进入需要密码的特权用户组中。在这里要引用到/etc/ftpgroups 文件,该文件的格式为:access_groupname:encrypted_passard:real_groupaccess_groupname 为用来引用特殊组的名字,encrypted_passard 是该组的密码,real_group 为/etc/group 中实际被引用的组。42 页 1 2 3 42、显示信息控制指当用户连接到 ftp 或做出某些特定行为(如改变目录)时,向用户显示的特定信息。greeting fullbreiftersegreeting text说明:定义再用户登录前向用户显示的信息。f
12、ull 向用户显示主机名和 ftp 服务程序的版本,为缺省设置。breif 只向用户显示主机名。terse 仅仅显示“FTP server ready”text 可以指定你所想显示的任何信息。从安全角度出发,建议用 terse.banner说明:在用户键入用户名和密码前向用户显示的信息。为想要显示的文件的完整路径名。如:banner/home/ftp/etc/.bannerhostname说明:定义在 greeting 时,向用户显示的主机名。email说明:定义网络管理员的 email 地址。message 说明:当用户登录或更改目录时,向用户显示所定义的文件的内容。可以是 LOGIN,说明
13、当用户登录成功时向用户显示信息。也可以是 CWD=,即当用户更改目录到时显示信息。为了避免迷惑用户,该信息将只显示一次。当 anonymous 用户触发 message 时,必须相对于 ftp 主目录。在该文件中可以包含一些特殊的参数(完整参数请参考手册):%T 本地时间%F 目录的可用空间%C 当前的工作目录%E 管理员的 email 地址%R 远程主机名%L 本地主机名%U 用户登录时的用户名%M 在该用户类中最大的允许登录数%N 该用户类的再线人数readme 说明:基本用法和功能同 message.3、日志控制log commands说明:对特定的 typelist 的任何命令都进行日
14、志。typelist 可以是 real、anonymous、guest 中的一种。log transfers说明:对特定的 typelist 的文件传输进行日志。typelist 同上,direction 可以是 inbound 或 oubound 两种。如:log transfers real inbound,outbound对 real 用户下载或上传进行日志。log security说明:对种种违反安全规则的行为进行日志,typelist 同上。log syslog说明:把特定文件 inbound 或 oubound 的传输日志重定向到 syslog.没有该条语句则会把这些日志写到 xf
15、erlog.log syslog xferlog说明:把特定文件 inbound 或 oubound 的传输日志写到系统日志和 xferlog.4、其他控制alias说明:为目录定义已个别名。比如:alias tools/pub/soft/tools则当用户使用 cd tools 命令时,不管用户当前处于什么目录都将进入/pub/soft/tools目录,从这里我们也可以看出是相对于 ftp 宿主目录的。cdpath说明:和 dos 中的 path 命令一样,cdpath 是用来定义 ftp 会话中的用户使用 cd 命令时的搜索路径。如:cdpath/pub/softcdpath/pub/do
16、c假设用户执行了一条 cd net 命令,则搜索的顺序如下:a./net(搜索当前目录)b.搜索所有别名定义c./pub/soft/netd./pub/doc/netcompress tar 说明:使符合定义的用户在传输之前可以对文件进行压缩、解压和归档。实际的传输过程在/etc/ftpconversions 中定义。shutdown说明:如果指向的文件存在的话,则服务程序将定期地检查该文件,看看服务器是不是将被关闭。如果服务器将被关闭,则会通知用户,并在指定的时间后拒绝新的用户连接,在指定的时间后中断当前的用户会话。43 页 1 2 3 4该文件的格式如下:其中:必须大于 1970范围为 011范围为 023范围为 059拒绝新的用户连接的时间,格式为 HHMM。中断当前的用户会话的时间,格式为 HHMM。为向用户的信息。可以包含以下变量:%s 系统关闭的时间%r 拒绝新的用户连接的时间%d 中断当前的用户会话的时间daemonaddress说明:让 ftp 监听指定的 ip 地址,缺省将监听说有的 ip 地址。本文章由山西治疗牛皮癣医院:http:/