1、wu-ftp的版本号是2.6.0。编译和安装 把软件包(tar.gz)解压缩:rootdeep# cp wu-ftpd-version.tar.gz /var/tmprootdeep# cd /var/tmprootdeep# tar xzpf wu-ftpd-version.tar.gz编译和优化转到wu-ftpd的新目录下,运行下面的命令:编辑“ftpcount.c”文件(vi +241 src/ftpcount.c),改变下面这一行:#if defined (LINUX)改为:#if defined (LINUX_BUT_NOT_REDHAT_6_0)编辑“pathnames.h.in”
2、文件(vi +42 src/pathnames.h.in),改变下面这一行:#define _PATH_EXECPATH /bin/ftp-exec/usr/bin/ftp-exec我们把“ftp-exec”从“/bin”目录改到“/usr/bin”目录下。message “message”设置当用户登录或转到一个目录的时候会收到什么消息。可以设定多个消息。命令的格式为:message path whenpath表示需要显示的文件的完整路径名,when和“readme”中的when意思一样。还需要注意的是消息文件的路径名也是相对于匿名ftp目录的。例如:message /home/ftp/.w
3、elcome.msg LOGINcompress、tar、chmod、delete、overwrite、rename如果这些都不设置,那么就使用默认值,也就是对所有人都是“yes”。下面例子中的设置的意思是给guest组chmod、delete、overwrite和rename文件的权力,所有人都可以使用compress和tar。compress yes alltar yes allchmod yes guestdelete yes guestoverwrite yes guestrename yes guestlog commands因为安全上的原因需要记录用户使用的每一个命令。“log c
4、ommands”的格式是:log commands typelisttypelist是用逗号隔开的字串,表示哪些用户的命令需要记录下来,字串的取值可以是:anonymous、guest或real。要记录real和guest用户的每一个命令,可以这么表示:log commands real,guest这些记录都保存在“/var/log/message”文件中。log transfers因为安全文件需要把文件的传输都记录下来。“log transfers”的格式是:log transfers typelist directionsdirection也是用逗号隔开的字串,设置需要记录的文件传输的方向
5、,可以选择的两个传输方向是“inbound”(向内)和“outbound”(向外)。page例如,用下面表示记录所有real和guest用户的“inbound”和“outbound”方向的文件传输:log transfers real,guest inbound,outbound这些记录保存在“/var/log/xferlog”文件中。guestgroup这个命令用来设置guest组,每一行只能有一个成员。guestgroup ftpadminguestgroup webmasterlog security用来设置记录real、guest或anonymous用户违反安全规则的行为。log se
6、curity typelisttypelist是用逗号隔开的字串,字串的取值可以是:“real”表示真正在ftp服务器上有帐号的用户,“anonymous”表示匿名用户,“guest”表示guest用户。log security real,guestrestricted-uid、restricted-gid、guest-root这些用来设置是否允许real和guest用户访问家目录之外的目录。格式为:guest-root root-dirrestricted-uid uid-rangerestricted-gid gid-rangeguest-root /home/ftp ftpadmin w
7、ebmasterrestricted-uid ftpadmin webmasterrestricted-gid adminftp webmasterroot-dir设置chroot环境的用户路径。在一行里可以有多个uid地范围。如果为用户设置了guest-root,那么该用户的家目录就在“root-dir/etc/passwd”文件中设定,而“/etc/passwd”文件中的设定是无效的。当“ftpadmin”和“webmaster”被改变了根目录(chrooted)到“/home/ftp”目录下,他们就被限制在各自的家目录下而不能访问别人的文件。greeting设置用户登录时候的欢迎信息。g
8、reeting full|brief|terse“greeting full”是默认的设置显示主机名和ftp daemon地版本,“greeting brief”显示主机名,“greeting terse”简单地显示“FTP server ready”。greeting tersekeepalive yes|no设置socket的TCP SO_KEEPALIVE参数。这样在必要的时候可以断开网络连接。“yes”有效,“no”无效。最好设成“yes”:Keepalive yes配置“/etc/ftphosts”文件“/etc/ftphosts”文件为每一个用户建立规则,指定允许用户从某个主机登录
9、ftp服务器,或者不允许用户从某个主机登录ftp服务器。创建“ftphosts”文件(touch /etc/ftphosts),加入下面这几行:# Example host access file# Everything after a # is treated as comment,# empty lines are ignoredallow ftpadmin 208.164.186.1 208.164.186.2 208.164.186.4把文件的权限改为600:rootdeep# chmod 600 /etc/ftphosts每一行可能是:allow username addrglob或
10、deny username addrglob“allow”允许用户用username用户名,从addrglob地址访问ftp服务器。addrglob可以包含多个地址。“deny”禁止用户名为username的用户,从addrglob地址访问ftp服务器。配置“/etc/ftpusers”文件“/etc/ftpusers”文件设置哪些用户不允许连接到ftp服务器。创建“ftpusers”文件(touch /etc/ftpusers),加入下面这几行:rootbindaemonadmlpsyncshutdownhaltmailnewsuucpoperatorgamesnobody把文件的权限设成6
11、00:rootdeep# chmod 600 /etc/ftpusers配置“/etc/ftpconversions”文件“/etc/ftpconversions”是用来控制当传输文件的时候是否进行压缩。创建“ftpconversions”文件(touch /etc/ftpconversions),在文件中加入::.Z: :/bin/compress -d -c %s:T_REG|T_ASCII:O_UNCOMPRESS:UNCOMPRESS/bin/compress -c %s:T_REG:O_COMPRESS:COMPRESS.gz:/bin/gzip -cd %s:GUNZIP/bin/gzip -9 -c %s:GZIP.tar:/bin/tar -c -f - %s:T_REG|T_DIR:O_TAR:TAR.tar.Z:/bin/tar -c -Z -f - %s:O_COMPRESS|O_TAR:TAR+COMPRESS.tar.gz:/bin/tar -c -z -f - %s:TAR+GZIP.crc:/bin/cksum %s:CKSUM.md5:/bin/md5sum %s:MD5SUM把文件的属性改为600:rootdeep# chmod 600 /etc/ftpconversions配置“/etc/pam.d/ft
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1