Heim >Datenbank >MySQL-Tutorial >使用MySQL认证ProFTPD用户_MySQL

使用MySQL认证ProFTPD用户_MySQL

WBOY
WBOYOriginal
2016-06-01 14:11:531588Durchsuche

  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
  测试
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn