Pureftp

安全的,高质量和符合标准的FTP服务器。侧重于运行效率和易用性。

支持web方式访问,管理,

支持虚拟账号访问,提高访问的安全性

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp搭建

由上图可以看到我们需要LAMP环境,我们之前的博客已经有介绍所以不在啰嗦,直奔主题。

1.下载pureftp的源码包,然后拆解安装

tar-zxvfpure-ftpd-1.0.36.tar.gz-C/usr/local/src/

然后开始编译

《注》编译的一些参数:

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp搭建_02

然后开始安装

Makemakeinstall

2.安装完成后我们查看一下他安装成功时候的系统配置文件,

PureFtp的搭建应用实现虚拟账号登陆web管理_www.wdzaxsp.tk_03


但是当我们进去查看的时候发现没有etc这个目录,所以我们自己创建一个目录

Mkdiretc

3.创建完毕后我们创建配置,控制文件

大家要记住这个规律,一般来说源码安装的软件,它的配置文件大多数都在它的源码目录里面

PureFtp的搭建应用实现虚拟账号登陆web管理_www.wdzaxsp.tk_04

大家可以看到上图的文件,pure-config.pl能控制pureftp的启动但是它不是一个可执行脚本,所以它仅仅有启动的功能,不是控制脚本,而pure-ftpd.conf则是配置文件,所以我们将这两个文件拷贝到pureftp的安装目录下对应的文件,并添加相应的权限

PureFtp的搭建应用实现虚拟账号登陆web管理_lamp环境下的pureftp_05

[root@localhostconfiguration-file]#cppure-ftpd.conf/usr/local/pureftpd/etc/

然后查找控制脚本

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp搭建_06

同样在源码目录里面找到了控制文件,当然如果我们不知道它在哪儿的话可以查找startstop这些关键词函数,这样就可以确定谁才是控制文件了

列如:Grepstart*

然后我们将控制文件拷贝到/etc/init.d目录下面加上权限

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp实现虚拟账号登陆_07

然后我们查看一下控制文件里面的一些参数是否正确

我们看到有几处错误,然后我们将其修改

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp搭建_08

后尝试启动并将其加入开机启动

PureFtp的搭建应用实现虚拟账号登陆web管理_lamp环境下的pureftp_09

4.为了我们可以使用虚拟账号登陆,我们需要将数据写入数据库,创建映射,数据表之类的,所以我们创建数据库,不过我们这里已经有了一个,所以只用导入即可。

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp实现虚拟账号登陆_10

5.导入数据库后,我们个ftp用户授予权限使其能进行增删改查。


PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp实现虚拟账号登陆_11

7.接下来就是pureftpmysql的连接的接口文件了;

这里俺就直接给您提供了他们的连接文件,所以只用拷贝到mysqletc目录下就ok

[root@localhostpureftp]#cppureftpd-mysql.conf/usr/local/pureftpd/etc/

8.然后配置连接配置文件的参数

MYSQLSocket/tmp/mysql.sock

MYSQLUserftp

MYSQLPasswordtmppasswd

MYSQLDatabaseftpusers

MYSQLCryptmd5

9.然后我们要去修该配置文件,从而让它能够知道去调用这个接口文件;

PureFtp的搭建应用实现虚拟账号登陆web管理_ pureftp 的web管理_12

当用户登录的时候需要有自己的家目录,所以我们需要将自动创建家目录的那行打开

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp搭建_13

还有就是当用户登录的时候肯定会有一个映射关系,这个映射关系我们将它放到一个特定的文件里面如下《下面会用到》

PureFtp的搭建应用实现虚拟账号登陆web管理_www.wdzaxsp.tk_14

PureFtp的搭建应用实现虚拟账号登陆web管理_ pureftp 的web管理_15

注意:匿名登陆时候需要创建匿名登陆的默认文件夹/var/ftp


我们查看一下结构图,那我们就需要做页面管理了

我们将其做成网站的形式,,我们用的压缩包里面就是一些页面,所以直接将其解压并放到apachehtdocs目录下面

PureAdmin-0.3.tar.gz

Tar-zxvfPureAdmin-0.3.tar.gz

MvPureAdmin-0.3./usr/local/apache/htdocs/pureadmin

由于在我们创建的网站里面需要有注册,等功能,所以需要连接数据库

所以我们在配置文档里面指明

vim/usr/local/apache/htdocs/pureadmin/config.php

PureFtp的搭建应用实现虚拟账号登陆web管理_lamp环境下的pureftp_16

mkdir/ftproot

这样我们就试着去登陆一下,试着管理

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp搭建_17

创建用户

PureFtp的搭建应用实现虚拟账号登陆web管理_ pureftp 的web管理_18

PureFtp的搭建应用实现虚拟账号登陆web管理_lamp环境下的pureftp_19

这样创建时没问题啦,不过是不能登陆的,因为我们虽然注册了,但是这只是个虚拟账号,必须将其映射到本地账号才能登陆,那这样我们就先建立一个本地用户,然后将虚拟用户映射到本地用户即可。

首先创建一个本地用户

useraddvirtualftp-s/sbin/nologin-d/ftproot/不赋予它登陆权限

chownvirtualftp.virtualftp/ftproot/修改所有者权限

chmod-R777/ftproot/递归修改权限

然后配置映射

1.首先创建一个映射

创建映射我们需要pureftp自己产生的一个工具pure-pw

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp实现虚拟账号登陆_20


2.创建数据库,用于存放映射关系

[root@localhostbin]#./pure-pwmkdb/usr/local/pureftpd/pureftpd.pdb

然后我们去尝试登陆

PureFtp的搭建应用实现虚拟账号登陆web管理_ pureftp 的web管理_21

PureFtp的搭建应用实现虚拟账号登陆web管理_pureftp实现虚拟账号登陆_22

家目录里面有了虚拟账号的家目录。

成功

如果大家需要安装时候的一些源码包,可以在这里下载http://down.51cto.com/data/804993