Vsftpd完全攻略(六)建立多个虚拟用户支持ftp不同访问权限【2】

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

 
提示每行的值都不要有空格,否则启动时会出现错误,举个例子,假如我在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配置文件加入以下两个参数

 
激活匿名用户所上传文件的修改所有权
拥有匿名用户上传文件所有权的用户
 
然后就可以直接拷贝文件到public目录下

 


    本文转自viong 51CTO博客,原文链接:http://blog.51cto.com/viong/261415,如需转载请自行联系原作者




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值