首页
登录 | 注册

ProFtpd与Mysql结合.实现FTP服务

一、得到安装包
  目前proftpd的最新版是1.2.5rc2,然后再下载一个相关的mod_sql的包
  这里都可以在此下载到.二、编译安装
  将proftpd的源码包解压缩到某临时目录下:
  
  
  tar jxvf proftpd-1.2.5rc2.tar.bz2
  然后进入proftpd-1.2.5rc2/contrib解压缩mod_sql 4.08版,覆盖老版本:
  tar zxvf mod_sql-4.08.tar.gz
  在proftpd-1.2.5rc2目录下执行configure配置程序
  ./configure --prefix=/usr/local/ --with-modules=mod_sql:mod_sql_mysql --with-includes=/usr/include/mysql --with-libraries=/usr/lib/mysql
  注意.我上面后两句写的Mysql的路径是指redhat7.3里mysql默认路径.你可以到包管理里看自己mysql的相关路径.
  make
  make install
  三、配置文件:
  下面两句的意思是先把proftpd.conf备份.再把mod_sql中包含的proftpd默认配置文件拷贝到proftpd的配置文件目录中
  mv /usr/local/etc/proftpd.conf /usr/local/etc/proftpd.bak
  cp contrib/mod_sql.conf /usr/local/etc/proftpd.conf
  修改配置文件/usr/local/etc/proftpd.conf中的以下内容:
  修改
  SQLConnectInfo dbname@host:port username password
  为你的数据库的相应连接参数。
  将
  SQLUserInfo users username password uid gid NULL NULL
  改为
  SQLUserInfo users userid passwd uid gid homedir shell
  这是使用FTP帐号的表名和字段名。
  在
  SQLDefaultHomedir "/tmp"
  的行首加上"#"注释符。
  将
  # SQLGroupInfo groups groupname gid members
  前面的"#"注释符去掉,这是组信息。 如果不需要匿名登录,将
  
  到
  
  之间的内容前都加上"#"注释符。
  
  找到"Group nogroup"
  改为"Group nobody"
  四、建立数据库
  在第三步中的dbname库中用以下命令建立相应的数据表,并建立一个帐号: DROP TABLE IF EXISTS `groups`;
  CREATE TABLE `groups` (
  `groupname` varchar(255) binary NOT NULL default '',
  `gid` int(11) NOT NULL default '0',
  `members` text NOT NULL,
  PRIMARY KEY (`groupname`)
  ) TYPE=MyISAM; INSERT INTO `groups` VALUES ('ftpgroup', 10000, 'ftpuser'); DROP TABLE IF EXISTS `users`;
  CREATE TABLE `users` (
  `userid` varchar(255) binary NOT NULL default '',
  `passwd` varchar(255) binary NOT NULL default '',
  `uid` int(11) default NULL,
  `gid` int(11) default NULL,
  `homedir` varchar(255) default NULL,
  `shell` varchar(255) default NULL,
  `count` int(11) default NULL,
  PRIMARY KEY (`userid`)
  ) TYPE=MyISAM; INSERT INTO `users` VALUES ('ftpuser', password('ftpuser'), 10000, 10000, '/home/ftpuser', '/bin/bash', 0); 五、启动proftpd
  [root@test /root]# /usr/local/sbin/proftpd start
  也可以这样
  cd /etc/rc.d/rc3.d
  ln -s /usr/local/sbin/proftpd S99proftpd或者
  修改/etc/rc.d/rc.local
  加上下面这句
  /usr/local/sbin/proftpd start
  这就可以在系统启动时自动加载

相关文章

  • MYSQL企业常用架构与调优经验分享
    一.选择Percona Server.MariaDB还是MYSQL 1.Mysql三种存储引擎 MySQL提供了两种存储引擎:MyISAM和 InnoDB,MySQL4和5使用默认的MyISAM存储引擎.从MYSQL5.5开始,MySQL已 ...
  • 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理.awesome-python 是 vinta 发起维护的 Python 资源列表,内容包括:Web 框架.网络爬虫.网络内容提取.模板引擎.数据库. ...
  •      因工作需要,需安装mysql5.7.23,记录一下安装步骤和遇到的问题. 服务器:腾讯云 1.准备工作    a.确定系统的版本名:cat /etc/redhat-release  结果 CentOS release 6.4 (F ...
  • xshell拷贝文件到本地
    借助XShell,使用linux命令sz可以很方便的将服务器上的文件下载到本地,使用rz命令则是把本地文件上传到服务器.       其中,对于sz和rz的理解与记忆我用了如下的方法(很多时候容易搞混):       sz中的s意为send ...
  • 基于vmware workstation的 pxe + kickstart批量安装linux
    [一]环境配置 vmware workstation 14.1.2 用于创建虚拟机 linux镜像 CentOS-7-x86_64-DVD-1804(7.5版) 虚拟机使用的操作系统 FTP服务   用来存放系统安装文件 TFTP服务   ...
  • libcurl curl是Linux下一个非常著名的下载库,通过这个库,可以很简单的实现文件的下载等操作. 看一个简单的例子: #include <curl/curl.h> #include <stdio.h> #i ...

2020 unjeep.com webmaster#unjeep.com
12 q. 0.013 s.
京ICP备10005923号