一、安装pureftpd
前提:已经配置好lamp环境
Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置
CentOS 5.9下编译安装LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12)
RedHat 5.4下Web服务器架构之源码构建LAMP环境及应用PHPWind
LAMP源码环境搭建WEB服务器Linux+Apache+MySQL+PHP
1、下载所需软件包
#wget ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.30.tar.gz
2、编译安装
#./configure --prefix=/usr/local/pureftpd --with-mysql --with-throttling --with-puredb --with-virtualhosts --with-virtualroot --with-cookie --with-quotas --with-sysquotas --with-ratios --with-welcomemsg --with-peruserlimits --with-lanaguage=simplified-chinese
----------
如果出现configure: error: libmysqlclient is needed for MySQL support
解决:#yum install mysql-devel
----------
<configure后面如果用--with-everything表示包含所有功能<但是不保险>
--with-tls表示激活SSL/TLS,需要openssl>
# make
# make install
-----进入pure-ftp解压目录-----
3、复制必要的文件
# cp configuration-file/pure-config.pl /usr/local/pureftpd/sbin/
# chmod 755 /usr/local/pureftpd/sbin/pure-config.pl
# mkdir -p /usr/local/pureftpd/etc/
# cp configuration-file/pure-ftpd.conf /usr/local/pureftpd/etc/
4、添加pureftpd为系统服务
# cp contrib/redhat.init /etc/init.d/pureftpd
# vi /etc/init.d/pureftpd
修改18/19行
fullpath=/usr/local/sbin/$prog
pureftpwho=/usr/local/sbin/pure-ftpwho
为:
fullpath=/usr/local/pureftpd/sbin/$prog
pureftpwho=/usr/local/pureftpd/sbin/pure-ftpwho
修改24行
$fullpath /etc/pure-ftpd.conf --daemonize
为 $fullpath /usr/local/pureftpd/etc/pure-ftpd.conf --daemonize
# chmod 755 /etc/init.d/pureftpd
# chkconfig --add pureftpd
# chkconfig pureftpd on
5、修改配置文件
# vi /usr/local/pureftpd/etc/pure-ftpd.conf
其中可以修改最大连接数、空闲时间等,详细介绍见
其中有几项要修改:
chrootEveryone yes 限定在自己的家目录
NoAnonymous yes 不允许匿名登录
Bind 127.0.0.1,21 监听本机回环 <可选>
Bind 192.168.0.254,21 监听本机IP <自行添加的,非必须>
CreateHomeDir yes 允许用户登录后自动创建家目录 <必须>
如果启用了iptables,还必须修改下面这一行:
PassivePortRange 30000 50000保存退出。
iptables开启相关端口:
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
iptables -I INPUT -p tcp --dport 30000:50000 -j ACCEPT
/etc/rc.d/init.d/iptables save
6、配置虚拟用户登录环境
# mkdir /ftproot
# chmod -R 777 /ftproot <这不不做可以能会引起登录时报421错误>
# useradd virtualftp -d /ftproot -s /sbin/nologin <创建接下来的虚拟用户对应的系统用户>
# chown virtualftp:virtualftp /ftproot
7、设置环境变量
# echo PATH=$PATH:/usr/local/pureftpd/bin/ >>/etc/profile
# source /etc/profile
# pure-pw show tony 查看tony这个用户的详细信息
# pure-pw list 是看用户列表的
# pure-pw passwd tony -m 修改tony的密码
# pure-pw mkdb /usr/local/pureftpd/etc/pureftpd.pdb 创建虚拟用户数据库。
# pure-pw show tony 查看用户
# pure-pw usermod 修改用户
8、启动pureftpd
#service pureftpd start 或者 #/usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf
出现
Running: /usr/local/pureftpd/sbin/pure-ftpd -A -c50 -B -C8 -D -E -fftp -H -I5 -L10000:8 -m4 -s -U133:022 -u100 -j -k99 -Z
表示正常
# netstat -anltp | grep 21
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 13418/pure-ftpd (SE
tcp 0 0 :::21 :::* LISTEN 13418/pure-ftpd (SE