需求:
可上传、可下载帐号,分别开辟独立的目录:
用户名 密码
mtk 123456
huawei 123456
可上传,不可修改已存在文件的账户,访问目录同mtk:
zhongxing 123456
以上账户不能切换到上层其它任何目录,只能在账户根目录及其子目录之间切换
1.建立每个帐号所依赖的组(即每个虚拟ftp帐号所依赖的系统用户)
由于所有的vsftpd虚拟用户均依赖于系统上的实际存在用户,因此,建立四个用户组(vsftpd;vsftpd,vsftpd_software:vsftpd_software,vsftpd_ic:vsftpd_ic,vsftpd_tv:vsftpd_tv)分别表示未分组用户组(合作公司隶属的组,例如,windriver),软件组,硬件组,整机组。其中,冒号前面表示linux上的系统用户名,冒号后面表示所属用户组。四个用户组均设置为进制系统登录。
相关命令如下:
useradd vsftpd_sw -s /sbin/nologin //新建用户
chown -R vsftpd_sw:vsftpd_sw soft //更改文件夹归属
chmod -R 750 soft //更改文件夹权限
其它三个用户组类似;
每个虚拟ftp帐号所依赖的账户在针对具体用户单独配置文件(所在目录,/etc/vsftpd/vsftpd_vuser_conf)的
guest_username=vsftpd一行指定,从而决定这个ftp帐号的权限;
2.文件夹权限设置
文件夹 | 所有者 | 所属组 | 权限 |
tools | root | root | 755 |
upload | root | root | 777 |
软件相关 | vsftpd_sw | vsftpd_sw | 750 |
硬件相关 | vsftpd_ic | vsftpd_ic | 750 |
整机相关 | vsftpd_zj | vsftpd_zj | 750 |
合作公司 | vsftpd | vsftpd | 750 |
更改后的参考如下:
备注:
ftp显示文件夹中的文件列表时使用的是x权限,注意打开对应的x权限;
以后新添加到ftp服务器中的文件要按照所属目录的权限设置;
3.单用户配置
mtk,huawei:
virtual_use_local_privs=NO
local_root=/opt/ftproot/***DTV/mtk(或huawei)
anonymous_enable=NO
write_enable=YES
local_umask=002
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=NO
anon_world_readable_only=NO
download_enable=YES
idle_session_timeout=300
data_connection_timeout=90
max_clients=1
max_per_ip=1
local_max_rate=100000000
pam_service_name=vsftpd.vu
chroot_local_user=YES
guest_username=vsfptd
zhongxing:
virtual_use_local_privs=NO
local_root=/opt/ftproot/***DTV/mtk
anonymous_enable=NO
write_enable=YES
local_umask=002
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=NO
anon_world_readable_only=NO
download_enable=YES
idle_session_timeout=300
data_connection_timeout=90
max_clients=1
max_per_ip=1
local_max_rate=100000000
pam_service_name=vsftpd.vu
chroot_local_user=YES
guest_username=vsftpd
4.管理员操作
4.1添加用户并设置密码
在/opt/svnroot/svnpasswd下添加新的用户名和要设置的密码,登录到服务器,输入以下命令:
htpasswd /opt/svnroot/svnpasswd lzh,然后输入两次密码就好
注意,svn已经有的用户,不需要再添加,在/etc/vsftpd/vsftpd_vuser_conf/下新建与用户名同名的权限文件,参考已有用户配置;
4.2 查看已有组
cat /etc/passwd
cat /etc/group
4.3查看已有帐号
/etc/vsftpd/vsftpd_vuser_conf/
4.4添加组
useradd *** -s /sbin/nologin
在/etc/vsftpd/vsftpd_vuser_conf/内添加新文件,如zhang3,其中公司内员工隶属于组vsftpd_sw、vsftpd_ic、vsftpd_zj之一,合作公司隶属于vsftpd组//添加新帐号
注意:用脚本添加合作公司后生成其默认的密码,要到网页上手动将其改成要求的密码;