科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道教你wu-ftp服务器的配置

教你wu-ftp服务器的配置

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文介绍了wu-ftp服务器的配置方法。

2006年12月7日

关键字: 服务器 wu-FTP

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共2页)

    ZDNetChina服务器站 x86服务器技巧

    1、安装和启动安装wu-ftpd可以通过freebsd自带的port来安装,在/stand/sysinstall中来选择,选择configure中的packages.安装之后,wuftpd的所有安装文件都被安装在了/usr/local中。

    想要启动wu-ftpd必须修改inetd.conf文件加入以下内容:ftp stream tcp nowait root /usr/local/libexec/ftpd ftpd –l

    加入以后以root身份#killall –HUP inetd

    测试一下服务器#ftp 127.0.0.1如果你看到以下内容说明你以成功建立了服务器,但是这个服务器并不完整,因为它现在还不能用。

    chu888.hope.com.cn FTP server (Version wu-2.6.1(1) Wed Jan 23 06:24:19 GMT 2002) ready. USER anonymous 331 Guest login ok, send your complete e-mail address as password. PASS (隐藏)

    530 Login incorrect.

    #adduser –silent增加一个新用户这时你再一次登陆你会发现你以成功了,但这个服务器非常的不安全,为什么了哪,那是因为,这个用户可以无限制的向上反。

    2、限制用户的根目录()

    #cd /usr/local/etc/ #ee ftpaccess加入以下内容restricted-uid * #killall –HUP inetd #ftp 127.0.0.1你再试试看在这里有一个关键性的问题,就是写了没有用,那是为什么哪,那是因为我们还要修改一个选择项,那就是/etc/inetd.conf文件中的ftp这一项。

    改成以下内容ftp stream tcp nowait root /usr/local/libexec/ftpd ftpd –l -a这个-a的作用是强制读取ftpaccess文件的内容以下是所有参数的内容-a 强制 wu-ftpd 读取 ftpaccess 的设定-A 强制 wu-ftpd 不读取 ftpaccess 的设定-d 将 wu-ftpd 的执行错误纪录在 syslog 中,也就是 /var/log/messages -i 将上传档案的纪录纪录在 xferlog 中-l 将每次连线的纪录纪录在 syslog 中,也就是 /var/log/messages -o 把下载档案的纪录纪录在 xferlog 中-t 秒数 设定连线连续停滞多久就予以断线,预设值是15分鐘(900秒)

    -L 把连线之后所执行的程式纪录在 syslog

    3 磁盘欢迎信息首先修改/usr/local/etc/ftpaccess文件的message选项,改成以下内容message /etc/welcome.msg login这时你就可以在etc目录下建立一个文件welcome.msg了。

    %T 本地时间(从Thu Nov 15 17:12:42 1990开始)

    %F 本目录所在的文件系统的剩余空间(kbyte,不是所有的系统都支持)

    %C 当前目录%E 在ftpaccess中定义的维护者信箱%R 远程机器名%L 本地机器名%u 根据rfc931得到的用户名%U 登录的时候使用的用户名%M 此类用户最大连接数%N 当前此类用户数%B 磁盘块限额硬上限%b 磁盘块限额软上限%Q 当前磁盘块%I 可以使用的inode硬上限(+1)

    %i 可以使用的inode软上限%q 已用inode %H 磁盘空间超额时间限制%h 文件数超额时间限制%xu 上传字节数%xd 下载字节数%xR 上传/下载速度(1:n)

    %xc Credit bytes(存储字节数?)

    %xT 时间限制(minutes)

    %xE 登录到现在经过的时间(minutes)

    %xL 剩下时间%xU 上传速度限制%xD 下载速度限制

    4 磁盘限额想要支持磁盘限额,在freebsd就必须编译内核,以下是编绎步骤

    #cd /usr/src/sys/i386/conf # cp GENERIC CHU888编辑CHU888这个文件在里面加入options QUOTA  #config CHU888 #cd /usr/src/sys/compile/CHU888 #make depend #make #make install在/etc/rc.conf中加入 enable_quotas="YES" check_quotas="YES"在/etc/fstab中加入 /dev/da1s2g /home ufs rw,userquota,groupquota 1 2重新启动# quotacheck -av # repquota -a # edquota -u user1 # edquota -p user1 user2 user3 //copy quota .user1 to user2 user3 # quota -v user1

    5 wuftpd的主要程序介绍ftpd ftpd 的主程式 (/usr/libexec)

    ftpshut关闭 FTP Server 的工具程式 (/usr/local/bin)

    此程式主要是用来产生 shutmsg(位置在 ftpaccess 中设定),ftpshut <-l分鐘><-d分鐘>关机时间<75个字元的关机说明>若指令为 ftpshut -l10 -d5 1130则 /etc/shutmag 的内容为1998 09 01 11 30 0010 0005 (1998 09 01 为关机当天)

    System shutdown at %S说明:关机前10分鐘停止连线进来,关机前5分鐘将已连线的使用者断线,关机时间为 11:30am注意:若 /etc/shutmag 建立起来,想重新启动 FTP Server 务必砍除shutmag ftpcount可以统计目前上线人数的应用程式 (/usr/local/bin)

    ftpwho可以查看目前的连线情形 (/usr/local/bin)

    ftpaccess wu-ftpd 最重要的设定档,主要设定 FTP Server 的运作模式与权限 (/usr/local/etc)

    ftpconversions档案被下在之后,所要进行的动作 (/usr/local/etc)

    ftphosts设定来自某特定位址的使用者,是否允许登入 FTP Server(/usr/local/etc)

    ftpusers禁止登入 FTP Server 的黑名单 (/usr/local/etc)

    6 ftpaccess的范例ftpaccess —— FTP 的设定档

    class all real,guest,anonymous * limit all 10 Any /etc/msgs/msg.dead readme README* login readme README* cwd=* message /welcome.msg login message .message cwd=* compress yes all tar yes all log commands real log transfers anonymous,real inbound,outbound shutdown /etc/shutmsg email user@hostname

    #=========ftpaccess 设定 wu-ftpd 的运作模式================================= #语法:logibfails 次数#说明:允许密码输入之错误次数#语法:class 群组名称 使用者名称 可以从哪裡登入(IP/DNS)

    #说明:设定可以使用 FTP Server 的群组及成员,可以从哪裡登入#举例:class mmm real,guest.anonymous * mmm这个群组的成员 real,guest,anonymous 可以从任何地方登入#语法:limit 群组名称 同时登入人数上限 执行该设限之时间 输出之讯息档 #说明:限制同一时间内能够上线的人数,以维持 FTP Server 较好的服务品质 #举例:limit all 10 Any /etc/msgs/msg.dead在任何时间只限定做多10人可以 all 这个群组成员的身分登入,如果超过10人,就会 show 出 /etc/msgs/msg.dead 的档案内容#语法:reeadme 档名 命令#说明:当使用者要使用某一特定命令时,就会 show 某一档案内容#举例:readme README* login只要使用者登入某一目录,就将该目录中以 README 为首的档案内容秀出来(秀在末端)

    #语法:message 档名 命令#说明:当使用者要使用某一特定命令时,就会 show 某一档案内容#举例:message /welcome.msg login当使用者登入 FTP Server 时,会将 FTP 根目录(一般在 /usr/ftp )下的welcome.msg 秀出来(秀在开头)

    #语法:compress yes/no 群组名称1 群组名称2 ……

    #说明:设定哪些群组支援/不支援 compress 功能#举例:compress yes all属于 all 这个群组的成员,都支援 compress 功能#语法:tar yes/no 群组名称1 群组名称2 ……

    #说明:设定哪些群组支援/不支援 tar功能#语法:private yes/no #说明:是否同意群组使用您的档案#语法:passwd-check none/trivial/rfc822 enforce/warm #说明:当 anonymous 登入时,密码输入的方式# none 任何密码都接受# trivial 只要输入的密码中有 @ 字元就接受# rfc822 密码一定要遵守 RFC822 所规定的 E-mail 格式# enforce 密码输入错误,就停止登入# warm 密码输入错误,就显示错误讯息,但仍旧允许登入#语法:log commands 群组名称 #说明:设定系统会记录哪些群组成员的操作纪录#举例:log commands real将属于 real 群组的使用者的操作纪录,都纪录在 xfrelog 中#语法:log transfers 群组名称 inbound/outbound #说明:设定系统会记录哪些群组成员上传或下传的操作纪录(纪录在 xfrelog)

    #语法:指令 yes/no 群组名称 #说明:设定是否支援某指令的功能,可以用来设限的指令有# delete overwrite readme chmod umask #举例:delete no guest,anonymous # 限制 guest,anonymous 两个群组的成员禁止使用 delete 指令#语法:upload FTP之根目录 上传目录 yes/no username groupname 权限 nodirs/dirs #说明:设定哪一个目录可以上传档案# yes 该上传目录允许上传档案# no 该上传目录不允许上传档案# dirs 可以在该上传目录中,以 mkdir 开新目录# nodirs 禁止在该上传目录中,以 mkdir 开新目录#举例:upload /home/ftp /upload yes root daemon 600 nodirs # 设定 /home/ftp 为FTP根目录,/upload 为可以上传的目录(从 FTP 根目录算起)

    # 不允许开新目录#语法:alias 别名 目录名称 #说明:将较复杂的目录设定一个较简单的别名#举例:alias up /upload #语法:cdpath 目录#说明:类似 DOS 中 PATH 的设定,但只有对 cd 这个指令有效,可以协助 cd 切换到# 正确的目录#举例:cdpath / # cdpath /pub # cdpath /incoming # cdpath /upload # 若打入指令 cd antivirus,# 则

    1.系统会先搜寻目前目录有无名为 antivirus 目录#

    2.寻找有无名为 antivirus 的别名#

    3.根据先前设定的顺序依序搜寻各目录#语法:path-filter 群组名称 目录名称 设限模式#说明:对上传的档案名称加以设限,避免档名具有那些符号#举例:path-filter anonymous /etc/pathmsg ^[-A-Za-z0-9_\.]*$ ^\. ^- #语法:shutdown 档名#说明:设定 FTP Server 何时应该关机,并且应该秀出的讯息档案可以经由 ftpshut # 来建立,要重新启动 FTP Server 就必须删除以 ftpshut 所建立的档案#举例:shutdown /etc/shutmsg # 这个 shutmsg 可以以 ftpshut 来建立,该档案包括了该何时 shutdown 的# 讯息,如果要中止 shutdown 的状态,就必须砍除 /etc/shutmsg #语法:guestgroup 功能#说明:指定 guestgroup 功能#举例:guestgroup ftponly #语法:email 特定的 E-mail 位址#说明:设定那些人的权限属于 guest,也就是权限介于 real 和 anonymous 之间 #举例:email aaa@bbb.ccc.ddd # 只要有人以 anonymous 登入,且其输入的密码为 aaa@bbb.ccc.ddd 就将# 其权限提升为 guest #语法:deny IP/DNS 档名#说明:设定那些 IP 或是 DNS 的使用者不能登入 FTP,并且秀出讯息告知#举例:deny *.com.tw 168.192.* /etc/deny.msg # deny !nameserverd /etc/deny.msg ==> 这是禁止不具有FQDN的机器登入7 ftpaccess例子loginfails 2 #只可以有两次密码输入错误

    # HEY YOU! Yeah, you with the editor. # change the following line, or delete it, OK?

    #定义两个类,一个类是本地类local一个类是remote类,本地类只可以从本地登陆,remote可以从任何#地方登陆class local real,guest,anonymous *.domain 0.0.0.0 class remote real,guest,anonymous *

    #任何时间local最多只可以有20个

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章