---------------------------------------------------------
一、前言
二、环境
三、配置
四、测试
---------------------------------------------------------
一、前言
pureftpd是一款专注于程序健壮和软件安全的免费FTP服务器软件(基于BSD License)。其可以在多种类Unix操作系统中编译运行,包括Linux、OpenBSD、NetBSD、FreeBSD、DragonFly BSD、Solaris、Tru64、Darwin、Irix and HP-UX。PureFTPd还有Android移植版本。pureftpd由Troll-FTPd发展而来,Troll-FTPd是Arnt Gulbrandsen于1995年到1999年在Trolltech工作时所作。Gulbrandsen停止维护Troll-FTPd项目后,Frank Denis于2001年开始维护并将其改名为pureftpd,目前的开发维护者是由Denis领导的团队。
二、环境
系统:CentOS6.4 32位系统
所需软件:
PureAdmin-0.3.tar.gz
pure-ftpd-1.0.36.tar.gz
pureftpd-mysql.conf
pureftp.sql
下载地址 http://pan.baidu.com/s/1pJpsCSb
三、配置
1.搭建LAMP环境
[root@localhost ~]# yum install httpd mysql-server mysql php php-gd php-mysql pam-devel mysql-devel [root@localhost ~]# service mysqld start [root@localhost ~]# service httpd start [root@localhost ~]# chkconfig mysqld on //加入开机启动 [root@localhost ~]# chkconfig httpd on
2.上传需要使用的文件
[root@localhost pureftp]# ll -rw-r--r--. 1 root root 29148 Feb 15 20:54 PureAdmin-0.3.tar.gz -rw-r--r--. 1 root root 578781 Feb 15 20:54 pure-ftpd-1.0.36.tar.gz -rw-r--r--. 1 root root 4718 Feb 15 20:54 pureftpd-mysql.conf -rw-r--r--. 1 root root 2105 Feb 15 20:54 pureftp.sql
3.导入pureftp.sql文件
[root@localhost pureftp]# mysqladmin -u root -p password '123' Enter password: [root@localhost pureftp]# mysql -u root -p <pureftp.sql Enter password: [root@localhost pureftp]# mysql -u root -p Enter password: mysql> show databases; mysql> use ftpusers; mysql> show tables; mysql> select * from admin; +----------+----------------------------------+ | Username | Password | +----------+----------------------------------+ | admin | 202cb962ac59075b964b07152d234b70 | +----------+----------------------------------+ mysql> grant all privileges on ftpusers.* to ftp@localhost identified by 'tmppasswd'; mysql> flush privileges;
4.安装PureAdmin,并编辑配置文件
[root@localhost ~]# cd pureftp/ [root@localhost pureftp]# tar -zxvf PureAdmin-0.3.tar.gz -C /var/www/html/ [root@localhost pureftp]# cd /var/www/html/ [root@localhost html]# ll drwxr-xr-x. 4 root 80 4096 Mar 22 2009 PureAdmin-0.3 [root@localhost html]# mv PureAdmin-0.3/ pureadmin [root@localhost html]# cd pureadmin/ [root@localhost pureadmin]# ls adduser.php chkuser.php config.php p_w_picpaths lib.php list.php ... [root@localhost pureadmin]# vim config.php 3 $cfg['dbname']='ftpusers'; //mysql db name 4 $cfg['dbuser']='ftp'; //mysql user 5 $cfg['dbpasswd']='tmppasswd'; //mysql password 10 $cfg['passwdtype']='MD5'; 14 $cfg['dir']='/ftproot/'; //dir
5.创建一个本地账号
[root@localhost pureadmin]# useradd -d /ftproot ftpaccount [root@localhost pureadmin]# ll -d /ftproot/ drwx------. 4 ftpaccount ftpaccount 4096 Feb 15 21:37 /ftproot/ [root@localhost pureadmin]# chmod -R o+rwx /ftproot/
6.通过浏览器访问apache服务器
pureftpd的web方式后台管理
添加test1用户
7.通过mysql查看添加的用户信息
mysql> select * from users\G *************************** 1. row *************************** User: test1 Password: 202cb962ac59075b964b07152d234b70 Uid: 1000 Gid: 1000 Dir: /ftproot/test1 QuotaFiles: 0 QuotaSize: 100 ULBandwidth: 0 DLBandwidth: 0 Ipaddress: * Comment: Status: 1 ULRatio: 0 DLRatio: 0
8.安装pure-ftpd,并配置相关文件
[root@localhost pureadmin]# cd /root/pureftp/ [root@localhost pureftp]# tar -zxvf pure-ftpd-1.0.36.tar.gz -C /usr/local/src/ [root@localhost pureftp]# cd /usr/local/src/pure-ftpd-1.0.36/ [root@localhost pure-ftpd-1.0.36]# ./configure --prefix=/usr/local/pureftpd --with-mysql --with-shadow --with-pam --with-welcomemsg --with-uploadscript --with-cookie --with-virtualchroot --with-virtualhosts --with-diraliases --with-quotas --with-puredb --with-sysquotas --with-ratios --with-ftpwho --with-throttling --with-language=simplified-chinese [root@localhost pure-ftpd-1.0.36]# make && make install [root@localhost pure-ftpd-1.0.36]# cd /usr/local/pureftpd/ [root@localhost pureftpd]# ls bin sbin share [root@localhost pureftpd]# mkdir etc [root@localhost pureftpd]# ls bin etc sbin share [root@localhost pureftpd]# cd /usr/local/src/pure-ftpd-1.0.36/ [root@localhost pure-ftpd-1.0.36]# ls aclocal.m4 contrib depcomp ........ [root@localhost pure-ftpd-1.0.36]# cd contrib/ [root@localhost contrib]# ls Makefile Makefile.am pure-stat.pl redhat.init .... [root@localhost contrib]# cp redhat.init /etc/init.d/pureftpd [root@localhost contrib]# chmod a+x /etc/init.d/pureftpd [root@localhost contrib]# cd .. [root@localhost pure-ftpd-1.0.36]# cd configuration-file/ [root@localhost configuration-file]# ls ..... pure-config.pl pure-config.py pure-ftpd.conf [root@localhost configuration-file]# cp pure-ftpd.conf /usr/local/pureftpd/etc/ [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]# vim /etc/init.d/pureftpd 18 fullpath=/usr/local/pureftpd/sbin/$prog 19 pureftpwho=/usr/local/pureftpd/sbin/pure-ftpwho 24 $fullpath /usr/local/pureftpd/etc/pure-ftpd.conf --daemonize [root@localhost configuration-file]# service pureftpd start [root@localhost configuration-file]# netstat -tupln |grep 21 tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 9856/pure-ftpd (SER tcp 0 0 :::21 :::* LISTEN 9856/pure-ftpd (SER [root@localhost configuration-file]# chkconfig pureftpd on [root@localhost configuration-file]# cd /usr/local/pureftpd/etc/ [root@localhost etc]# ll -rw-r--r--. 1 root root 11211 Feb 15 21:58 pure-ftpd.conf [root@localhost etc]# vim pure-ftpd.conf 116 MySQLConfigFile /usr/local/pureftpd/etc/pureftpd-mysql.conf 126 PureDB /usr/local/pureftpd/etc/pureftpd.pdb 336 CreateHomeDir yes [root@localhost etc]# cp /root/pureftp/pureftpd-mysql.conf ./ [root@localhost etc]# ll -rw-r--r--. 1 root root 11245 Feb 15 22:14 pure-ftpd.conf -rw-r--r--. 1 root root 4718 Feb 15 22:16 pureftpd-mysql.conf [root@localhost etc]# vim pureftpd-mysql.conf 32 MYSQLPassword tmppasswd 45 MYSQLCrypt md5 [root@localhost etc]# cd ../bin [root@localhost bin]# ./pure-pw useradd test1 -u ftpaccount -g ftpaccount -d /ftproot/test1 -m Password: Enter it again: [root@localhost bin]# service pureftpd restart
四、测试
1.在wi7的dos命令行下测试:
C:\Users\nuo>ftp 192.168.2.102 连接到 192.168.2.102。 220---------- 欢迎来到 Pure-FTPd [privsep] ---------- 220-您是第 1 个使用者,最多可达 50 个连接 220-现在本地时间是 22:46。服务器端口: 21。 220-这部主机也欢迎IPv6的连接 220 在 15 分钟内没有活动,您被会断线。 用户(192.168.2.102:(none)): test1 331 使用者 test1 OK. 需要密码. 密码: 230-OK. 目前限制的目录是 / 230 0 Kbytes使用 (0%) - 授权可用: 102400 Kb ftp> dir 200 PORT命令OK 150 连接到port 52307 drwxr-xr-x 2 1000 1000 4096 Feb 15 22:46 . drwxr-xr-x 2 1000 1000 4096 Feb 15 22:46 .. -rw------- 1 1000 1000 0 Feb 15 22:46 .ftpquota 226-Options: -a -l 226 总共 3 符合 ftp: 收到 204 字节,用时 0.00秒 204.00千字节/秒。
2.资源管理器测试更为直观。(略)
3.通过test1账号访问后,服务器会自动添加test1相应的文件夹。
[root@localhost ~]# cd /ftproot/ [root@localhost ftproot]# ll drwxr-xr-x. 2 1000 1000 4096 Feb 15 23:06 test1