本文参照了CU论坛及vsftp的帮助文档
1.安装
#gunzip -c vsftpd-2.0.5.tar.gz |tar xvf -
#cd vsftpd-2.0.5
#make
#useradd nobody
VSFTPD默认配置中需要“/usr/share/empty”目录
#mkdir /usr/share/empty
手动执行以下复制
#cp vsftpd /usr/local/sbin/vsftpd
#cp vsftpd.conf.5 /usr/local/man/man5
#cp vsftpd.8 /usr/local/man/man8
VSFTPD提供匿名FTP服务时,需要“ftp”用户和一个有效的匿名目录。
# mkdir /var/ftp/
# useradd -d /var/ftp ftp
接下来的操作对于ftp用户是否已经存在都是有用的。
# chown root.root /var/ftp
# chmod og-w /var/ftp
make install
cp vsftpd.conf /etc
2. 建立vsftp用户和目录
# groupadd ftp
# mkdir /export/home/pub //建下载目录
# mkdir /export/home/pub/upload //建上传目录
# chown pub:ftp /export/home/pub/upload
# useradd -d /export/home/pub -g ftp -s /bin/false pub //实际使用的USER
# useradd -d /dev/null -g ftp -s /bin/false upload //要用来影射的USER
# useradd -d /dev/null -g ftp -s /bin/false download //要用来影射的USER
# passwd download
# passwd upload
3.分别对不同用户限制
#vi /etc/vsftpd.choot_list
pub
#mkdir /etc/vsftpd
#vi upload ;允许上传和下载
anon_world_readable_only=no
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_max_rate=102400
#vi download ;只允许上传
anon_world_readable_only=no
anon_max_rate=102400
#vi /etc/vsftpd.user_list
download
upload
4.编辑/etc/vsftpd.conf, and add this line at the bottom:
anonymous_enable=no ;不允许匿名用户登录
local_enable=YES ;控制vsftpd所在的系统的用户可以登录vsftpd
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
idle_session_timeout=600 ;空闲(发呆)用户会话的超时时间
data_connection_timeout=120 ;空闲的数据连接的超时时间
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service. ;
chroot_list_enable=YES ;锁定某些用户在自家目录中
chroot_list_file=/etc/vsftpd.chroot_list ;指出被锁定在自家目录中的用户的列表文件
user_config_dir=/etc/vsftpd ;定义用户个人配置文件所在的目录
listen=YES
ls_recurse_enable=NO ;YES,允许使用"ls -R" 指令
hide_ids=YES ;是否隐藏文件的所有者和组信息.隐藏
userlist_enable=YES
userlist_deny=NO ;决定禁止还是只允许由userlist_file指定文件中的用户登录FTP服务器,
;YES,默认值,禁止文件中的用户登录,同时也不向这些用户发出输入口令的提示。
; NO,只允许在文件中的用户登录FTP服务器。
userlist_file=/etc/vsftpd.user_list
guest_enable=YES
guest_username=pub
max_clients=50
max_per_ip=2
pasv_min_port=55000
pasv_max_port=55100
5.创建启动脚本
#vi /etc/rc3.d/S92vsftpd
/////////////////////////////////////////
#!/sbin/sh
#
# Copyright (c) 2004 by LLZQQ
# All rights reserved.
#
#ident "@(#)vsftpd 2.0.5 07/01/19
case "$1" in
start)
/usr/local/sbin/vsftpd &
;;
stop)
pkill vsftpd
;;
*)
echo "Usage: $0 { start | stop }"
exit 1
;;
esac
exit 0
////////////////////////////////////////
If using standard "inetd", you will need to edit /etc/inetd.conf, and add
a line such as:
ftp sttream tcp6 nowait root /usr/sbin/tcpd /usr/local/sbin/vsftpd
#ined -s
#/usr/local/sbin/vsftpd &
阅读(1691) | 评论(0) | 转发(0) |