博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vsftp虚拟用户配置
阅读量:7097 次
发布时间:2019-06-28

本文共 5071 字,大约阅读时间需要 16 分钟。

 

1、配置用户密码cd /etc/vsftpd/vi vftpuser.txtx(奇数行为用户名 ,偶数行为密码)db_load -T -t hash -f /etc/vsftpd/vftpuser.txtx /etc/vsftpd/vftpuser.db 2、配置用户目录cd /etc/vsftpd/vuser_confvi 用户名local_root=/ftp_data/ftp_dir/用户名write_enable=YESdownload_enable=YESanon_world_readable_only=NOanon_upload_enable=NOanon_mkdir_write_enable=NOanon_other_write_enable=NOlocal_umask=022保存并退出 3、配置用户权限 cd /ftp_data/ftp_dirmkdir 用户名chown ftpuser:ftp 用户名 4、重启 service vsftpd restart

 

 

1. 查看是否安装vsftp

rpm –qa|grep vsftpd
如果出现     vsftpd-2.0.5-16.el5_5.1  说明已经安装 vsftp
安装vsftp
yum -y install vsftpd
2. 测试是否安装成功(匿名登录 user: anonymous 密码为空 如果成功登录会有下面内容  这说明vsftpd安装成功)如果没有ftp命令,请运行yum install -y ftp
[root@localhost ~]#service vsftpd start
为 vsftpd 启动 vsftpd:[确定]
[root@localhost ~]#ftp 127.0.0.1
Connected to127.0.0.1.
220 (vsFTPd 2.0.5)
530 Please loginwith USER and PASS.
530 Please loginwith USER and PASS.
KERBEROS_V4 rejectedas an authentication type
Name(127.0.0.1:root): anonymous
331 Please specifythe password.
Password:
230 Loginsuccessful.
Remote system typeis UNIX.
Using binary mode totransfer files.
ftp> bye
221 Goodbye.
[root@localhost ~]#
 
3. 修改配置文件/etc/vsftpd/vsftpd.conf
[root@localhost ~]#vi /etc/vsftpd/vsftpd.conf
取消下面内容前面的注释或添加
anonymous_enable=YES/NO  是否允许匿名用户访问
chroot_list_enable=YES   限定用户不可以离开主目录
chroot_list_file=/etc/vsftpd/chroot_list 
loca_enable=YES/NO 本地用户是否可以访问 注:如果为NO 则所有虚拟用户都将不能访问原因:虚拟用户访问在主机上其实是以本地用户访问的
pam_service_name=vsftpd  pam认证文件名在/etc/pam.d/vsftpd
guest_enable=YES    启用虚拟用户功能
guest_username=ftp  指定虚拟用户的宿主用户 –centos 里面已经有内置的ftp用户了(注:此用户在chroot_list_file=/etc/vsftpd/chroot_list文件里所指定的用户)
user_config_dir=/etc/vsftpd/vuser_conf 设置虚拟用户个人vsftp的服务配置文件
(此文件后面不能出现空格)
 
4. 查看是否安装 db4 db4-utils
[root@localhost ~]#rpm -qa|grep db4  运行后出现下面内容 说明已经安装可以使用db_load命令(主要是 db4-utils)
db4-devel-4.3.29-10.el5_5.2
db4-4.3.29-10.el5_5.2
db4-devel-4.3.29-10.el5_5.2
db4-4.3.29-10.el5_5.2
db4-tcl-4.3.29-10.el5_5.2
db4-utils-4.3.29-10.el5_5.2
[root@localhost ~]#
如果没安装则要安装db4-utils
4.1安装db4-utils
[root@localhost ~]#yum -y install db4-utils
5. 创建 chroot_list_file=/etc/vsftpd/chroot_list文件
[root@localhost ~]#vi /etc/vsftpd/chroot_list (编辑文件把 /etc/vsftpd/vsftpd.conf 中guest_username的值写到文件中本例中为 ftp)
 或者直接按下面进行操作
[root@localhost ~]#touch /etc/vsftpd/chroot_list
[root@localhost ~]# echoftp >> /etc/vsftpd/chroot_list  (此处ftp 也要是/etc/vsftpd/vsftpd.conf中的guest_username的值)
6. 创建虚拟用户目录(密码文本)
[root@localhost ~]#vi /etc/vsftpd/vftpuser.txtx (奇数行为用户名 ,偶数行为密码)
本文中添加如下(用cat 命令查看)
[root@localhost ~]#cat /etc/vsftpd/vftpuser.txtx
hope
hope
aa
zzzzz
[root@localhost ~]#
7.生成虚拟用户的db文件
[root@localhost ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txtx /etc/vsftpd/vftpuser.db
 
8. 生成虚拟用户的认证文件
[root@localhostvsftpd]# vi /etc/pam.d/vsftpd
#%PAM-1.0
session    optional    pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=denyfile=/etc/vsftpd/ftpusers onerr=succeed
auth       required     pam_shells.so
auth       include      system-auth
account    include     system-auth
session    include     system-auth
session    required    pam_loginuid.so
 
注释掉/etc/pam.d/vsftpd中所有的内容 反正已经不要本地用户的认证了
特别注意 以下区别
32位系统增加以下两句:
auth      required     pam_userdb.so db=/etc/vsftpd/vftpuser
account   required     pam_userdb.so db=/etc/vsftpd/vftpuser
64位系统增加以下两句:
auth   required    /lib64/security/pam_userdb.so   db=/etc/vsftpd/vftpuser
account required    /lib64/security/pam_userdb.so  db=/etc/vsftpd/vftpuser
 
注:db=/etc/vsftpd/vftpuser 中的vftpuser 是你生成的虚拟用户的db文件
 
9. 创建每个虚拟用户自己的配置文件,配置文件的路径是/etc/vsftpd/vsftpd.conf中的
user_config_dir=/etc/vsftpd/vuser_conf路径
在 /etc/vsftpd/vuser_conf/下面创建以用户名为名称的文件(名称是/etc/vsftpd/vftpuser.txtx 下面的奇数行)
 
[root@localhostvsftpd]# cat /etc/vsftpd/vftpuser.txtx
hope
hope
aa
zzzzz
[root@localhostvsftpd]# mkdir vuser_conf
[root@localhostvsftpd]# vi /etc/vsftpd/vuser_conf/hope
 
内容如下
local_root=/var/www(虚拟用户的根目录根据实际修改)
write_enable=YES (可写)
download_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=022
 
10. 给文夹权限(否则不能上传 权限可自定 本人给的是 777)
[root@localhostvsftpd]# chmod 777 /var/www/
11. 重启vsftpd
[root@localhostvsftpd]# service vsftpd restart
到此安装配置完成 如果出现连接被 同位体重置 或其它错误 请查看SELinux的当前模式
 
 
12. 登录测试
[root@localhost vsftpd]# ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as anauthentication type
Name (127.0.0.1:root): hope
331 Please specify the password.
Password:
500 OOPS: cannot changedirectory:/var/www
Login failed.
ftp>
 
查看方法
[root@localhost vsftpd]# getenforce
Enforcing   如果出现(Enforcing )
关闭方法:[root@localhost vsftpd]#setenforce 0(0|1  开|关)
 
再次测试 登录成功
[root@localhost vsftpd]# chmod 777/var/www/
[root@localhost vsftpd]# ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as anauthentication type
Name (192.168.1.107:root): hope
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
 
查看系统是多少位的命令
[root@bogon ~]# getconf LONG_BIT
64 (64|32)

 

 

 
 

转载于:https://www.cnblogs.com/linn/p/4572248.html

你可能感兴趣的文章
Valgrind内存泄露检测工具使用初步
查看>>
PDF 补丁丁 0.5.0.2657 发布
查看>>
vue之axios使用
查看>>
VBA批量删除excel表高级版
查看>>
docker & nodejs & mongodb
查看>>
css 清除浮动
查看>>
Python_Selenium学习笔记(2)-浏览器操作方法
查看>>
excel自定义函数添加和使用方法
查看>>
C# 压缩组件介绍与入门
查看>>
结对学习心得感想及创意照
查看>>
sug
查看>>
windows 环境变量
查看>>
input checked取值
查看>>
快速幂取模(当数很大时,相乘long long也会超出的解决办法)
查看>>
EF+Code First+Database First+Model First,EF开发流程
查看>>
HttpWebRequest的常见错误使用TcpClient可避免
查看>>
报表技术
查看>>
java基础---多线程---volatile详解
查看>>
eclipse中tomcat启动成功,浏览器访问失败
查看>>
中文乱码(Python、WEB、ajax)
查看>>