支持HW团队,就支付宝领取下面的红包吧!(2018年3月31前,就几毛,也会几块,可以和其他红包叠加使用),你领取消费,HW有奖励。红包使用无条件限制,有条件请注意是不是有病毒。

小伙伴们,给大家发红包喽!人人可领,领完就能用。祝大家领取的红包金额大大大!#吱口令#长按复制此消息,打开支付宝就能领取!er1OEj73Uj

登入 注册 | 验证
| 搜索
HelloWorld论坛 : > 计算机科学、技术、教学> 电脑应用> linux系统> [转]Vsftpd完全攻略(六)建立多个虚拟用户支持ftp不同访问权限【2】
 
 
 
 
类别:其他 阅读:5972 评论:0 时间:三月 13, 2012, 11:36 a.m. 关键字:

 

来源:http://viong.blog.51cto.com/844766/261291

 注意:主配置文件是虚拟账号共享的配置,所以主配置文件的设置对于虚拟账号是生效的

 

提示每行的值都不要有空格,否则启动时会出现错误,举个例子,假如我在listen=YES后多了个空格,那我启动时就出现如下错误:500 OOPS: bad bool value in config file for: listen 

2)建立虚拟帐号配置文件


user_config_dir指定路径下,建立与虚拟帐号同名的配置文件并添加相应的配置字段
[root@red-hat-5 vsftpd]# mkdir /vsftpd_login
[root@red-hat-5 vsftpd]# touch /etc/vsftpd/vsftpd_login/public
[root@red-hat-5 vsftpd]# touch /etc/vsftpd//vsftpd_login/personal

首先建立普通帐号public的配置文件
 
[root@red-hat-5 vsftpd_login]# echo guest_enable=yes >>public
[root@red-hat-5 vsftpd_login]# echo guest_username=ftp_public >>public
[root@red-hat-5 vsftpd_login]# echo anon_world_readable_only=no >>public
[root@red-hat-5 vsftpd_login]# echo anon_max_rate=50000 >>public
[root@red-hat-5 vsftpd_login]# cat public
guest_enable=yes              
开启虚拟帐号登录
guest_username=ftp_public     
设置ftp对应的系统帐号为ftp_public
anon_world_readable_only=no  
不允许匿名用户浏览器整个服务器的文件系统
anon_max_rate=50000    
限定传输速率为50KB/s
 
注意

vsftpd
对于文件传输速度限制并不是绝对锁定在一个数值上哈,而是在80%~120%之间变化哈~比如设置100KB/s则实际是速度在80KB/s~120KB/s之间变化哈~
 
接着建立专用帐号的配置文件personal
 
[root@red-hat-5 vsftpd_login]# echo guest_enable=yes >> personal
[root@red-hat-5 vsftpd_login]# echo guest_username=ftp_personal >> personal
[root@red-hat-5 vsftpd_login]# echo anon_world_readable_only=no >> personal
[root@red-hat-5 vsftpd_login]# echo anon_mkdir_write_enable=yes >> personal
[root@red-hat-5 vsftpd_login]# echo anon_upload_enable=yes >> personal
[root@red-hat-5 vsftpd_login]# echo anon_max_rate=50000 >> personal
[root@red-hat-5 vsftpd_login]# cat personal
guest_enable=yes
          
开启虚拟帐号登录 
guest_username=ftp_ personal
设置ftp对应的系统帐号为ftp_personal
anon_other_write_enable=YES: 
允许匿名账号具有删除.更名权限
anon_mkdir_write_enable=yes
允许创建文件夹
anon_upload_enable=yes    
启匿名帐号的上传功能
anon_world_readable_only=no:
不允许匿名用户浏览整个服务器的文件系统
anon_max_rate=100000    
限定传输速度为100KB/s
[root@red-hat-5 ~]# service vsftpd restart
关闭vsftpd                                             [确定]
vsftpd启动vsftpd                                     [确定]
 
如果还是连不上,建议重新启动一下系统

5.测试权限是否生效

[root@red-hat-5 viong]# 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 an authentication type
Name (127.0.0.1:root): public
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> put hong.txt
550 Permission denied
ftp> del viong.txt
550 Permission denied.
ftp> mkdir hong
550 Permission denied.
ftp> mget viong.txt
mget viong.txt?
227 Entering Passive Mode (127,0,0,1,181,255)
150 Opening BINARY mode data connection for viong.txt (0 bytes).
226 File send OK.
 
通过测试得知public这个用户只支持下载权限,说明设置成功
 
C:\Users\Administrator>ftp 192.168.184.129
连接到 192.168.184.129
220 (vsFTPd 2.0.5)
用户(192.168.184.129:(none)): personal
331 Please specify the password.
密码:
230 Login successful.
ftp> mput hong.txt
mput hong.txt?
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 File receive OK.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
hong.txt
viong.txt
226 Directory send OK.
ftp: 收到 99 字节,用时 0.00 33.00千字节/秒。
ftp> mkdir viong
257 "/viong" created
ftp> get MAK密钥激活次数查看器.rar
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for MAK密钥激活次数查看器.rar (2000998 bytes).
226 File send OK.
ftp: 收到 2000998 字节,用时 38.71 51.69千字节/秒。
ftp> delete MAK密钥激活次数查看器.rar
250 Delete operation successful.
ftp> rename hong.txt viong.txt
350 Ready for RNTO.
250 Rename successful.
 
通过测试得知personal这个用户支持上传.下载.删除.更改权限,说明设置成功
 
关于把上传数据发布到普通虚拟用户家目录下提供下载!
 
[root@red-hat-5 ~]# cp /var/ftp/personal/* /var/ftp/public/
把上传数据发布到普通虚拟用户家目录下提供下载
[root@red-hat-5 ~]# chown -R ftp_public.ftp_public /var/ftp/public/  
更改public目录的所有者和属组为ftp_public,这样public用户才能下载
 
还有一种方法就是在personal配置文件加入以下两个参数
 
chown_uploads=YES 激活匿名用户所上传文件的修改所有权
chown_username=root 拥有匿名用户上传文件所有权的用户
 
然后就可以直接拷贝文件到public目录下
 
[挂载人]初学MPEG [审核人]初学MPEG 推荐

个人签名--------------------------------------------------------------------------------

Please Login (or Sign Up) to leave a comment