ProFTPd服务安装设置

运维 系统运维
ProFTPd服务安装设置该如何进行呢?ProFTPd安装(Professional FTP daemon)是针对Wu-FTP的弱项而开发的。不仅具有安全性,而且还Wu-FTP没有的特点。比如,能以Stand-alone、xinetd模式运行。

  使用 Proftpd 有个好处,可以用其它方式认证,不用实体帐号登入,可以减少试帐号机会。

  这次利用mysql 数据库,

  环境:Ubuntu 6.06.1 LTS

  1. 安装 proftpd-mysql 套件

  sudo apt-get install proftpd-mysql

  2. 设定 mysql 帐号

  mysql -u root -p

  create database ftp;

  GRANT SELECT, INSERT, UPDATE, DELETE ON ftp.* TO ‘proftpd’@'localhost’ IDENTIFIED BY ‘password’;

  FLUSH PRIVILEGES;

  3. 建立mysql资料库

  1.   CREATE TABLE ftpgroup (  
  2.  
  3.   groupname varchar(16) NOT NULL default ”,  
  4.  
  5.   gid smallint(6) NOT NULL default ‘5500′,  
  6.  
  7.   members varchar(16) NOT NULL default ”,  
  8.  
  9.   KEY groupname (groupname)  
  10.  
  11.   TYPE=MyISAM COMMENT=’ProFTP group table’;  
  12.  
  13.   CREATE TABLE ftpuser (  
  14.  
  15.   id int(10) unsigned NOT NULL auto_increment,  
  16.  
  17.   userid varchar(32) NOT NULL default ”,  
  18.  
  19.   passwd varchar(32) NOT NULL default ”,  
  20.  
  21.   uid smallint(6) NOT NULL default ‘5500′,  
  22.  
  23.   gid smallint(6) NOT NULL default ‘5500′,  
  24.  
  25.   homedir varchar(255) NOT NULL default ”,  
  26.  
  27.   shell varchar(16) NOT NULL default ‘/sbin/nologin’,  
  28.  
  29.   count int(11) NOT NULL default ‘0′,  
  30.  
  31.   accessed datetime NOT NULL default ‘0000-00-00 00:00:00′,  
  32.  
  33.   modified datetime NOT NULL default ‘0000-00-00 00:00:00′,  
  34.  
  35.   PRIMARY KEY (id),  
  36.  
  37.   UNIQUE KEY userid (userid)  
  38.  
  39.   ) TYPE=MyISAM COMMENT=’ProFTP user table’;  
  40.  

  4. 设定 proftpd.conf

  让 proftp 可以用 mysql 资料认证

  1.   SQLBackend mysql # 使用 mysql 资料库为主  
  2.  
  3.   SQLAuthTypes Backend # 密码认证 已 PASSWORD() 产生为主  
  4.  
  5.   SQLAuthenticate on  
  6.  
  7.   SQLConnectInfo ftp@localhost proftpd password # MySQL 连线资讯,资料库名称@主机 帐号 密码  
  8.  
  9.   SQLUserInfo ftpuser userid passwd uid gid homedir shell # 使用者资料库栏位  
  10.  
  11.   SQLGroupInfo ftpgroup groupname gid members # 群组资料库栏位  
  12.  
  13.   SQLLogFile /var/log/proftpd/sql.log # SQL Log 档  
  14.  
  15.   SQLHomedirOnDemand on # 当 Home 目录不存在,会自己产生。  
  16.  
  17.   SQLLog PASS updatecount # SQL Log 格式,当正确登入时,要执行的 SQL 语法  
  18.  
  19.   SQLNamedQuery updatecount UPDATE “countcount=count+1, accessed=now() where userid=’%u’” ftpuser  
  20.  
  21.   SQLLog STOR,DELE modified # SQL Log 格式,当储存或删除档案时,要执行的 SQL 语法  
  22.  
  23.   SQLNamedQuery modified UPDATE “modified=now() where userid=’%u’” ftpuser  
  24.  
  25.   RequireValidShell off  
  26.  

  5. 建立使用者帐号

  1.   mysql -u root -p  
  2.  
  3.   insert into ftp (userid, passwd , uid, gid , homedir ) values (’ubuntu_user’,password(’12345′), ‘5500′,’5500′,’/home/ftp/ubuntu_user’);  
  4.  

  建立 ubuntu_user 帐号,密码为 12345 ,目录位于 /home/ftp/ubuntu_user , uid / gid 为此 user 上传档案时的 uid / gid。

  6. 重新启动 Proftpd

  sudo /etc/init.d/proftpd restart

  请用刚刚建立好的帐号登入看看,若顺利就可以登入指定目录内。

  7. 除错

  有任何问题,请检查 sql.log ,会有资讯说明错误的原因。

【编辑推荐】

  1. 用MySQL和Proftpd配置FTP服务器
  2. ProFTPD 下的五大问题
  3. Linux ProFTPd服务器配置(全)
  4. ProFTPD的配置文件proftpd.conf
  5. ProFTPD的启动与测试
  6. 手把手教你 配置ProFTPD服务器
  7. ProFTPd的启动
  8. 在图形界面下控制ProFTPD
责任编辑:zhaolei 来源: 网络转载
相关推荐

2011-03-01 14:46:53

Debian Proftpd

2011-02-24 12:57:42

Ubuntuvsftpd安装

2011-02-25 16:26:17

2009-07-31 09:22:34

SQL Server

2011-03-02 15:12:11

2011-03-09 14:02:55

LAMP安装设置

2010-01-13 15:53:11

CentOS vsft

2010-07-21 09:28:46

Ubuntu Linu

2010-01-11 15:25:30

Fedora VMwa

2010-03-05 16:20:38

Ubuntu中文环境

2010-07-22 09:57:17

Microsoft S

2010-01-15 13:55:17

CentOS mail

2010-12-15 12:48:26

VirtualBox

2009-11-18 09:53:50

PHP安装设置

2009-08-07 11:46:57

JAVA虚拟机安装设置

2010-02-22 15:04:53

Ubuntu 7.04

2009-11-10 16:46:57

路由器安装设置

2009-08-08 15:25:05

无线路由器硬件安装路由器设置

2014-01-02 10:03:00

2011-02-22 09:50:01

点赞
收藏

51CTO技术栈公众号