科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道使用MySQL认证ProFTPD用户

使用MySQL认证ProFTPD用户

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文将为大家介绍如何使用MySQL认证ProFTPD用户。

来源:中国IT实验室 2008年5月19日

关键字: 技巧 数据库 MySQL

  • 评论
  • 分享微博
  • 分享邮件
1. apt-get update //更新数据库
  2. apt-get mysql-client mysql-server //安装MySQL
  3. apt-get proftpd-mysql //安装支持MySQL的ProFTPD
  4. mysql -uroot -p //用Root登录MySQL,
  
  create database ftpdb //建ftpdb 数据库
  
  grant select, update on ftpdb.* to proftpd@"%" identified by 'password' //新增一个用户,用于存取ftpdb 数据库,用户名 proftpd,密码 password
  
  use ftpdb //对 ftpdb 库操作
  
  #ftpgroup的表结构
  CREATE TABLE `ftpgroup` (
  `groupname` varchar(16) NOT NULL default '',
  `gid` smallint(6) NOT NULL default '5500',
  `members` varchar(16) NOT NULL default '',
  KEY `groupname` (`groupname`)
  ) TYPE=MyISAM;
  
  #插入一条记录
  INSERT INTO `ftpgroup` VALUES ('ftpgroup', 5500, 'ftpuser');
  
  #ftpuser的表结构
  CREATE TABLE `ftpuser` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `userid` varchar(32) NOT NULL default '',
  `passwd` varchar(32) NOT NULL default '',
  `uid` smallint(6) NOT NULL default '5500',
  `gid` smallint(6) NOT NULL default '5500',
  `homedir` varchar(255) NOT NULL default '',
  `shell` varchar(16) NOT NULL default '/sbin/nologin',
  `count` int(11) NOT NULL default '0',
  `accessed` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  PRIMARY KEY (`id`)
  ) TYPE=MyISAM ;
  
  #插入一条记录
  INSERT INTO ftpuser (userid, passwd, uid, gid, homedir, shell) VALUES
  ('ftpuser', 'ftppasswd', 5501, 5500, '/tony','/sbin/nologin'); //目录/tony应该存在
  
  5.修改/etc/proftpd.conf
  加入以下内容:
  ########################################
  DefaultRoot ~
  SQLAuthTypes Plaintext Crypt
  SQLAuthenticate users* groups*
  SQLConnectInfo ftpdb@localhost proftpd password
  SQLUserInfo ftpuser userid passwd uid gid homedir shell
  SQLGroupInfo ftpgroup groupname gid members
  SQLMinID 500
  SQLHomedirOnDemand on
  SQLLog PASS updatecount
  SQLNamedQuery updatecount UPDATE "count=count+1, accessed=now() WHERE userid='%u'" ftpuser
  SQLLog STOR,DELE modified
  SQLNamedQuery modified UPDATE "modified=now() WHERE userid='%u'" ftpuser
  DeferWelcome on
  RootLogin off
  RequireValidShell off
  ########################################
  
  6. /etc/init.d/proftpd stop
  /etc/init.d/proftpd start //使用/etc/init.d/proftpd restart 似乎不能达到预期的效果
  
  7.使用
  用户名:ftpuser
  密码:ftppasswd
  测试
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章