向 ftpaccess 文件中添加指令以指定上载权限和上载失败的错误消息。
成为超级用户或承担等效角色。
角色包含授权和具有一定权限的命令。有关角色的更多信息,请参见《系统管理指南:安全性服务》中的“配置 RBAC(任务列表)”。有关如何使用主管理员配置文件配置角色,请参见《系统管理指南:基本管理》中的第 2 章 “使用 Solaris Management Console(任务)”。
将以下项添加到 ftpaccess 文件中。
要使用户可以上载文件,请添加以下项:
upload [absolute|relative] [class=<classname>]... [-] root-dir \ dirglob yes|no owner group mode [dirs|nodirs] [<d_mode>] path-filter typelist mesg allowed_charset {disallowed regexp...} |
该关键字应用于起始目录(chroot() 的参数)为 root-dir 的用户。可以将 root-dir 指定为“*”以便与任何起始目录匹配。
该参数指定将 root-dir 目录路径解释为绝对路径还是相对于当前 chroot 目录的路径。
该关键字用于指定任何数量的 class=<classname> 限制。如果指定该限制,则仅在当前用户为指定的某个类的成员时,上载子句才有效。
匿名用户的用户根目录和起始目录。
与目录名称匹配的模式。可以在任何位置或单独使用星号来表示任何目录。
允许或禁止上载到 FTP 服务器的变量。
上载到 dirnames 中的文件的属主。
与上载到 dirnames 中的文件关联的组。
用于对已上载的文件指定访问权限的参数。缺省模式 0440 禁止匿名帐户读取已上载的文件。
该关键字允许或禁止用户在 dirnames 中列出的目录中创建子目录。
确定新创建目录的权限的可选模式。
控制已上载文件的名称的关键字。
用逗号分隔的任何关键字(anonymous、guest 和 real)的列表。
与 regexp 条件匹配失败时将显示的消息文件。
文件名称中允许或禁止使用的字母或数字。
upload /export/home/ftp /incoming yes ftpadm ftpadmin 0440 nodirs path-filter anonymous /etc/ftpd/filename.msg ^[-A-Za-z0-9._]*$ ^[.-] |
上面的示例说明了以下内容:
对 /export/home/ftp 使用 chroot 的 FTP 用户帐户可以上载到 /incoming 目录。已上载的文件为用户 ftpadm 和组 ftpadmin 拥有。使用 nodirs 关键字将模式设置为 0440 以阻止匿名用户创建子目录。
对于匿名用户,文件名可以是 A-Z、a-z、0-9、.(点)、-(破折号)或 _(下划线)的任意序列。文件名不能以 .(点)或 -(破折号)开头。如果文件名不能通过此过滤,则会显示消息 /etc/ftpd/filename.msg(如果 FTP 管理员已创建该消息文件)。此消息后接 FTP 服务器错误消息。
应对允许匿名上载到的目录的拥有权和权限进行严格控制。FTP 管理员应该是上载到 FTP 服务器的所有文件的属主。允许匿名用户上载文件时,需要创建 FTP 管理员。该目录应为权限设置为 3773 的用户 ftpadm 和组 ftpadm 拥有。
上载到 FTP 服务器的文件的访问模式应为 0440。0440 模式禁止匿名帐户读取已上载的文件。此限制可以防止服务器成为第三方文件分发的临时区域。
要使已上载的文件可以进行分发,FTP 管理员可以将这些文件移到公共目录中。