鉴于Centos5.6上Proftpd比Vsftpd有更好的表现,于是果断卸载Vsftpd
yum remove vsftpd
因为Centos5.6上默认没有Proftpd的源,因此我们选择了编译安装:
cd /tmp/
wget –passive-ftp ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.3e.tar.gz
tar xvfz proftpd-1.3.3e.tar.gz
cd proftpd-1.3.3e/
./configure –sysconfdir=/etc
make
make install
cd ..
rm -fr proftpd-1.3.3e*
proftpd被安装在了 /usr/local/sbin, 但是我们需要它安装在 /usr/sbin,因此我们建立一个符号链接:
ln -s /usr/local/sbin/proftpd /usr/sbin/proftpd
现在我们新建 /etc/init.d/proftpd:
vi /etc/init.d/proftpd
#!/bin/sh # $Id: proftpd.init,v 1.1 2004/02/26 17:54:30 thias Exp $ # # proftpd This shell script takes care of starting and stopping # proftpd. # # chkconfig: - 80 30 # description: ProFTPD is an enhanced FTP server with a focus towards \ # simplicity, security, and ease of configuration. \ # It features a very Apache-like configuration syntax, \ # and a highly customizable server infrastructure, \ # including support for multiple 'virtual' FTP servers, \ # anonymous FTP, and permission-based directory visibility. # processname: proftpd # config: /etc/proftp.conf # pidfile: /var/run/proftpd.pid # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 [ -x /usr/sbin/proftpd ] || exit 0 RETVAL=0 prog="proftpd" start() { echo -n $"Starting $prog: " daemon proftpd RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/proftpd } stop() { echo -n $"Shutting down $prog: " killproc proftpd RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/proftpd } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status proftpd RETVAL=$? ;; restart) stop start ;; condrestart) if [ -f /var/lock/subsys/proftpd ]; then stop start fi ;; reload) echo -n $"Re-reading $prog configuration: " killproc proftpd -HUP RETVAL=$? echo ;; *) echo "Usage: $prog {start|stop|restart|reload|condrestart|status}" exit 1 esac exit $RETVAL |
然后我们使它可执行:
chmod 755 /etc/init.d/proftpd
接着我们打开 /etc/proftpd.conf 修改其中的 Group 为 nobody:
vi /etc/proftpd.conf
[...] Group nobody [...] |
出于安全考虑您也可以加入以下到 /etc/proftpd.conf (更多详情请访问: :
vi /etc/proftpd.conf
[...] DefaultRoot ~ IdentLookups off ServerIdent on "FTP Server ready." [...] |
为了使ftp用户能使用 chmod 命令, 请注释掉 <Limit SITE_CHMOD> 部分:
[...] # Bar use of SITE CHMOD by default #<Limit SITE_CHMOD> # DenyAll #</Limit> [...] |
现在我们让Proftpd随系统自启动:
chkconfig –levels 235 proftpd on
最后我们启动Proftpd:
/etc/init.d/proftpd start
搞定收工