Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网站建设 > 服务器相关 > 用Mysql库存储用户名及密码的方式搭建虚拟用户的vsftpd服务器
【标  题】:用Mysql库存储用户名及密码的方式搭建虚拟用户的vsftpd服务器
【关键字】:Mysql,vsftpd
【来  源】:http://www.cublog.cn/u/13212/showart.php?id=84575

用Mysql库存储用户名及密码的方式搭建虚拟用户的vsftpd服务器

Your Ad Here
用Mysql库存储用户名及密码的方式搭建虚拟用户的vsftpd
(1)建立一个库并设置相应权限
mysql –p
mysql>create database ftpd;
mysql>use ftpd;
mysql>create table user(name char(20) binary,passwd char(20) binary);
mysql>insert into user (name,passwd) values ('test1','12345');
mysql>insert into user (name,passwd) values ('test2','54321');
mysql>grant select on ftpd.user to ftpd@localhost identified by '123456';
              //授权ftpd用户可以读ftpd数据库的users表
mysql>flush privileges;
mysql>quit
(2)下载libpam-mysql进行安装编译
下载地址如下:
http://nchc.dl.sourceforge.net/sourceforge/pam-mysql/pam_mysql-0.5.tar.gz
# tar xzvf pam_mysql-0.5.tar.gz
# cd pam_mysql 
# make 
# cp pam_mysql.so /lib/security
(3)建立PAM认证信息
# vi /etc/pam.d/vsftpd ,添加如下内容(把以前的注销掉)
auth required /lib/security/pam_mysql.so user=ftpd passwd=123456 host=localhost db=ftpd table=user usercolumn=name passwdcolumn=passwd crypt=0
account required /lib/security/pam_mysql.so user=ftpd passwd=123456 host=localhost db=ftpd table=user usercolumn=name passwdcolumn=passwd crypt=0
           //crypt表示口令字段中口令的加密方式:crypt=0,口令以明文方式(不加密)保存在数据库中;crypt=1,口令使用UNIX系统的DES加密方式加密后保存在数据库中;crypt=2,口令经过MySQL的password()函数加密后保存。 
(4)建立本地虚拟用户
# useradd -d /home/ftpd -s /sbin/nologin ftpd
(5)下面就差修改vsftpd.conf文件了(尽量把匿名相关的关掉)
# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=NO
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
anon_world_readable_only=NO
chroot_local_user=YES
guest_enable=YES
guest_username=ftpd
listen=YES
listen_port=21
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30999
virtual_use_local_privs=YES (注意这个参数)
----------------------------------------------------
virtual_use_local_privs参数:
1.当该参数激活(YES)时,虚拟用户使用与本地用户相同的权限。只需设置write_enable=YES,虚拟用户就可以就拥有写权限。
2.当此参数关闭(NO)时,虚拟用户使用与匿名用户相同的权限。
给不同的虚拟用户不同的权限
 #mkdir /etc/vsftpd/vsftpd_user_conf
 #vi /etc/vsftpd/vsftpd.conf
确保以上的配置后,再作如下修改
virtual_use_local_privs=NO //以便后面为不同的虚拟用户规定不同的权限
user_config_dir=/etc/vsftpd/vsftpd_user_conf //在该目录中创建各个虚拟用户的配置文件,test1,test2等;
+++++++++++++++++++++++++++++++++++++
test1用户
具有浏览目录,下载上传权限
vi /etc/vsftpd/vsftpd_user_conf/test1
  内容如下
      anon_world_readable_only=NO
      write_enable=YES
      anon_upload_enable=YES
+++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++
test2用户
具有浏览目录,下载、上传、文件改名、删除权限
vi /etc/vsftpd/vsftpd_user_conf/test2  内容如下
      anon_world_readable_only=NO
      write_enable=YES
      anon_upload_enable=YES
      anon_other_write_enable=YES
      anon_mkdir_write_enable=YES(加上这句就会具有创建目录的权限了)
+++++++++++++++++++++++++++++++++++++++

就这样,一个虚拟用户的ftp服务器就建成了。欢呼一下。
保护 FTP 的安全:【上一篇】
对于用DB库存储用户名及密码的方式搭建虚拟用户vsftpd服务器:【下一篇】
【相关文章】
  • vsFTPd 服务器指南 (转)
  • ProFTPD 支持MySQL数据库添加虚拟用户认证及Quotas(磁盘限额)
  • [转贴]VsFTPd 最新(v2.0.4)FAQ翻译
  • Postfix: header/body checks using MySQL
  • Postfix: header/body_checks using MySQL
  • postfix+mysql+apache+cyrus-sasl2+courier-imap安装
  • 续postfix+mysql,添加病毒和垃圾邮件扫描功能,Clamav+SpamAssassin
  • sarge+postfix+mysql+webmail+web admin安装配置指南
  • Postfix + PostfixAdmin + MySQL + Cyrus-sasl + ...
  • Redhat9.0+Qmail+smtp-auth+Vpopmail+MySQL+Igenus
  • 【随机文章】
  • 万一我真的被拍到了
  • linux下网卡配置文件
  • 转贴大量c面试题目
  • ASP还是有其局限性
  • OSDL和Linux桌面:前面的道路
  • [Plugin]·Eclipse中的Resource - 2
  • Painter 6 绘画实例
  • 天堂2 20以后的席林
  • 心得分享
  • .NET也有ORM--Grove一览
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.