准备工作:
1.创建安全目录
mkdir -p /var/run/vsftpd/empty/
2. 创建vsftpd用户和目录,并授权
groupadd -g 6005 vsftpd
useradd -c “vsftpd user” -g 6005 -G vsftpd -u 6005 -M vsftpd -s /sbin/nologin
mkdir /home/vsftpd
chown -R vsftpd:vsftpd /home/vsftpd
ubuntu 12.04:
1. 安装vsftpd和db4.8-util
sudo add-apt-repository ppa:thefrontiergroup/vsftpd
sudo apt-get update
apt-get install vsftpd db4.8-util
2. 修改vsftpd配置文件
local_enable=YES
anonymous_enable=NO
anon_upload_enable=NO
anon_other_write_enable=NO
anon_mkdir_write_enable=NO
ftpd_banner=Welcome to FtpServer
listen=YES
listen_port=9999
local_umask=022
write_enable=Yes
connect_from_port_20=YES
nopriv_user=vsftpd
tcp_wrappers=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/chroot_list
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/allow
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
allow_writeable_chroot=YES
#xferlog_enable=YES
#xferlog_file=/etc/logs/xferlog
pasv_enable=YES
pasv_min_port=50000
pasv_max_port=60000
guest_enable=YES
guest_username=vsftpd
pam_service_name=vsftpd
virtual_use_local_privs=YES
use_localtime=YES
user_config_dir=/etc/vsftpd_user_conf
secure_chroot_dir=/var/run/vsftpd/empty
idle_session_timeout=3600
用vsftpd命令测试配置是否可行
3. 创建虚拟账户
vim vsftpd_useraccess.txt
奇数行用户名,偶数行密码
username
passoword
db4.8_load -T -t hash -f /etc/vsftpd_useraccess /etc/vsftpd_useraccess.db
chmod 600 /etc/vsftpd_useraccess.db
4. 配置PAM文件
vim /etc/pam.d/vsftpd
注释其他内容,添加以下部分
auth required pam_userdb.so db=/etc/vsftpd_useraccess
account required pam_userdb.so db=/etc/vsftpd_useraccess
5. 配置虚拟用户
修改
mkdir /etc/vsftpd_user_dir/
vim username
加入
local_root=/home/www/
write_enable=YES
local_umask=022
vim vsftpd_user_list
加入
username
centos:
1.安装vsftpd和db4.8-util
yum -y install vsftpd db4-utils
2. 修改vsftpd配置文件
local_enable=YES
anonymous_enable=NO
anon_upload_enable=NO
anon_other_write_enable=NO
anon_mkdir_write_enable=NO
ftpd_banner=Welcome to FtpServer
listen=YES
listen_port=21
local_umask=022
write_enable=Yes
connect_from_port_20=YES
nopriv_user=vsftpd
tcp_wrappers=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/vsftpd_chroot_list
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/vsftpd_user_list
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
allow_writeable_chroot=YES
#xferlog_enable=YES
#xferlog_file=/etc/logs/xferlog
pasv_enable=YES
pasv_min_port=50000
pasv_max_port=60000
guest_enable=YES
guest_username=ftp
pam_service_name=vsftpd
virtual_use_local_privs=YES
use_localtime=YES
user_config_dir=/etc/vsftpd/vsftpd_user_dir
secure_chroot_dir=/var/run/vsftpd/empty
idle_session_timeout=3600
用vsftpd命令测试配置是否可行
3. 创建虚拟账户
vim vsftpd_useraccess.txt
奇数行用户名,偶数行密码
username
passoword
db_load -T -t hash -f /etc/vsftpd/vsftpd_useraccess /etc/vsftpd/vsftpd_useraccess.db
chmod 600 /etc/vsftpd/vsftpd_useraccess.db
4. 配置PAM文件
vim /etc/pam.d/vsftpd
注释其他内容,添加以下部分
auth required pam_userdb.so db=/etc/vsftpd/vsftpd_useraccess
account required pam_userdb.so db=/etc/vsftpd/vsftpd_useraccess
5. 配置虚拟用户
mkdir /etc/vsftpd_user_dir/
vim username
加入
local_root=/home/www/
write_enable=YES
local_umask=022
vim vsftpd_user_list
加入
username