Linux下安装vsftpd

一.安装vsftpd及相关依赖包

#vsftpd安装程序

yum install vsftpd

#vsftpd虚拟登陆账户必要依赖包

yum install pam* db4*

安装完之后,vsftpd默认在/etc/vsftpd目录下 

 

二.修改vsftpd.conf (/etc/vsftpd/vsftpd.conf)

#建立相关文件和文件夹

touch /etc/vsftpd/chroot_list

mkdir /etc/vsftpd/ftplogin
#修改vsftpd.conf

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

vim /etc/vsftpd/vsftpd.conf
#原有配置的修改

anonymous_enable=NO

chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list pam_service_name=vvsftpd #新增配置 guest_enable=YES guest_username=www user_config_dir=/etc/vsftpd/ftplogin

完整配置如下(伸手党福音),直接覆盖即可,千万不要忘记备份原文件

anonymous_enable=NO

local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list listen=YES userlist_enable=YES tcp_wrappers=YES guest_enable=YES guest_username=www user_config_dir=/etc/vsftpd/ftplogin pam_service_name=vvsftpd

 

三.建立FTP虚拟登陆账户

1.创建密码明文文件

touch /etc/vsftpd/vuser

vi /etc/vsftpd/vuser

格式为:

用户名1

用户名1密码

用户名2

用户名2密码

...........

2.生成pam校验数据库文件

db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/login.db

为了安全期间,建议在生成校验数据库之后,删除vuser文件

或者修改vuser权限,不让别的用户读(root大神如果被攻陷,那就没什么好说的了)

chmod 600 /etc/vsftpd/vuser

3.添加新的pam service 

touch /etc/pam.d/vvsftpd

vim /etc/pam.d/vvsftpd

 内容如下(注意如果是32位系统,那就用32位的校验,本例是64位的):

#%PAM-1.0

#auth required /lib/security/pam_userdb.so db=/etc/vsftpd/login

#account required /lib/security/pam_userdb.so db=/etc/vsftpd/login

auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login

account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login

4.给FTP虚拟用户赋权(增加权限配置文件)

配置文件存放路径,就是conf中的user_config_dir,本文就是/etc/vsftpd/ftplogin,文件名必须和用户名相同

文件配置详解,默认路径需要提前用mkdir建立好,目录拥有者设置为conf中的guest_username,本文为www

#有上传/下载/修改权限

anon_world_readable_only=NO

write_enable=YES

anon_mkdir_write_enable=YES

anon_upload_enable=YES

anon_other_write_enable=YES

local_root=/u01/ftpb/upload/



#只有上传/修改权限

anon_world_readable_only=NO

write_enable=YES

anon_mkdir_write_enable=YES

anon_upload_enable=YES

local_root=/u01/ftpb/upload/



#只有下载权限

anon_world_readable_only=NO

local_root=/u01/ftpb/upload/

 

如果出现500无法显示列表的错误,主要是iptables设置的问题,请查看相关文章 http://www.cnblogs.com/kreo/p/4368811.html

你可能感兴趣的:(vsftpd)