1、yum安装vsftpd程序:
yum install vsftpd -y
2、修改配置文件
vi /etc/vsftpd/vsftpd.conf
#虚拟用户配置文件的目录
user_config_dir=/etc/vsftpd/ftpuser
#是否允许anonymous登录FTP服务器
anonymous_enable=NO
#//是否允许本地用户登录FTP服务器,默认是允许
local_enable=YES
#//是否允许用户具有在FTP服务器文件中执行写的权限,默认是允许
write_enable=YES
local_umask=022
anon_upload_enable=YES
virtual_use_local_privs=yes
anon_mkdir_write_enable=YES
anon_world_readable_only=YES
xferlog_enable=YES
connect_from_port_20=YES
listen_port=21
ftp_data_port=20
xferlog_file=/var/log/xferlog
xferlog_std_format=NO
ftpd_banner=Welcome to FTP service
chroot_local_user=yes
listen=YES
userlist_enable=YES
tcp_wrappers=YES
syslog_enable=yes
port_enable=YES
chown_uploads=YES
#设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/目录下
pam_service_name=meizu_ftp
#是否启用来宾用户(也就是启用虚拟用户)
guest_enable=YES
#如果启用了虚拟用户后上传文件修改文件的用户名
guest_username=mzftp
use_localtime=YES
connect_timeout=600
data_connection_timeout=600
idle_session_timeout=600
3、在/etc/vsftpd/下创建存放虚拟用户的认证文件
mkdir /etc/vsftpd/ftpuser
4、为虚拟用户创建对应的文件,如:ftptest
vim /etc/vsftpd/ftpuser/ftptest
local_root=/data/ftpdata/ftp1
anon_world_readable_only=no
write_enable=yes
anon_upload_enable=yes
anon_mkdir_write_enable=YES
anon_other_write_enable=yes
创建ftptest虚拟用户对应的ftp存放目录: mkdir -p /data/ftpdata/ftp1
5、生成虚拟用户的账号密码db数据库文件
vim /etc/vsftpd/login.txt #奇数行 用户名,双数行 密码
ftptest
test123456
mzwentai
wentai@111.com
db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db
6、更改pam认证模块
vim /etc/pam.d/meizu_ftp #这个文件名要与主配置文件中的pam_service_name指定的一致,最后面的login就是login.db,但是这里的后缀是不需要写的
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/login
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/login
7、创建用户mzftp ,赋mzftp目录权限 #这个要与主配置文件中的guest_username指定的一致
useradd -s /sbin/nologin mzftp
chown -R mzftp.mzftp /data/ftpdata/ftp1
8、启动服务
service vsftpd start
测试:
在我的电脑上输入 ftp://10.3.135.199 登陆,用户密码登陆ftptest/test123456
新建个文件夹,然后从我的电脑复制个文件,粘贴过去,有权限表示测试成功
本文出自 “每天进步一点” 博客,请务必保留此出处http://80888888.blog.51cto.com/2741630/1911456
原文:http://80888888.blog.51cto.com/2741630/1911456