红联Linux门户
Linux帮助

CentOS vsftpd 虚拟用户详解

发布时间:2011-06-29 20:30:25来源:红联作者:天真花语
今天由于需求搭建了ftp服务,这里需要注意的是centOS和linux下的redhat 是有不同之处的,亲身做过、研究过,把一些学习之处说一说,如有错误,请大家指教;
首先,搭建vsftpd 服务:安装包即可
rpm -ivh /var/ftp/CentOS/vsftpd-2.0.5-12.el5.x86_64.rpm (包的默认路径是在/media/cdrom/CentOS/ 下),安装即可
因为是建虚拟用户,直接就奔主题去了。。呵呵
1.先vi 一个文本文档,奇数行是用户名,偶数行是密码,这点大家切记
文档名字任意起,我这边写成了lonin.txt ,lonin里面写的就是咱们虚拟账户的名字和密码。,
frank
coolbar1!.0
sanguo
sanguo
2.虚拟用户需要一个数据库的转换,依赖于包db4,db4-utils,db4-devel
db4-devel-4.3.29-9.fc6
db4-4.3.29-9.fc6
db4-utils-4.3.29-9.fc6
3.将咱们建的文档转变成数据库的形式。,,这一点很重要
db_load -T -t hash -f lonin.txt /etc/vsftpd/vsftpd_login.db
chmod 700 /etc/vsftpd/vsftpd_login.db 这样做事禁止其他用户查看数据库里面的用户,安全性很重要
4.添加pam认证。需要安装包
pam-devel-0.99.6.2-4.el5
pam-0.99.6.2-4.el5
pam_pkcs11-0.5.3-23
同时也要编辑/etc/pam.d/vsftpd
[root@localhost ~]# cat /etc/pam.d/vsftpd
#%PAM-1.0
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
这两行放在文件头部,而且参数与linux redhat是不同的,
此后,要建立虚拟账号,useradd -d /home/ftpsite/ vritual
这时需要注意的是,此时你的虚拟账号上传的目录必须在home/ftpsite下。否侧会提示你密码不正确或者是500OPS错误
这样就ok了。。。下面要做的就是对vsftpd.conf的编辑了
对于文件的编辑,我就不在这解释原因了。。


anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
ascii_upload_enable=YES
ascii_download_enable=YES
listen=YES

guest_enable=YES
guest_username=virtual
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/user_conf
virtual_use_local_privs=YES

之后咱们要在/etc/vsftpd/user_conf 编辑虚拟账户的权限
那我的虚拟用户frank
local_root=/home/ftpsite/SanGuo
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
这样用frank用户登录即可
[root@localhost user_conf]# ftp 192.168.2.46
Connected to 192.168.2.46.
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 (192.168.2.46:root): frank
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.


这样就OK了、、、如果大家有什么疑问的,或者没有做出来效果的,可以加QQ群:140704742
谢谢
文章评论

共有 20 条评论

  1. gky2009514 于 2012-12-07 13:16:25发表:

    新手完成任务,求下书籍~

  2. guhaooo 于 2012-06-22 20:54:34发表:

    终于找到组织群了!!

  3. 于 2012-02-29 13:39:52发表:

    求详解

  4. fgf_dybj 于 2011-11-22 12:20:00发表:

    谢谢分享!!!!!
    甘心的稀里哗啦

  5. dingding1210 于 2011-10-19 11:03:11发表:

    谢谢拉,这几在摸索这块

  6. hooqee 于 2011-08-15 15:58:11发表:

    收下!

  7. wq413732076 于 2011-08-03 21:01:15发表:

    感谢楼主分享 我要学Linux

  8. 以平和心 于 2011-08-03 17:35:38发表:

    好贴

  9. qq9293000079 于 2011-07-26 08:18:27发表:

    学习下

  10. D调漫步 于 2011-07-25 18:09:31发表:

    楼主威武!!!!

  11. ayongw 于 2011-07-23 11:50:00发表:

    写的不错,

  12. wwei198602 于 2011-07-21 16:38:51发表:

    好东东 收下了

  13. zxfzxf1979 于 2011-07-18 10:24:26发表:

    收藏,学习

  14. 给力的一秒钟 于 2011-07-14 19:20:29发表:

    {:3_107:}

  15. ldr111 于 2011-07-06 20:39:37发表:

    ok,下了

  16. leijz 于 2011-07-06 10:32:01发表:

    尽管看不懂,还是要感谢................

  17. chkhd 于 2011-07-05 22:05:12发表:

    谢了 这是好东西

  18. chkhd 于 2011-07-05 22:04:01发表:

    谢了 这是好东西

  19. Growth兆 于 2011-06-30 09:22:28发表:

    感谢天真花语的分享,本贴加入到论坛顶置的Linux应用贴中

  20. Inwind 于 2011-06-29 21:09:54发表:

    先收下,感谢ing