Pure-FTPd 是一款免费(BSD)的,安全的,高质量和符合标准的FTP服务器。其源代码被编译并运行于 Linux, OpenBSD, NetBSD,  FreeBSD, Solaris, Tru64, Darwin, Irix, HPUX, AIX 以及 iPhone上,侧重于运行效率和易用性。 它提供了简单的答案,为大众化的ftp提供了很好的解决方案。

一、LAMP环境的搭建。

关于LAMP环境的搭建,前面已经有过详细的介绍,限于篇幅,这里不再赘述。如有问题,敬请参考http://iceblock.blog.51cto.com/6758400/1191757

二、软件包的安装和配置

1.编译、配置pure-ftp

[root@localhost ~]# tar -zxvf pure-ftpd-1.0.36.tar.gz -C /usr/local/src/

[root@localhost ~]# cd /usr/local/src/pure-ftpd-1.0.36/

[root@localhost pure-ftpd-1.0.36]# ./configure \
> --prefix=/usr/local/pureftpd \   安装目录
> --with-mysql \        和mysql数据库结合
> --with-shadow \     身份验证
> --with-pam  \
> --with-welcomemsg   \     欢迎信息
> --with-uploadscript  \     支持上传过程中使用script脚本
> --with-cookie   \             允许cookie
> --with-virtualchroot \     
> --with-virtualhosts \
> --with-diraliases \          支持目录别名
> --with-quotas \             配额限制
> --with-puredb \             
> --with-sysquotas \
> --with-ratios \               速率限制
> --with-ftpwho \
> --with-throttling \          支持域值
> --with-language=simplified-chinese       语言

源码安装pure-ftpd 搭建ftp服务器_搭建

[root@localhost pure-ftpd-1.0.36]#make

[root@localhost pure-ftpd-1.0.36]#make install

[root@localhost pure-ftpd-1.0.36]# cd /usr/local/pureftpd/

[root@localhost pureftpd]# mkdir etc

[root@localhost pureftpd]#cd /usr/local/src/pure-ftpd-1.0.36/configuration-file

[root@localhost configuration-file]# cp pure-config.pl  /usr/local/pureftpd/sbin/

[root@localhost configuration-file]# chmod a+x /usr/local/pureftpd/sbin/pure-config.pl

[root@localhost configuration-file]# cp pure-ftpd.conf   /usr/local/pureftpd/etc/    配置文件 

[root@localhost configuration-file]# cd /usr/local/src/pure-ftpd-1.0.36/contrib

[root@localhost contrib]# cp redhat.init   /etc/init.d/pureftpd  启动脚本

[root@localhost contrib]# chmod a+x /etc/init.d/pureftpd

[root@localhost contrib]#vim /etc/init.d/pureftpd

源码安装pure-ftpd 搭建ftp服务器_color_02

[root@localhost contrib]# chkconfig --add pureftpd on

[root@localhost contrib]# chkconfig  pureftpd on    添加开机启动

[root@localhost contrib]# netstat -tupln |grep 21   查看21端口启动状况

源码安装pure-ftpd 搭建ftp服务器_解决方案_03 

[root@localhost contrib]# cd

2.导入pureftp.sql文件

[root@localhost ~]# vim pureftp.sql

由于mysql5.5之后不支持TYPE=MyISAM类型,需要做以下修改

源码安装pure-ftpd 搭建ftp服务器_搭建_04

源码安装pure-ftpd 搭建ftp服务器_iPhone_05

[root@localhost ~]# mysql -u root -p <pureftp.sql   把pureftp.sql导入到msql中

输入密码123

[root@localhost ~]# mysql -u root –p   进入mysql 查看导入状态

源码安装pure-ftpd 搭建ftp服务器_color_06

mysql> use mysql;
Database changed
mysql> show tables;

源码安装pure-ftpd 搭建ftp服务器_搭建_07

mysql> select * from user;    我们导入的ftp帐号和密码

源码安装pure-ftpd 搭建ftp服务器_搭建_08

mysql> use ftpusers;

mysql> show tables;

源码安装pure-ftpd 搭建ftp服务器_搭建_09

 

mysql> select * from admin;

源码安装pure-ftpd 搭建ftp服务器_color_10

mysql> grant all privileges on ftpusers.* to ftp@localhost identified by 'tmppasswd';    授权ftp账户

mysql> flush privileges;    刷新授权

 

3.pureftpd和mysql结合

[root@localhost ~]# cp pureftpd-mysql.conf  /usr/local/pureftpd/etc/

[root@localhost ~]# cd /usr/local/pureftpd/etc/

[root@localhost etc]# vim pureftpd-mysql.conf

源码安装pure-ftpd 搭建ftp服务器_color_11

[root@localhost etc]# vim pure-ftpd.conf     指明pureftpd和mysql的结合文件路径

源码安装pure-ftpd 搭建ftp服务器_搭建_12

映射虚拟账号

源码安装pure-ftpd 搭建ftp服务器_搭建_13

源码安装pure-ftpd 搭建ftp服务器_iPhone_14

 

 

 

4.PureAdmin的配置安装

[root@localhost etc]# cd

[root@localhost ~]# tar -zxvf PureAdmin-0.3.tar.gz -C /var/www/html/

[root@localhost ~]# cd /var/www/html/

[root@localhost html]# mv PureAdmin-0.3  pureadmin

[root@localhost html]# cd pureadmin/

[root@localhost pureadmin]# vim config.php   编辑pureadmin的配置文件

源码安装pure-ftpd 搭建ftp服务器_解决方案_15

[root@localhost pureadmin]# useradd virtualftp  -s /sbin/nologin  -d /ftproot

[root@localhost pureadmin]# chown virtualftp.virtualftp  /ftproot/

[root@localhost pureadmin]# chmod -R 777 /ftproot/

浏览器地址栏输入http://192.168.10.129(本机地址)

源码安装pure-ftpd 搭建ftp服务器_color_16

输入用户名root密码123登录

源码安装pure-ftpd 搭建ftp服务器_解决方案_17

源码安装pure-ftpd 搭建ftp服务器_解决方案_18

 

源码安装pure-ftpd 搭建ftp服务器_color_19

 

源码安装pure-ftpd 搭建ftp服务器_color_20

查看ftp用户

源码安装pure-ftpd 搭建ftp服务器_iPhone_21

 

5.建立本地账号与虚拟账号的映射关系

[root@localhost pureadmin]# cd /usr/local/pureftpd/etc

[root@localhost etc]# /usr/local/pureftpd/bin/pure-pw useradd user1 -u virtualftp -g virtualftp -d /ftproot/user1 –m

[root@localhost etc]# /usr/local/pureftpd/bin/pure-pw mkdb /usr/local/pureftpd/pureftpf.pdb

三、测试

源码安装pure-ftpd 搭建ftp服务器_color_22

源码安装pure-ftpd 搭建ftp服务器_解决方案_23

源码安装pure-ftpd 搭建ftp服务器_搭建_24

[root@localhost etc]# mysql -u root –p

mysql> show databases;

源码安装pure-ftpd 搭建ftp服务器_解决方案_25

mysql> use ftpusers;

mysql> show tables;

源码安装pure-ftpd 搭建ftp服务器_搭建_26

mysql> select * from users;

源码安装pure-ftpd 搭建ftp服务器_iPhone_27

ftp帐号登录

源码安装pure-ftpd 搭建ftp服务器_搭建_28

user2通过ftp登陆后自动产生家目录

源码安装pure-ftpd 搭建ftp服务器_iPhone_29

user2通过浏览器方式登录ftp

源码安装pure-ftpd 搭建ftp服务器_color_30

源码安装pure-ftpd 搭建ftp服务器_iPhone_31