共计 1742 个字符,预计需要花费 5 分钟才能阅读完成。
本站提供 Linux 服务器运维,自动化脚本编写等服务,如有需要请联系博主微信:xiaozme
PureFTPd 是一款专注于程序健壮和软件安全的免费 FTP 服务器软件(基于 BSD License),目前常见的一键安装包,如 Oneinstack、lnmp.org、宝塔等服务都已集成 PureFTPd 服务,可见 PureFTPd 是一款非常流行的 FTP 服务软件。
有些时候我们不需要过多的集成环境,就想简简单单的使用 FTP 服务,可以尝试自行配置 Pure-ftpd,分享一下 CentOS 7 安装和配置 Pure-ftpd 的方法。
安装 Pure-ftpd
# 安装 epel 源
yum -y install epel-release
#安装 pureftpd
yum -y install pure-ftpd
配置 Pure-ftpd
Pure-ftpd 默认配置文件位于/etc/pure-ftpd/pure-ftpd.conf
,常用的配置如下:
# 指定路径,PureDB 用户数据库文件
PureDB /etc/pure-ftpd/pureftpd.pdb
#开启日志
VerboseLog yes
#拒绝匿名登录
NoAnonymous yes
#使用被动模式,并设置端口范围
PassivePortRange 30000 50000
创建系统用户、FTP 用户,配置目录权限
创建系统用户的目的主要是让 FTP 目录继承该用户权限,下方命令添加了一个 www
用户和一个 www
用户组,用户、用户组请根据实际情况来创建。
# 创建 www 用户组
groupadd www
#创建一个 www 用户
useradd -g www -s /sbin/nologin -d /dev/null www
接下来创建 FTP 虚拟用户,也就是经常用到的 FTP 账号啦:
# 新建一个 FTP 目录
mkdir -p /data/wwwroot/ftp
#设置目录权限
chown -R www:www /data/wwwroot/ftp
#创建一个 FTP 用户 xiaoz
pure-pw useradd xiaoz -u www -d /data/wwwroot/ftp -m
解释一下 pure-pw useradd xiaoz -u www -d /data/wwwroot/ftp -m
这一行的作用:
pure-pw useradd xiaoz
:添加一个 FTP 用户xiaoz
-u www
:指定系统用户为 www-d /data/wwwroot/ftp
:指定 FTP 路径-m
:将用户信息写入 pureftpd.pdb 数据库
放行端口
FTP 默认使用 21 端口,同时我们配置了被动端口(30000-50000),因此需要在防火墙或安全组放行这些端口,下方是 firewalld 放行端口方法,如果是 iptables 请参考:iptables 防火墙,常用规则整理
# 放行 21 端口
firewall-cmd --zone=public --add-port=21/tcp --permanent
#放行 30000-50000 端口范围
firewall-cmd --zone=public --add-port=30000-50000/tcp --permanent
#重载 firewalld
firewall-cmd --reload
启动 Pure-ftpd
要启动 Pure-ftpd 直接执行 systemctl start pure-ftpd
命令,一些常用的操作命令如下。
# 启动 pure-ftpd
systemctl start pure-ftpd
#设置开机启动
systemctl enable pure-ftpd
#停止 pure-ftpd
systemctl stop pure-ftpd
#禁止开机启动
systemctl disable pure-ftpd
如果需要获取 pure-ftpd 的使用方法可以输入 pure-pw -h
查看帮助。
验证
输入命令 netstat -apn|grep 'pure-ftpd'
可以查看 Pure-ftpd 是否正常监听,如果监听成功,可使用 FTP 客户端(如 Filezilla)进行连接,来确保上传、下载没有问题。
其它
由 xiaoz 开发的 ImgURL Pro 专业版图床程序支持 FTP 上传图片,有需要的可以访问:https://blog.xiaoz.org/archives/13225 查看,目前 6 折促销中。
此文部分内容参考了:CentOS7 YUM 安装 Pure-ftpd