vsftpd 虚拟用户配置
时间:2008-09-18
来源:互联网
作者 wkf qq:23989219 [email protected]
实现要求:
FTP服务,添加两个虚拟用户upsir和downsir,主目录为“/ftpsite/”,upload只可以上传,不可以下载文件;download只可以下载,不可以上传文件;服务器最大并发连接200个,每IP限2个连接,限速100KB。
1. 查看环境,是否支持db4和安装有vsftpd
结果如下,支持
=700) window.open('http://linux.chinaunix.net/bbs/attachments/month_0712/20071224_b237136ec4d764a9adaaRoWI7av9z6tk.jpg');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >=700) window.open('http://linux.chinaunix.net/bbs/images/default/attachimg.gif');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >
2. 生成虚拟用户username/password database
=700) window.open('http://linux.chinaunix.net/bbs/attachments/month_0712/20071224_bdbc2d0c2121ed4c3422EsGF6bjsZvWG.jpg');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >=700) window.open('http://linux.chinaunix.net/bbs/images/default/attachimg.gif');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >
注意:上面文件ftpusers.txt单行是:用户名;双行是密码
vsftpd_login.db只让root用户可读可写
3.生成跟虚拟用户database相关联的PAM文件
=700) window.open('http://linux.chinaunix.net/bbs/attachments/month_0712/20071224_85932497181d535f91180X3bZXPp3iXP.jpg');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >=700) window.open('http://linux.chinaunix.net/bbs/images/default/attachimg.gif');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >
注意:vsftpd_login没有.db
4.建立虚拟用户所映射的系统帐户,定位虚拟用户所在的目录
=700) window.open('http://linux.chinaunix.net/bbs/attachments/month_0712/20071224_8224a200c3b9f7cbf62ddjrdl7isOIps.jpg');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >=700) window.open('http://linux.chinaunix.net/bbs/images/default/attachimg.gif');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >
5.修改配置文件
1)主配置文件vftpd.conf
全局中权限越低,后面的虚拟用户的权限越能够控制的详细,在配置时候去掉里面的注释
=700) window.open('http://linux.chinaunix.net/bbs/attachments/month_0712/20071224_006e2bc1633f767c9743Tf79vruHC2dY.jpg');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >=700) window.open('http://linux.chinaunix.net/bbs/images/default/attachimg.gif');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >
下面是vsftpd.conf的配置文件内容解释:
anonymous_enable=NO
local_enable=YES
出于安全的角度禁用了匿名(anonymous)用户,启用非匿名用户—就是我们刚才我们创建的虚拟用户“virtual“
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
这些是出于安全的目的,写命令全部被禁用了
chroot_local_user=YES
这个是确信能将虚拟用户限制在我们上述的/home/ftpsite目录中
guest_enable=YES
guest_username=virtual
这个guest_enable是非常重要的—它用来激活虚拟用户! guest_username 是将所有虚拟用户映射成我们先前设置的真实用户"virtual"。这也决定了虚拟用户在文件系统中的位置,也就是"virtual"的主目录 /home/ftpsite。
listen=YES
这个将vsftpd 设置成独立模式( "standalone" mode)也就是不通过 inetd或者xinetd来运行。这意味着你直接运行vsftpd的可执行命令就可以启动它了。
tcp_wrappers=YES
支持tcp_wrappers,限制访问(/etc/hosts.allow,/etc/hosts.deny)
user_config_dir=/etc/vsftpd/vsftpd_user_conf
启用per-user 配置,对不同的虚拟用户设置不同的权限
2)对不同的虚拟用户设置不同的权限
=700) window.open('http://linux.chinaunix.net/bbs/attachments/month_0712/20071224_30a1e10401931374004cVQDRg96laoYj.jpg');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >=700) window.open('http://linux.chinaunix.net/bbs/images/default/attachimg.gif');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >
6.启动vsftpd
service vsftpd start
chkconfig vsftpd on
开机启动
Notes:
(1) 每次添加完新用户後,就必须执行如下命令,重新Hash用户名文件才能起作用
#db_load -T -t hash -f
(2) 更改一个或多个用户的权限和密码不需要执行任何命令
(3)行的值都不要有空格,否则登录时会出现错误,举个例子,假如我在write_enable=YES后多了个空格,那我登录时就出现如下错误:
500 OOPS: bad bool value in config file for: write_enable
=700) window.open('http://linux.chinaunix.net/bbs/attachments/month_0712/20071224_c6293a77edd1203338f2leFIM5aRxY0D.jpg');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >=700) window.open('http://linux.chinaunix.net/bbs/images/default/attachimg.gif');" onload="if(this.offsetWidth>'700')this.width='700';if(this.offsetHeight>'700')this.height='700';" >
作者: AlexGuo 发布时间: 2008-09-18
作者: uranas 发布时间: 2008-09-18
作者: 77522 发布时间: 2008-09-18
作者: 中国退学网 发布时间: 2008-09-18
确实如此,我就因为这个问题恼火了半天啊,查这种错误真是要命
作者: justinwei 发布时间: 2008-09-18
作者: 天使社区 发布时间: 2008-09-18
作者: sfcq 发布时间: 2008-09-18
如何架设基于架设基于Fedora的openmosix集群
Web集群服务的负载均衡方案选择
如何建造Open WebMail伺服器(图文讲解)
....
作者: zd052 发布时间: 2008-09-18
作者: 58008839 发布时间: 2008-09-18
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28