1、使用apt工具安装
sudo apt-get install vsftpd
启动命令
service vsftpd start
start 可换成restart、stop
安装后该vsftpd配置文件路径
/etc/vsftpd.conf
匿名ftp用户及用户文件夹可通过查看/etc/passwd文件
cat /etc/passwd
ftp:x:129:137:ftp daemon,,,:/srv/ftp:/usr/sbin/nologin
即该匿名用户的家目录为/srv/ftp
如需设置xinetd.d守护进程接管ftp,需要修改配置文件中listen的参数为NO;
listen=NO
并创建配置xinetd目录下的服务文件ftp
2、vsftpd配置文件vsftpd.conf
匿名用户是否允许登陆 YES/NO
# Allow anonymous FTP? (Disabled by default).
anonymous_enable=NO
匿名登陆,跳过密码检测
no_anon_password=YES
设置匿名用户传输速率byte/s
anon_max_rate=20000
设置本地用户登陆
local_enable=YES
设置本地用户上传权限
write_enable=YES
限制用户在本地目录中
chroot_local_user=YES
启用配置文件来指定用户应该受到哪些限制
chroot_list_enable=YES
指定chroot_list_enable配置文件的路径及文件名
chroot_list_file=/etc/vsftpd.chroot_list
3、ftp限制登陆配置用户文件/etc/ftpusers
cat /etc/ftpusers
打开如下所示
# /etc/ftpusers: list of users disallowed FTP access. See ftpusers(5).
root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
nobody
ftp虚拟用户创建
安装db5.3-util
sudo apt-get install db5.3-util
使用db5.3创建数据库文件login_user,,需先用root创建文件login_user
sudo db5.3_load -T -t hash -f /home/ubuntu/login_user /etc/vsftpd_login.db
打开文件,并输入用户名及口令,每个用户名及口令占两行,如
Tom
tom123
John
john123
修改文件权限
sudo chmod 600 login_user
配置PAM验证(注:pam文件是由/etc/vsftpd.conf文件中的pam_service_name=path指定的路径及文件名也可自行修改指定文件)
打开/etc/pam.d/vsftpd文件
注释掉原有的
#auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
#@include common-account
#@include common-session
#@include common-auth
#auth required pam_shells.so
并添加下列行
auth required pam_userdb.so db=/etc/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd_login
创建本地用户映射
打开/etc/vsftpd.conf
添加或者修改
guest_username=ftp 访客映射成本地用户ftp
guest_enable=YES 将所有登陆用户视为访客guest
anonymous_enable=NO
local_enable=YES 允许本地用户登陆
chroot_local_user=YES 注意打开后,这两行需要注释掉#chroot_list_enable=YES #chroot_list_file=/etc/vsftpd.chroot_list
pam_service_name=vsftpd
最后设置用户目录及权限
进入ftp根目录即/srv/ftp,创建Tom及John用户主目录及修改属主为ftp
sudo mkdir Tom
sudo chown ftp Tom
sudo mkdir John
sudo chown ftp John
然后创建用户配置文件,
sudo mkdir /etc/vsftpd_user_conf
并在该文件夹下创建两个文本文件取名Tom及John,添加如下内容
#指定服务器主目录
local_root=/srv/ftp/Tom
#打开写权限
write_enable=YES
#打开上传权限
anon_upload_enable=YES
#打开建立目录权限
anon_mkdir_write_enable=YES
并在/etc/vsftpd.conf文件中使用下列配置指向创建文件
user_config_dir=/etc/vsftpd_user_conf
附全局配置选项