1、 默认的yum源没有提供pure-ftpd,所以需要先安装epel-release扩展源,然后使用yum命令安装pure-ftpd。

yum install epel-release
yum install pure-ftpd

2、配置

#开启 pdb
#vim  /etc/pure-ftpd/pure-ftpd.conf
PureDB      /etc/pure-ftpd/pureftpd.pdb

启用pureDB数据库(未配置此项时虚拟用户无法登录服务器)

3、开启服务

systemctl start pure-ftpd 

4、创建系统用户
为了安全,pure-ftpd使用的账号并非linux的系统账号,而是虚拟账号。

useradd -u 1010 pure-ftp
mkdir -p /data/ftp
chown -R pure-ftp:pure-ftp /data/ftp

5、创建虚拟用户,并设置密码

pure-pw useradd ftpuser -u pure-ftp  -d /data/ftp
//创建虚拟账户,-u是将虚拟用户ftpuser与系统用户pure-ftp关联在一起,也就是说,使用ftpuser账号登录ftp后,会以pure-ftp的身份来读取和下载文件,-d是指定ftpuser账户的家目录,这样可以使用户ftpuser只能访问其家目录/data/ftp/。

-u选项将虚拟用户 ftpuser 与系统用户pure关联在一起,即使用qq账号登录FTP后,会以pure的身份来读取和下载文件,-d选项后面的目录为ftpuser账户的家目录,这样可以使ftpuser只能访问其家目录 /data/ftp
6、创建用户信息数据库文件

pure-pw mkdb
//创建用户信息数据库文件,这一步很关键

7、查看用户列表,修改用户密码

pure-pw list
pure-pw passwd  ftpuser

8、删除账号时可用如下命令

pure-pw userdel  pure

9、使用FileZilla客户端连接测试上传、下载、删除

FileZilla下载地址

在这里插入图片描述
10、pure-ftpd.conf配置文件说明

参数说明
ChrootEveryone yes启用chroot
BrokenClientsCompatibility yes兼容不同客户端
Daemonize yes后台运行
MaxClientsPerIP 20每个ip最大连接数
VerboseLog yes 记录日志
DisplayDotFiles no显示隐藏文件
AnonymousOnly no只允许匿名用户访问
NoAnonymous yes不允许匿名用户连接
SyslogFacility none不将日志在syslog日志中显示
DontResolve yes不进行客户端DNS解析
MaxIdleTime 15最大空闲时间
LimitRecursion 2000 8浏览限制,文件2000,目录8层
AnonymousCanCreateDirs no匿名用户可以创建目录
MaxLoad 4超出负载后禁止下载
PassivePortRange 45000 50000被动模式端口范围
#AnonymousRatio 1 10匿名用户上传/下载比率
UserRatio 1 10所有用户上传/下载比率
AntiWarez yes禁止下载匿名用户上传但未经验证的文件
AnonymousBandwidth 200匿名用户带宽限制(KB)
UserBandwidth 8所有用户最大带宽(KB)
Umask 133:022创建文件/目录默认掩码
MinUID 100最大UID限制
AllowUserFXP no仅运行用户进行FXP传输
AllowAnonymousFXP no对匿名用户和非匿名用户允许进行匿名 FXP 传输
ProhibitDotFilesWrite no不能删除/写入隐藏文件
ProhibitDotFilesRead no禁止读取隐藏文件
AutoRename yes有同名文件时自动重新命名
AnonymousCantUpload yes不允许匿名用户上传文件
AltLog clf:/var/log/pureftpd.logclf格式日志文件位置
PureDB /etc/pure-ftpd/pureftpd.pdb用户数据库文件
MaxDiskUsage 99当磁盘使用量打到99%时禁止上传
CreateHomeDir yes如果虚拟用户的目录不存在则自动创建
CustomerProof yes防止命令误操作

11、客户端连接

安装lftp yum -y install lftp
登录

lftp ftpuser@127.0.0.1
//输入口令

12、pure-ftpd配置用户只有上传权限,没有修改,删除权限
pure-ftpd.conf文件中找到以下参数

# Allow users to resume and upload files, but *NOT* to delete them. ftp

KeepAllFiles                no
# Set to 'yes' if you don't want your users to rename files. file

NoRename                  no
将上面两个参数更改成yes,重启pure-ftpd即可
Logo

更多推荐