<i id='so0th'><div id='so0th'><ins id='so0th'></ins></div></i>
      <span id='so0th'></span>

      <ins id='so0th'></ins>

      <dl id='so0th'></dl>

      <acronym id='so0th'><em id='so0th'></em><td id='so0th'><div id='so0th'></div></td></acronym><address id='so0th'><big id='so0th'><big id='so0th'></big><legend id='so0th'></legend></big></address>
      <fieldset id='so0th'></fieldset>

      <code id='so0th'><strong id='so0th'></strong></code>
    1. <tr id='so0th'><strong id='so0th'></strong><small id='so0th'></small><button id='so0th'></button><li id='so0th'><noscript id='so0th'><big id='so0th'></big><dt id='so0th'></dt></noscript></li></tr><ol id='so0th'><table id='so0th'><blockquote id='so0th'><tbody id='so0th'></tbody></blockquote></table></ol><u id='so0th'></u><kbd id='so0th'><kbd id='so0th'></kbd></kbd>
      <i id='so0th'></i>

          Linux环境下wu-ftp服务的配置第1/2页

          • 时间:
          • 浏览:28
          • 来源:124软件资讯网

            FTP:文件传输协议  ,客户/服务器模式

            一、安装WU-FTPD

            #rpm -ivh wu-ftpd*.rpm
            #tar zxvf wu-ftpd*.tar.gz
            #cd wu-ftp*
            #./configure
            #make
            #make install

            若是没有指定安装目录  ,那么其执行文件默认会划分安装在/usr/bin和/usr/sbin 中 。

            二、启动WU-FTPD

            cd 到/etc/xinetd.d/目录 

            打开wu-ftpd文件  ,将其中的disable = yes 改为disable = no  。

            然后重新启动xinetd服务:

            #/etc/rc.d/init.d/xinetd restart 
            三、确认FTP是否启动
            #telnet localhost 21
            Trying 127.0.0.1
            connected to rh
            escape character is '^]',
            220 rh.china.com FTP server (version wu-2.6.1) mon jul 24 01:59:25 EDT 2000)ready.

            ^] //按ctrl+]号中止  。
            telnet>q //按Q键退出 。

            四、匿名FTP的设置与组织

            /etc/ftpaccess //WU-FTPD 最主要的设定文件
            /etc/ftpconversions //设置FTP匿名用户传输文件时 ,可对文件做tar  ,压缩 ,解压缩等处置惩罚 。
            /etc/ftpgroups //限制哪些用户组不能上岸到FTP服务器  。
            /etc/ftphosts //限制哪些网络地址的机械不能毗连到FTP服务器
            /etc/ftpusers //限制谁不能上岸FTP服务器  。
            WU-FTPD的可执行法式
            /usr/bin/ftpcount //查询现在各种的上线用户人数 。
            /usr/bin/ftprestart //重新激活FTP
            /usr/bin/ftpshut //发生shutmsg文件  ,并暂停FTP服务  。
            /usr/bin/ftpwho //查询联机情形
            放置上 ,下载文件的目录
            /var/ftp 

            为了增添系统的宁静性 ,可以使用adduser添加FTP服务器资源的治理者 ,如:ftpadm  ,并将ftpadm加入到adm组  ,这样当别人对FTP有所建议时  ,可以发email给ftpadm  ,而不必凡事都要root出马 。

            修改 /etc/group内容应该如下:

            adm:x4:root,adm,daemon,ftpadm
            然后:
            #adduser ftpadm

            /var/ftp/bin目录

            由于匿名用户看不到除/var/ftp以外的工具 ,以是必须提供足够的文件供匿名FTP使用 ,默认/var/ftp是FTP用户的根目录  ,/var/ftp/bin目录

            放置一些常用的FTP下令  ,如:ls,tar,gzip,compress等执行文件  ,此目录权限应该是111  。

            /var/ftp/etc目录

            这个目录放置一些匿名FTP用户需要的设置文件  ,如passwd,group  。当匿名用户执行ls -l时  ,FTP服务器的文件、目录才会显示拥有者的名称和组而不是泛起数字 。此目录的权限是111  。

            /var/ftp/pub目录

            放置下载文件的起点  ,通常在pub目录下  ,会将文件资源特征分类  ,再建设子目录  ,由治理员自行计划  。

            /var/ftp/upload目录

            上传目录 。系统默认不提供上传目录  ,若是需要做文件上传  ,要自己建设此目录  ,以提供匿名FTP用户上传文件 ,为了制止病毒 ,一个好的治理员会筛选upload里的文件和目录 ,一切都没有问题后  ,才将上传的文件移至下载区  。一样平常设置upload目录的权限是:chmod 733

            /var/ftp/upload/ 

            五、限制登入的用户和主机

            将可登入的用户分为3类  ,划分是real  ,anonymous ,guest  。

            real:

            在此服务器拥有帐号的用户 ,并以他的帐号上岸 ,此类帐户默认的登入的目录是其专属目录 ,但只要他拥有某目录的读取权限  ,纵然该目录不在其专属目录中  ,也能切换到哪个目录  。

            anonymous:

            指的是在此服务器上没有帐户的用户,可以用anonymous及电子邮件地址看成帐号名称和密码  ,以匿名方式登入服务器 ,登入后的根是/var/ftp  ,此类用户不能切换到除/var/ftp以外的目录  。

            guest:

            来宾帐号 。在某些情形下 ,治理员可能只希望某些拥有帐号的用户登入后 ,只能存取专属目录下的文件  ,而不得存取专属目录以外的文件  ,因此治理员可以使用ftpaccess设定文件中的 guestuser或guestgroup参数指定属于这类的用户有哪些  。

            设定不行以登入的用户

            /etc/ftpusers设定文件用来设定不允许哪些用户登入  ,要领是每个用户占一行  。

            修改/etc/ftphosts设定文件

            该文件是用来设定允许或拒绝用户从差别的地址登入 ,有allow和deny两种设定花样  。

            1允许特定用户从指定地址登入 allow

            花样如下:

            allow <帐号名称> <主机地址> ...例如  ,允许test用户从*.china.com网域上岸  ,
            allow test *.china.com

            2拒绝特定用户从指定地址登入 deny

            花样如下:

            deny <帐号名称> <主机名称> ...例如  ,不允许test用户从202.198.16.8地址上岸  ,
            deny test 202.198.16.8

            六、服务器情况设定(/etc/ftpaccess文件)

            指令

            class

            class 用来界说用户事情组  ,并指定属于这事情组的是哪些种别的用户  ,或来自哪个阻击地址  ,同时我们可以在一个ftpaccess文件中界说多个事情组  ,花样如下:

            class <事情组名称><用户种别><用户所在的主机地址>

            事情组名称:此事情组名称  ,由治理员界说

            用户种别: 可以使用的种别是real  ,anonymous,guest  。

            主机地址:登入用户所在的主机的IP或域名  ,此处可明确指明主机地址  ,或接纳通配符*也可以  。

            下例为缺省值:

            class all real,guest,anonymous *
            //此界说的事情组名称是all  ,并设定此事情组成员为从任何地方登入的所有种别的用户  。
            例如 ,class group1 real *
             class group2 real,guest,anonymous *.china.com 203.84.200.* 

            email

            设定FTP服务器治理员的E-mail地址  ,当WU-FTPD要显示治理者email地址时  ,即会显示此处的设定花样:

            email 
            例如:
            email ylei@163.com 

            训练:

            1启动FTP

            2建设用户帐户aaa和bbb  ,设置不允许bbb上岸

            3建设事情组group1  ,界说此事情组成员是从192.168.9.0网络上岸的real ,和anonymous种别的用户

            guestuser

            指定属于guest种别的用户

            例如(花样):

            guestuser aaa bbb

            guestgroup

            用来指定属于guest 种别的事情组有哪些  ,下例将指定属于guestgp事情组的用户  ,都属于guest种别:guestgroup guestgp //guestgp事情组要先建设才行  。

            loginfails

            设定允许用户最多登入失败的次数  ,花样如下:

            loginfails <登入次数> //登入次数指当用户输入了错误的帐号和密码凌驾了设定的登入次数之后  ,即不再允许用户再实验登入  。

            例如:

            loginfails 3 

            readme

            用来设定当用户登入FTP后  ,或第一次切换某目录时  ,会泛起提醒信息提醒用户自行读取说明文件  ,其花样如下:

            readme <说明文件路径><时机><事情组名称>

            说明文件路径:

            设定说明文件的位置  ,此处设定值可以使用通配符*

            时机:

            设定要显示提醒信息的时机  ,使用login选项  ,表现用户登入后;使用cwd=<路径>选项,表现用户第一次切换到该目录时  。

            事情组名称:

            只针对指定的事情组  ,才显示提醒信息 。

            训练:

            设定:

            readme README* login //当用户登入FTP时 ,系统会提醒用户读取统一目录下的README*文件在user的专属目录下建设以README文件  ,或建设以README名称开头的文件 ,并输入些内容  。

            重新启动xinetd服务

            /etc/rc.d/init.d/xinetd restart 

            在shell状态以user身份毗连ftp server 。会有提醒你读取README文件

            例二

            设定readme README* cwd=* //表现当用户地一次切换到任一目录时 ,系统会提醒用户读取统一目录下的README*文件  。

            例三

            设定readme README* CWD=/LIB GROUP1 //表现当group1事情组的用户第一次切换到/lib目录时  ,系统才会提醒该用户读取README*文件 。

            message

            是用来设定当用户登入后  ,或第一次切换到某目录时 ,系统所要显示的接待信息  ,其花样如下:

            message <信息文件路径><时机><种别>

            信息文件路径:

            设定接待信息文件存放的位置  ,此位置的路径是相对于/var/ftp目录的  。

            时机:

            设定要显示提醒信息的时机  。使用login选项 ,表现用户登入后 ,cwd=< 路径>则表现用户第一次切换到该目录时  ,只有当用户地一次切换到该目录时  ,才显示此提醒信息  ,若再次切换回到统一目录则不再显示信息  。




            事情组名称:

            只针对指定的事情组 ,才显示接待信息  。

            可使用的变量

            %T
            FTP服务器主机的时间
            %F
            现在目录分区所剩下的空间巨细
            %C
            现在所在的FTP目录名称
            %E
            FTP服务器治理员的EMAIL地址
            %R
            用户原来主机的名称(远程的)
            %L
            FTP服务器的主机名称
            %U
            登入的用户名
            %M
            统一事情组可允许最多几个用户登入
            %N
            统一事情组现在已经登入的用户数目
            默认值是:
            message /welcome.msg login //表现当匿名用户登入时  ,
            执行/var/ftp目录下的welcome.msg文件message .
            message cwd=* //表现当匿名用户转换
            目录时(cwd=*)  ,执行转换目录下的.message隐藏文件 。
            可以在welcome.msg文件内输入下列内容:
            接待来自%R的朋侪 !
            当地主机地址是%L  !
            您是现在站上第%N位用户  !
            现在当地时间是:%T  。
            您现在所在的目录是:%C  。
            若是有问题  ,请和我联系:%E  。

            tar

            设定文件压缩功效  。tar可以设定是否允许某些事情组使用tar方式在线压缩文件  ,花样:

            tar <设定值><事情组名称>

            设定值:可使用的选项有yes,no;划分表现启动和关闭使用tar功效  。

            事情组名称:使用class界说的事情组名称  。

            例如(默以为允许all事情组使用tar在线压缩文件)

            tar yes all 

            指令的执行权限

            此类可用来设定允许哪些种别的用户执行chmod等下令 ,花样:

            chmod <设定值><用户种别>
            delete<设定值><用户种别>
            overwrite<设定值><用户种别>
            rename<设定值><用户种别>
            umask<设定值><用户种别>

            设定值:可使用的选项有yes  ,no 。划分表现是否允许执行此指令  ,默认所有人都能执行用户种别:可使用的种别为real,anonymous,guest  。

            例如(不允许guest,anonymous身份登入的用户执行chmod,delete,overwrite,rename指令)

            chmod no guest,anonymous
            delete no guest,anonymous
            overwrite no guest,anonymous
            rename no guest,anonymous

            compress

            可设定是否允许某些事情组使用compress方式举行在线压缩文件  ,花样:

             compress <设定值><事情组名称>
            设定值:可使用的选项有yes,no 。划分表现启动和关闭使用compress功效事情组名称:使用class界说的事情组名称例如(允许all组可以使用compress功效)
             compress yes all

            log commands

            可用来指定要记载哪些用户所执行的下令  ,其花样如下:

            log commands <用户种别>

            用户种别:可使用的用户种别是real,anonymous,guest

            例如:

            log commmands real
            //记载内容会被存储在/var/log/xferlog内  。

            log transfers

            可用来指定要记载哪些用户传输文件的行动 ,花样:

            log transfers <用户种别><传输行动>

            用户种别:可使用的种别是real,anonymous,guest 。

            传输行动:可使用的选项有两种:inbound(用来记载上传到服务器的行动);outbound(表现记载从服务器端下载文件的行动)

            例如(记载anonymous用户所有上传和下载文件的行动):

            log transfers anonymous inbound,outbound
            //记载内容会写到/var/log/xferlog内 。

            shutdown

            设定何时关闭FTP服务器  ,花样:

            shutdown <设定文件的路径>

            设定文件的路径:

            此设定文件的内容是有关shutdown指令的设定 ,默认值是/etc/shutmsg文件 。

            此文件花样如下:

            <年><月><日><时><分><不能FTP登入的时间><用户被踢出的时间>
            例如:
            2003 12 7 0 30 20 5 

            //表现FTP服务器在2003年12月7日0时30分关闭  ,0时10分钟后克制用户FTP登入  ,0时25分时所有用户会被系统踢出  。

            若要启动FTP ,将/etc/shutmsg文件删除即可

            七、设置上传目录

            按下面步骤完成:

            按下面步骤完成:

            1 #cd /var/ftp //切换到匿名FTP根目录

            2 #mkdir upload //建设用来上传的目录upload

            3 #chmod 733 upload //设置此目录权限为733  ,即任何人都具备写入和执行的权限  。或333  。

            4 在/etc/ftpaccess文件内加入如下内容:

            upload /var/ftp /upload yes root ftp 0600 nodir 

            #chmod a+w /var/ftp/upload
            6设置/var/ftp目录下不允许上传文件:(/etc/ftpaccess文件)
             upload /var/ftp * no
            upload /var/ftp/bin no
            upload /var/ftp/etc no

            设置过滤功效

            语法:

            path-filter <用户种别><信息文件><上传文件名规则>
            //path-filter的功效是过滤用户上传的文件名是否正当

            存取控制

            此处的设定可用来界说事情组  ,允许或拒绝哪些用户 ,或从那里上岸

            deny

            用来设定此FTP服务器拒绝用户从哪些网址登入  ,并决议此时要显示提醒文字 ,花样:

            deny <主机地址><提醒文字文件路径>

            主机地址:

            IP地址或域名  ,此处可明确指明主机地址  ,或接纳通配符*也可以  。

            提醒文字文件路径:

            当拒绝用户登入时  ,所要泛起提醒文字文件的位置  。

            例如(拒绝用户从china.com网址登入 ,同时显示 /etc/msgs/reject.msg文件的信息)

            deny *.china.com /etc/msgs/reject.msg
            例如(拒绝用户从192.168.1.0网络登入 ,同时显示/etc/msgs/reject.msg文件信息)
            deny 192.168.1.* /etc/msgs/reject.msg
            //注重:/etc/msgs/reject.msg文件要自己建设

            limit

            设定某一事情组在某段时间同时最多上线人数  ,花样:

            limit <事情组名称><人数><时间><提醒文字文件路径>

            事情组名称:

            使用class界说的事情组名称

            人数:

            允许登入的用户数目

            时间:指定要限制的时间  ,其时间花样可接纳24小时制  ,如0800-1800表现从上午8点到下战书6点  ,其他默认花样有以下几种:

            Any 任何日期
            WK 非沐日的事情天
            Mo 星期一
            To 星期二
            We 星期三
            Th 星期四
            Fr 星期五
            Sa 星期六
            Su 星期日

            //在时间项目中要想表现多个区段的时间  ,则时间跟时间之间可用“|”相串联  。

            提醒文字文件路径:

            当拒绝用户登入时  ,所要显示提醒文字文件的位置  。

            举例:


            limit group1 20 Any /etc/msgs/msg.toomany
            //此group1组要存在  ,而且由class界说,msg.toomany文件内容要治理者自己编写.
            msg.toomany文件内容举例:
            Sorry! Too many users!
            The limit is %M.

            举例2:


            limit group1 30 SaSu|Any 1800-2300 /etc/msgs/msg.toomany //为了防止同时有太多人登入FTP服务器 ,导致各人下载文件的速率难以接受  ,合理限制同时登入人数是有须要地 。