热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

安装vsFTPd并配置虚拟用户

1.安装vsftpd运行yuminstallvsftpd.默认rpm方式安装..2.修改vsftpd.cnf配置文件(/etc/vsftpd目录下)查找anonymous_enableYES修改为anonymous_enableNOanon_upload_enableYES修改为anon_upload_enableNO

1.  安装 vsftpd    运行  yum install vsftpd  . 默认rpm 方式安装..

2.   修改 vsftpd.cnf  配置文件 ( /etc/vsftpd 目录下)  

 查找  anonymous_enable=YES    修改为  anonymous_enable=NO 

            anon_upload_enable=YES  修改为 anon_upload_enable=NO     此选项一般被 # 注释

            anon_mkdir_write_enable=YES 修改为 anon_mkdir_write_enable=NO   此选项一般被 # 注释

 

在文件最后添加下面 几项:

guest_enable=YES
guest_username=noah  (noah 虚拟用户登录,下面会创建)
user_config_dir=/etc/vsftpd/conf   ( 虚拟用户的配置文件路径)
chroot_local_user=YES                        
#virtual_use_local_privs=YES
user_sub_token=$USER
port_promiscuous=YES   (是否检测用户端口,可以实现站站对传)

 

3.  创建虚拟用户列表文件。  名字随便起 ,这里我用 userlist   内容为 :

jicki            //用户名

123456     //密码

user           //用户名

12345       //密码

 

4. 将 虚拟用户列表文件userlist 转换成 数据文件  (由于虚拟用户登录时不是直接使用的文本文件,而是使用数据文件。)

将 文本文件 转换成 数据文件 需要安装 db4-utils 这个软件  运行 yum install db4-utils  进行安装就可以了。

运行   db_load -T -t hash -f userlist  userlist.db     就会生成  userlist.db 这个文件。

 

 

5. 在 /etc/vsftpd 目录下 创建 conf 文件夹( mkdir conf  用于存放虚拟用户的配置文件。

在conf 文件夹下创建 用户配置文件 ( vi jicki ) 内容如下:

local_root=/home/jicki   (虚拟用户的文件目录)
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES


 


6. 进入 home 目录 创建 jicki 文件夹 (mkdir jicki)     然后创建noah 虚拟用户。

运行   useradd -d /home/jicki noah                        参数-d 用于指定用户目录。

 然后再修改 jicki  目录的拥有者和拥有组 

运行   chown noah. jicki            将 jicki 文件夹 的拥有者 和 拥有组 都改成 noah。

使用 ls -lt  可查看。    drwxr-xr-x 2 noah noah 4096 08-31 13:39 jicki 

 

7. 最后我们还要修改 /etc/pam.d/vsftpd  文件。  

清空里面配置 只留下面两句

auth required pam_userdb.so db=/etc/vsftpd/userlist
account required pam_userdb.so db=/etc/vsftpd/userlist

然后重启 vsftpd   。  运行  service vftpd restart

 

然后我们测试一下 是否可以连接  运行 

lftp jicki@localhost     输入密码       进去以后  查看文件夹下面的文件。

--------------------------------------------------------------------------------------------------

错误问题分析

1: Login failed: 500 OOPS: cannot change directory  错误

这个错误是因为 SElinux 的问题...

setsebool ftpd_disable_trans 1

service vsftpd restart   

可以解决问题.........


推荐阅读
author-avatar
Sunlight丶丶丶
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有