pureftp+mysql+pureadminphp
若是文档内的软件下载连接不可用时,能够在http://down.51cto.com/data/785958 里面下载 html
LAMP的版本:python
linux: Centos 5.8 X64mysql
apache:Apache/2.2.23linux
php:PHP 5.3.20ios
mysql:mysql5.1.65web
查看Linux版本sql
[root@zhao ~]# cat /etc/redhat-release 数据库
CentOS release 5.8 (Final)apache
[root@WEB-A ~]# uname -m
x86_64
查看apache 版本
[root@zhao ~]# /application/apache/bin/apachectl -v
Server version: Apache/2.2.23 (Unix)
Server built:Jan 10 201309:52:51
查看php版本
[root@zhao ~]# /application/php/bin/php -v
PHP 5.3.20 (cli) (built: Jan 10 2013 14:21:42)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
查看MySQL版本
[root@zhao tools]# mysqladmin-u root -p123456 version
mysqladminVer 8.42 Distrib 5.1.65, forunknown-linux-gnu on x86_64
Copyright (c) 2000, 2011,Oracle and/or its affiliates. All rights reserved.
Oracle is a registeredtrademark of Oracle Corporation and/or its
affiliates. Other names maybe trademarks of their respective
owners.
Server version5.1.65-log
Protocol version10
ConnectionLocalhost via UNIX socket
UNIX socket/application/mysql5.1.65/tmp/mysql.sock
Uptime:1 hour 53 min 1 sec
Threads: 1Questions: 112Slow queries: 0Opens: 15Flush tables: 1Open tables:9Queries per second avg: 0.16
yum install -y httpd php php-mysql mysqlmysql-server mysql-devel
service httpd start
service mysqld start
mysqladmin -u root -p password '123456'
Pure-FTPd 是一款免费(BSD)的,安全的,高质量和符合标准的FTP服务器。 侧重于运行效率和易用性。 它提供了简单的答案,他知足了大众化的需求,包括普通用户以及主机供应商们。
实现功能:经过web管理ftp用户,实现新增、删除、密码修改、上传/下载限速、磁盘限额、文件数量等。
(1)下载pureftpd
cd /home/zhao/tools/
wget ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.36.tar.gz
或者 http://download.pureftpd.org/pub/pure-ftpd/releases/
tar -zxvf pure-ftpd-1.0.36.tar.gz
cd pure-ftpd-1.0.36
(2)编译安装
./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
//各编译选项的含义,能够参考./configure –help
./configure \
--prefix=/usr/local/pureftpd \ //安装目录
--with-mysql \ //ftp服务器支持mysql验证
--with-shadow \ //支持本地的
--with-pam \ //支持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 //支持简体中文
make &&make install
…………………………………………………………………………………………………
checking for mysql_init in -lmysqlclient... no
configure: error: libmysqlclient is needed for MySQL support
编译时候若出现上面的提示,则安装mysql和mysql-devel RPM包,这里为了简便,直接使用rpm方式解决
yum -y install mysql mysql-devel
编译安装pure-ftpd出现configure: error: Your MySQL client libraries aren’t properlyinstalled错误
若编译方式安装mysql数据库,前面的编译选项能够改"--with-mysql=/usr/local/mysql",并将/usr/local/mysql目录下的头文件和开发库文件加入ld.so.conf,该文件维护着系统的动态连接库
echo "/usr/local/mysql/">> /etc/ld.so.conf
ldconfig
mkdir /usr/local/pureftpd/etc
cppureftpd-mysql.conf /usr/local/pureftpd/etc/
cp configuration-file/pure-ftpd.conf /usr/local/pureftpd/etc/
cp configuration-file/pure-config.pl /usr/local/pureftpd/sbin/
chmod +x /usr/local/pureftpd/sbin/pure-config.pl
mkdir /home/ftproot
chmod -R777 /home/ftproot //可能会引发登陆时报421错误
useraddvirtualftp -d /home/ftproot -s /sbin/nologin -M //建立接下来的虚拟用户对应的系统用户
chownvirtualftp:virtualftp /home/ftproot
grep -v '^#'/usr/local/pureftpd/etc/pure-ftpd.conf |uniq|grep -v '^#'
//修改主配置文件以下,各项配置的含义能够参考配置文件注释
ChrootEveryoneyes
TrustedGID99
BrokenClientsCompatibility yes
MaxClientsNumber5
Daemonizeyes
MaxClientsPerIP3
VerboseLogno
DisplayDotFilesyes
AnonymousOnlyno
NoAnonymousyes
SyslogFacilityftp
DontResolveyes
MaxIdleTime5
MySQLConfigFile/usr/local/pureftpd/etc/pureftpd-mysql.conf
LimitRecursion10000 8
AnonymousCanCreateDirsno
MaxLoad4
AntiWarezyes
Umask133:022
MinUID99
AllowUserFXPno
AllowAnonymousFXPno
ProhibitDotFilesWriteno
ProhibitDotFilesReadno
AutoRenameno
AnonymousCantUploadno
PIDFile/var/run/pure-ftpd.pid
MaxDiskUsage99
CustomerProofyes
IPV4Onlyyes
CreateHomeDiryes
配置文件详细解释
# vim pure-ftpd.conf
# 将每一个用户限制在本身的home目录下
ChrootEveryone yes
# 兼容ie等比较非正规化的ftp客户端。默认:no
BrokenClientsCompatibility yes
# 最大用户链接数。默认:50
MaxClientsNumber 2000
# 后台模式(守护进程模式)
Daemonize yes
# 同一个IP容许链接数(能够防止迅雷、快车等程序疯狂开线程)。默认:8
MaxClientsPerIP 20
# 若是要记录全部的客户端命令,请设置为‘yes’该选项能够将日志同步复制到日志服务器。默认:no
VerboseLog yes
# 显示隐藏文件。默认:yes
DisplayDotFiles yes
# 不容许验证用户。只做为匿名ftp服务器。默认:no
AnonymousOnly no
# 不容许匿名用户链接。只容许验证用户链接。默认:no
NoAnonymous no
# 该选项是说将何种类型的日志同步写入到syslog中。
# 类型包括(auth, authpriv, daemon, ftp, security, user, local*)
# 默认是"ftp"若是不想将ftp的日志显示在/var/log/message中。则禁用便可: "none"
SyslogFacility none
# 显示 cookies
# FortunesFile /usr/share/fortune/zippy
# 在日志文件中不解析主机名。日志越详细所须要的带宽也就越大。若是服务器的
# DNS解析有问题或者服务器的负载过大,建议将该选项配置yes。默认为:yes
DontResolve yes
# 最大空闲时间。单位:分钟 (默认 = 15 分钟)
MaxIdleTime 15
# LDAP 配置文件
# LDAPConfigFile /etc/pureftpd-ldap.conf
# MySQL 配置文件 (详情见 README.MySQL)
# MySQLConfigFile /etc/pureftpd-mysql.conf
# Postgres 配置文件 (详情见 README.PGSQL)
# PGSQLConfigFile /etc/pureftpd-pgsql.conf
# PureDB 用户数据库 (详情见 README.Virtual-Users)
# PureDB /etc/pureftpd.pdb
# pure-authd 的 socket 路径 (详见README.Authentication-Modules)
# ExtAuth /var/run/ftpd.sock
# 若是要使用PAM验证,取消下面行的注释
# PAMAuthentication yes
# 若是要使用/etc/passwd 文件验证。取消下面行的注释
# UnixAuthentication yes
# 注意:LDAPConfigFile, MySQLConfigFile, PAMAuthentication 与 UnixAuthentication
# 只能启用一个,但他们能够联合使用。例如:你启用了 MySQLConfigFile 以后又启用了
# UnixAuthentication那么同一时刻只有SQL server 可用。若是SQL authentication 失败,
# 例如用户没有找到,那么系统会重试其余的方式来验证,这时候它就会找/etc/passwd 和
# /etc/shadow文件. 若是经过 SQL 验证的结果是由于密码错误,那么就不会在进行下面的
# 验证了。由此得知,验证方法能够写多个,但同一个时刻只有一个工做,且当验证时找不
# 到信息时才会进行下一个验证方式。但当验证错误时就终止验证了。
# 'ls' 递归限制。第一个参数是最大可显示的文件数。第二个参数是子文件夹深度
LimitRecursion 2000 8
# 匿名用户是否能够建立新文件夹
AnonymousCanCreateDirs no
# 若是系统负载超过下面所给的数字,那么匿名用户将没法下载
MaxLoad 4
# 在被动链接模式下为其分配的端口范围。便于制定防火墙配置。
PassivePortRange 45000 50000
# 强制某个IP地址工做在 PASV/EPSV/SPSV 模式. - for NAT.
# ForcePassiveIP 192.168.0.1
# 匿名用户上传/下载比率
# AnonymousRatio 1 10
# 全部用户上传/下载比率。该选项能够取代上面的选项
# UserRatio 1 10
# 禁止下载全部者为‘ftp’的文件。例如:那些匿名用户上传后未被本地管理员验证的文件。
AntiWarez yes
# 用来监听的IP地址和端口 (默认=全部 IP 和 21 端口).
# Bind 127.0.0.1,21
# 匿名用户最大带宽限制,单位 KB/s
AnonymousBandwidth 200
# 全部用户的最大带宽限制(包括匿名)单位 KB/s
# 没有必要同时开启 AnonymousBandwidth 和 UserBandwidth
# UserBandwidth 8
# 新建文件默认掩码. <文件掩码>:<目录掩码>
# 为了安全起见能够设置为 177:077
Umask 133:022
# 验证登陆用户的最小UID
MinUID 100
# 仅容许认证用户进行 FXP 传输
AllowUserFXP no
# 对匿名用户和非匿名用户容许进行匿名 FXP 传输
AllowAnonymousFXP no
# 用户不能删除/写入隐藏文件,即使是文件的拥有者也不容许。
# 若是 TrustedGID 选项为 enabled 文件所属组用户能够访问隐藏文件
ProhibitDotFilesWrite no
# 禁止读取隐藏文件 (如 .history, .ssh...)
ProhibitDotFilesRead no
# 永不覆盖文件。若是上传的文件已经存在,系统会自动将其命名为file.1, file.2, file.3, ...
AutoRename yes
# 不容许匿名用户上传文件 (no = 容许上传)
AnonymousCantUpload no
# 仅容许来自如下IP地址的非匿名用户链接。你可使用这个指令来打开几个公
# 网IP来提供匿名FTP,而保留一个私有的防火墙保护的IP来进行远程管理。你
# 还能够只容许一内网地址进行认证,而在另一个IP上提供纯匿名的FTP服务。
#TrustedIP 10.1.1.1
# 若是你要在登录日志的每一行添加PID标记,去掉下行的注释
#LogPID yes
# 使用相似于Apache格式建立一个附加的日志文件,如:
# fw.c9x.org - jedi[13/Dec/1975:19:36:39] "GET /ftp/linux.tar.bz2" 200 21809338
# 这个日志文件能够被www流量分析工具来处理
AltLog clf:/var/log/pureftpd.log
# 使用优化过的格式为统计报告建立一个额外的日志文件
# AltLog stats:/var/log/pureftpd.log
# 使用标准的W3C格式建立一个额外的日志文件。(与大部分的商业日志分析器兼容)
# AltLog w3c:/var/log/pureftpd.log
# 不容许使用chmod命令.用户不能修改他们上传文件的属性
#NoChmod yes
# 容许用户恢复和上传文件,但不可以上除他们
#KeepAllFiles yes
# 用户主目录不存在的话,自动建立目录
#CreateHomeDir yes
# 启用虚拟磁盘配额。第一个参数是最大文件数,第二个参数是总共的大小,单位是MB
# 如: 1000:10 限制每一个用户最大文件1000个且不能超过10MB
#Quota 1000:10
# 若是你在编译 pure-ftpd 时加入了‘standalone’选项,那么你能够更改pid文件位置
# 默认目录 /var/run/pure-ftpd.pid
#PIDFile /var/run/pure-ftpd.pid
# 若是你在编译 pure-ftpd 时加入了 pure-uploadscript 选项,这个指令将会使
# pure-ftpd 发送关于新上传的状况信息到 /var/run/pure-ftpd.upload.pipe,
# 这样 pure-uploadscript 就能读而后调用一个脚本去处理新的上传。
#CallUploadScript yes
# 这个选项对于匿名上传的服务器是颇有用的。/var/ftp 在 /var 里时,须要保留必定
# 磁盘空间来保护日志文件。当所在磁盘分区使用超过百分之 X 时,将不在接受新的上传。
MaxDiskUsage 99
# 若是不想让用户来重命名文件,请将其设置为yes
#NoRename yes
# 'customer proof' : 选项能够阻止普通用户因误操做而执行的错误命令
# 如:'chmod 0 public_html', 这是有效的命令,但执行完命令以后用户
# 就将他们本身的文件锁定了,这时你的麻烦就来了,你须要给用户解决这
# 些因为用户而形成的愚蠢问题。若是你确信的你用户都具备一些unix基础
# 知识的话,那么该选项就没有必要设置,不然建议启用它。
CustomerProof yes
# 全部用户都作一样的限制。只有编译时加入了--with-peruserlimits 选项
# 才能够启用。格式为: <每个用户最大许可的进程>:<匿名用户最大进程>
# 例如:3:20 同一个认证用户最大能够有3个同时活动的进程。并且同时最多
# 只能有20个匿名用户进程
# PerUserLimits 3:20
# 当文件上传时,服务器上以前已经有一个同名的文件时,旧的文件既不会被移动
# 也不会被删除。在新文件上传完毕以前会将上传的部分暂时放到一个临时的文件
# 中,当上传完毕以后会自动的切换到新上传的文件。例如:当服务器上有一个PHP
# 脚本正在执行,但我如今要上传一个新的PHP脚本,那么当我在上传完毕以后才将
# 旧的文件切换到新的文件。而不是像某些程序那样在开始上传的时候就将旧的文件
# 覆盖掉了,这样作的目的就是能够最大程度的减小正在运行中的程序错误。该选项
# 与虚拟配额不能同时使用。
# NoTruncate yes
# 该选项能够接受3个可选值:
# 0 : 禁用 SSL/TLS 加密层 (默认).
# 1 : 同时接受传统的和加密的链接
# 2 : 拒绝没有通过 SSL/TLS 安全验证的链接,包括匿名链接
# 在没有肯定下面三个问题以前不要盲目的取消注释:
# 1) 编译PureFTPd时是否启用了 SSL/TLS 支持 (--with-tls),
# 2) 系统中是否包含一个有效的证书
# 3) 开启后只有兼容的客户端才能登录
# TLS 1
# 在 standalone 模式下只监听IPV4的地址 (与禁用 IPv6 相同)
# 默认是IPV4与IPV6同时监听
# IPV4Only yes
# 在 standalone 模式下只监听IPV6的地址 (与禁用 IPv4 相同)
# IPV6Only yes
# 文件名的UTF-8支持
# FileSystemCharset big5
# ClientCharset big5
/usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf //试启动pureftpd服务
Running: /usr/local/pureftpd/sbin/pure-ftpd -A -a99 -c5 -B -C3 -D -E -fftp -H-I5 -lmysql:/usr/local/pureftpd/etc/pureftpd-mysql.conf -L10000:8 -m4 -s-U133:022 -u99 -g/var/run/pure-ftpd.pid -k99 -Z -4
# cat /usr/local/pureftpd/etc/pureftpd-mysql.conf| grep-v "#" | grep -v"^$"
MYSQLServerDB_ip//数据库服务器
MYSQLPort3306//数据库链接端口
MYSQLSocket/application/mysql/tmp/mysql.sock
MYSQLUserftp//链接数据库用户
MYSQLPasswordredhat//链接数据库密码
MYSQLDatabaseftpusers//链接的数据库库名
MYSQLCryptmd5//密码加密方式
MYSQLGetPWSELECTPassword FROM users WHERE User="\L" //密码验证使用的表名MYSQLGetUIDSELECTUid FROM users WHERE User="\L" //UID验证使用的表名
MYSQLGetGIDSELECTGid FROM users WHERE User="\L" //GID验证使用的表名
MYSQLGetDirSELECTDir FROM users WHERE User="\L" //目录验证使用的表名
启动pureftpd
/usr/local/pureftpd/sbin/pure-config.pl/usr/local/pureftpd/etc/pure-ftpd.conf
启动自动运行
cd /home/zhao/tools/pure-ftpd-1.0.36/contrib/
[root@mysql-B contrib]# ls
MakefileMakefile.inpure-vpopauth.plsuse.init
Makefile.ampure-stat.plredhat.initxml_python_processors.txt
cp redhat.init /etc/init.d/pureftpd
chmod 755 /etc/init.d/pureftpd
vim /etc/init.d/pureftpd
pureadmin是pureftpd的后台管理程序,能够经过此程序去管理mysql 数据库的账户。程序以perl cgi 方式运行,采用了模板结构。
一、用户管理 二、用户自助注册(须要在系统里打开)三、用户可自主修改密码 四、 查看当前在线用户 五、查看用户空间使用状况 六、采用模块方式、模板美观。 七、程序提示等大部分由英文改成中文 八、增长了图片验证码
一、linux/unix 系统 二、perl 5.6 以上 三、系统须要有下面的perl 模块(大部份系统以自带)四、apache/mysql
需求列表
apache
gd
jpeg
mysql-client
mysql-server
p5-DBD-mysql
p5-DBI
p5-GD
p5-GD-Barcode
p5-Storable
p5-gettext
perl
png
cd /home/zhao/tools/
wget http://www1.yiyou.org/docs/PureAdmin_03_php/pureftp.sql
vim pureftp.sql
导入前,建议修改docs/pureftp.sql 文件里的 passwd 红色部分,这是mysql 的用户密码,若是经验不足,能够不修改。
导入前须要修改此sql文件的15行:前2个减号空一格
15---------------------------------------------------------
INSERT INTO mysql.user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv,
Index_priv, Alter_priv) VALUES('localhost','ftp',PASSWORD('passwd'),'Y','Y','Y','Y','N','N','N','N','N','N','N','N','N','N');
mysql -uroot -p <docs/pureftp.sql
50 INSERT INTO admin VALUES ('admin',MD5('passwd'));
[root@zhao docs]# mysql -u root -p123456 < pureftp.sql导入数据
[root@zhao docs]# mysql -u root -p123456
mysql> show databases;查看ftpusers 数据库
+--------------------+
| Database|
+--------------------+
| information_schema |
| ftpusers|
| mysql|
| test|
+--------------------+
4 rows in set (0.16 sec)
mysql> use ftpusers;
Database changed
mysql> show tables;查看表
+--------------------+
| Tables_in_ftpusers |
+--------------------+
| admin|
| users|
+--------------------+
2 rows in set (0.00 sec)
mysql> select * from admin;
+----------+----------------------------------+
| Username | Password|
+----------+----------------------------------+
| admin| e2798af12a7a0f4f70b4d69efbc25f4d |
+----------+----------------------------------+
1 row in set (0.01 sec)
cd /home/zhao/tools/
wget http://www1.yiyou.org/docs/PureAdmin_03_php/PureAdmin-0.3.tar.gz
[root@localhosttools]# tar -zxvf PureAdmin-0.3.tar.gz -C /application/apache/htdocs/
[root@localhosttools]# cd /application/apache/htdocs/
[root@localhosthtdocs]# mv PureAdmin-0.3 pureadmin
[root@localhosthtdocs]# cd pureadmin/
[root@localhostpureadmin]# vim config.php
<?php
$cfg['dbhost']='localhost'; //mysql host,必定要跟上面同样
$cfg['dbname']='ftpusers';//mysql db name 所用的库;与前面导入的sql中要一致>
$cfg['dbuser']='ftp'; //mysqluser 登陆mysql的账号
$cfg['dbpasswd']='tmppasswd'; //mysql password 登陆mysql的密码
//ftp config
$cfg['page']=10; 每页显示的用户数量
//ftp passwd type :TEXT/CRYPT/MD5
$cfg['passwdtype']='MD5'; 认证模式<要与pureftpd-mysql.conf中一致>
//ftp default
$cfg['uid']=500; //uid 映射虚拟用户的UID,即刚建立的virtualftp用户
$cfg['gid']=500; //gid 同上
$cfg['dir']='/home/ftproot/'; //dir 默认家目录
$cfg['qf']=0; //quotafiles 文件个数限制,0为不限制
$cfg['qs']=100; //quotasize 总文件大小
$cfg['ul']=0; //ULBandwidth 上传速率限制
$cfg['dl']=200; //DLBandwidth 下载速率限制
$cfg['ur']=0; //ULRatio 上传比
$cfg['dr']=0; //DLRatio 下载比
$cfg['status']=1; //status 状态,1为激活;0为禁止
$cfg['ip']= '*'; //ipaddress 可访问IP,*为全部
?>
打开浏览器,输入http://your_ip/ftp 便可访问 默认用户名:admin 密码为:passwd
界面欣赏
530 错误
99%是数据库链接信息错误,http://www.vpser.net/manage/lnmp-pureftpd-cp.html里已经说过localhost 和 127.0.0.1 在mysql连接的时候是不同的!
若是确认用户名和密码没错,登陆phpmyadmin查看ftp登陆用户是localhost仍是 127.0.0.1
421错误
CreateHomeDir yes 容许用户登陆后自动建立家目录<必须>
启动故障
[root@zhao-Betc]# /usr/local/pureftpd/sbin/pure-ftpd -j -lpuredb:/usr/local/pureftpd/etc/pureftpd.pdb
没法启动standalone server: ??????
解决方法:
vi pure-ftpd.conf
#Bind 127.0.0.1,21
改为:
Bind 192.168.100.202,21
vi /usr/local/pureftpd/etc/pure-ftpd.conf
修改126行为:
PureDB /usr/local/pureftpd/etc/pureftpd.pdb
修改214行为
Bind192.168.1.11,21
pure-pw useradd user1 -u virtualftp -gvirtualftp -d /home/ftproot/user1 -m
说明:
user1是用户名,-u virtualftp是其实际的linux用户,-d指定起始目录,并锁定于该目录。若是不锁定,则用-D;若是须要不一样的权限,能够创建新的linux用户与组
若是用的系统自带的ftp用户,这样的话还需修改配置文件pure-ftpd.conf中的MinUID为ftp用户的UID 14,不然登陆时会出现530错误;因此这里建议建立另外一个非系统自带的用户作映射
设置环境变量
echoPATH=$PATH:/usr/local/pureftpd/bin/ >>/etc/profile
source /etc/profile
pure-pwmkdb /usr/local/pureftpd/etc/pureftpd.pdb
说明:从此每添加或修改用户数据库都应该执行一次mkdb
以每一个用户一行的方式存放在相应的文件中,其格式以下所示:
<account>:<password>:<uid>:<gid>:<gecos>:<homedirectory>:<upload bandwidth>:<download bandwidth>:<uploadratio>:<download ratio>:<max number of connections>:<filesquota>:<size quota>:<authorized local IPs>:<refused localIPs>:<authorized client IPs>:<refused client IPs>:<timerestrictions>
其中,除了账号、口令、 uid 、 gid 和 home 目录以外,其它的能够是空值
pure-pwuseradd <login> [-f <passwd file>] -u <uid> [-g <gid>]
-D/-d<home directory> [-c <gecos>]
[-t<download bandwidth>] [-T <upload bandwidth>]
[-n <maxnumber of files>] [-N <max Mbytes>]
[-q<upload ratio>] [-Q <download ratio>]
[-r<allow client host>[/<mask>][,<allow clienthost>[/<mask>]]...]
[-R <denyclient host>[/<mask>][,<deny client host>[/<mask>]]...]
[-i<allow local host>[/<mask>][,<allow clienthost>[/<mask>]]...]
[-I <denylocal host>[/<mask>][,<deny local host>[/<mask>]]...]
[-y <maxnumber of concurrent sessions>]
[-z<hhmm>-<hhmm>] [-m]
若是pure-ftpd启动时加入 -j(--createhome) 选项,则不须要建立/ftproot/tony目录。系统会在该用户第一次登录时自动建立
参数说明
-t 下载带宽限制
-T 上传带宽限制
-n 最大文件数目
-N 磁盘配额(单位M)
-q 上传速度限制
-Q 下载速度限制
-r 容许某些ip/网段的客户端访问
-R 拒绝某些ip/网段的客户端访问
-i 容许本地某些ip/网段访问(allow local host)
-I 拒绝本地某些ip/网段访问(deny local host)
-y 同时最大链接数目
-z 容许链接服务器的时间段,格式hhmm-hhmm,如 -z 0412-1618表明用户只能在凌晨4点12分至下午4点18分链接服务器
-f passwd_file
-F puredb_file
-m 没必要重启Pure-FTPd以及从新生成puredb_file文件
pure-pw usermod <user> -n '' :禁用文件配额
pure-pw usermod <user> -N '' :禁用文件大小配额
pure-pw usermod <user> -q '' -Q '' :禁用 ratio
pure-pw usermod <user> -t '' :禁用下载带宽限制
pure-pw usermod <user> -T '' :禁用上传带宽限制
pure-pw usermod <user> <-i,-I,-ror -R> '' :禁用 IP 过滤
pure-pw usermod <user> -z '' :禁用时间段约束
pure-pw usermod <user> -y '' :禁用并发数限制
pure-pw userdel <login> [-f <passwdfile>] [-m]
这时,用户的信息会被从指定的 passwd 文件中删除,可是用户的 home 目录会被保留,须要手工删除
5.8 更改一个用户口令
pure-pw passwd <login> [-f<passwd file>] [-m]
/etc/pureftpd.passwd 文件中记录的信息不方便用户的阅读
所以 pure-ftpd 提供了显示用户信息的命令
其语法是: pure-pw show <login> [-f <passwdfile>]
使得pure-ftpd支持虚拟用户,须要在编译的时候加入选项--with-puredb 。这时,能够经过在启动服务是的 ’-l’ 参数来设置。如:
/usr/local/pureftpd/sbin/pure-ftpd -j-lpuredb:/usr/local/pureftpd/etc/pureftpd.pdb &
[root@zhao-Bftproot]# ll
总计 12
drwxr-xr-x2 virtualftp virtualftp 4096 05-10 16:20 user2