[转帖]Linux之pure-ftpd安装和使用
一、pure-ftpd简介
PureFTPd是一款专注于程序健壮和软件安全的免费FTP服务器软件(基于BSD License),以安全和配置简单为设计目标,支持虚拟主机,IPV6,PAM等功能。。其可以在多种类Unix操作系统中编译运行,包括Linux、OpenBSD、NetBSD、FreeBSD、DragonFly BSD、Solaris、Tru64、Darwin、Irix and HP-UX。PureFTPd还有Android移植版本。
二、源码安装步骤
1、官网下载pure-ftpd
打开官网下载链接,下载最新版本pure-ftpd软件包,最新版本为:1.0.49。
2、将软件上传到服务器
[root@s142 ~]# cd /usr/local/
[root@s142 local]# rz -y
#选择pure-ftpd-1.0.49.tar.gz后上传到/usr/local目录下。
3、解压软件包
[root@s142 local]# tar -zxvf pure-ftpd-1.0.49.tar.gz
…
[root@s142 local]# chown -R root.root pure-ftpd-1.0.49
4、编译软件
[root@s142 local]# cd pure-ftpd-1.0.49
[root@s142 pure-ftpd-1.0.49]# ./configure
…
config.status: creating config.h
config.status: executing depfiles commands
5、安装软件
[root@s142 pure-ftpd-1.0.49]# make
…
make[2]: Leaving directory `/usr/local/pure-ftpd-1.0.49’
make[1]: Leaving directory `/usr/local/pure-ftpd-1.0.49’
[root@s142 pure-ftpd-1.0.49]# make check
…
[root@s142 pure-ftpd-1.0.49]# make install
Making install in puredb
…
make[2]: Nothing to be done for `install-exec-am’.
/usr/bin/mkdir -p ‘/usr/local/share/doc/pure-ftpd’
/usr/bin/install -c -m 644 FAQ README.LDAP README.MySQL README.PGSQL README.Configuration-File README.Virtual-Users README.Authentication-Modules README.TLS README.MacOS-X pure-ftpd.conf pureftpd.schema pureftpd-ldap.conf pureftpd-mysql.conf pureftpd-pgsql.conf ‘/usr/local/share/doc/pure-ftpd’
make[2]: Leaving directory `/usr/local/pure-ftpd-1.0.49’
make[1]: Leaving directory `/usr/local/pure-ftpd-1.0.49’
6、查看pure-ftpd命令安装路径
[root@s142 pure-ftpd-1.0.49]# which pure-ftpd
/usr/local/sbin/pure-ftpd
7、启动pure-ftpd服务
[root@s142 pure-ftpd-1.0.49]# cp pure-ftpd.conf /etc/
[root@s141 pure-ftpd]# /usr/local/sbin/pure-ftpd &
[1] 9495
8、检查服务
[root@s141 pure-ftpd]# netstat -tnpl |grep pure
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 9495/pure-ftpd (SER
tcp6 0 0 :::21 :: LISTEN 9495/pure-ftpd (SER
三、YUM安装
1、安装epel扩展源
[root@s141 yum.repos.d]# yum install -y epel-release
2、安装pure-ftpd
[root@s141 yum.repos.d]# yum install -y pure-ftpd
…
pure-ftpd.x86_64 0:1.0.47-4.el7
…
Complete!
3、创建根用户及虚拟用户
[root@s141 yum.repos.d]# pure-pw mkdb
[root@s141 yum.repos.d]# useradd -d /home/pure pure
[root@s141 yum.repos.d]# pure-pw useradd wuhs -u pure -d /home/pure
Password:
Enter it again:
4、启用mkdb
[root@s141 yum.repos.d]# vim /etc/pure-ftpd/pure-ftpd.conf
取消如下行的注释
#PureDB /etc/pure-ftpd/pureftpd.pdb
5、启动pure-ftpd服务
[root@s141 yum.repos.d]# service pure-ftpd start
Redirecting to /bin/systemctl start pure-ftpd.service
[1]+ Done /usr/sbin/pure-ftpd (wd: /etc/pure-ftpd)
(wd now: /etc/yum.repos.d)
6、查看服务状态
[root@s141 yum.repos.d]# service pure-ftpd status
Redirecting to /bin/systemctl status pure-ftpd.service
● pure-ftpd.service - Pure-FTPd FTP server
Loaded: loaded (/usr/lib/systemd/system/pure-ftpd.service; disabled; vendor preset: disabled)
Active: active (running) since Tue 2021-11-16 14:54:31 CST; 8s ago
Process: 9606 ExecStart=/usr/sbin/pure-config.pl /etc/pure-ftpd/pure-ftpd.conf --daemonize (code=exited, status=0/SUCCESS)
Main PID: 9607 (pure-ftpd)
CGroup: /system.slice/pure-ftpd.service
└─9607 pure-ftpd (SERVER)
Nov 16 14:54:31 s141 systemd[1]: Starting Pure-FTPd FTP server…
Nov 16 14:54:31 s141 systemd[1]: PID file /var/run/pure-ftpd.pid not readable (yet?) after start.
Nov 16 14:54:31 s141 systemd[1]: Started Pure-FTPd FTP server.
7、使用客户端连接ftp服务器
使用wuhs用户连接服务器

三、配置文件说明
1、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.log clf | 格式日志文件位置。 |
| LDAPConfigFile /etc/pureftpd-ldap.conf | LDAP 配置文件 |
| MySQLConfigFile /etc/pureftpd-mysql.conf | MySQL 配置文件 (参考 README.MySQL) |
| PGSQLConfigFile /etc/pureftpd-pgsql.conf | Postgres 配置文件 (参考 README.PGSQL) |
| PureDB /etc/pure-ftpd/pureftpd.pdb | 用户数据库文件。 |
| MaxDiskUsage 99 | 当磁盘使用量打到99%时禁止上传。 |
| CreateHomeDir yes | 如果虚拟用户的目录不存在则自动创建。 |
| CustomerProof yes | 防止命令误操作。 |
| LogPID yes | 如果你要为日志每一行添加 PID 去掉下面行的注释。 |
| NoChmod yes | 不接受 CHMOD 命令。用户不能更改他们文件的属性。 |
| KeepAllFiles yes | 允许用户恢复和上传文件,却不允许删除他们。 |
2、pure-pw常用命令
- pure-pw --help 获取命令帮助
- pure-pw mkdb 创建用户信息数据库
- pure-pw useradd 增加一个虚用户
- pure-pw usermod 修改用户信息
- pure-pw userdel 删除一个虚用户
- pure-pw passwd 修改用户密码
[转帖]Linux之pure-ftpd安装和使用的更多相关文章
- linux下vsftpd的安装及配置使用详细步骤(推荐)
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...
- Hyper-V上运行的Linux虚拟机验证是否安装了集成服务
Hyper-V上运行的Linux虚拟机验证是否安装了集成服务 ps aux|grep "hv"root 311 0.0 0.0 0 0 ? ...
- Linux Hadoop2.7.3 安装(单机模式) 一
Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 java环境安装 http://www.cnblogs.com/zeze/p/590 ...
- 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)
RAC在LINUX上使用NFS安装前准备(六) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇 ...
- Linux下命令行安装weblogic10.3.6
Linux下命令行安装weblogic10.3.6 一.安装前准备工作: 1.创建用户useradd weblogic;创建用户成功linux系统会自动创建一个和用户名相同的分组,并将该用户分到改组中 ...
- Linux下MongoDB服务安装
Linux下MongoDB服务安装 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB是一个介于关系数据库和非关系数据 ...
- Linux Hadoop2.7.3 安装(单机模式) 二
Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 YARN是Hadoop 2.0中的资源管理系统,它的基本设计思想是将MRv1中的Jo ...
- .Net Core Linux centos7行—hyper-v安装linux系统和.net core sdk
下载linux系统,选择安装centos7 下载地址:https://www.centos.org/download/ 安装centos7 hyper-v选择新建虚拟机 根据向导一路next,虚拟机代 ...
- Linux CentOS6.5下安装Oracle ASM
Oracle版本:Oracle 11g 1.确定自己的Linux版本: [root@localhost ~]#uname -r 2.6.32-431.el6.x86_64 2.6.32-431.el6 ...
- Windows下的Memcache安装 linux下的Memcache安装
linux下的Memcache安装: 1. 下载 memcache的linux版本,注意 memcached 用 libevent 来作事件驱动,所以要先安装有 libevent. 官方网址:http ...
随机推荐
- st_geometry、st_transform配置及问题汇总
1.文件配置修改 路径上一定要使用双斜杠 2.使用sde账号登录,执行以下SQL,路径按照实际环境填写. select * from user_libraries; create or replace ...
- Sequelize的简单连接和使用
Sequelize是一个基于Node.js的ORM框架 特点: 1.支持多种数据库:Sequelize支持多种关系型数据库,包括MySQL.PostgreSQL.SQLite和MSSQL等,适用于需要 ...
- 快速入门Mybatis完成基本CURD(注解实现)
一.什么是Mybatis? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射. MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集. MyB ...
- Llama2-Chinese项目:5-推理加速
随着大模型参数规模的不断增长,在有限的算力资源下,提升模型的推理速度逐渐变为一个重要的研究方向.常用的推理加速框架包含lmdeploy.FasterTransformer和vLLM等. 一.lmd ...
- Python FastAPI 获取 Neo4j 数据
前提条件 先往Neo4j 里,准备数据 参考:https://www.cnblogs.com/vipsoft/p/17631347.html#创建传承人 搭建 FastAPI 项目:https://w ...
- 【JAVA基础】JAVA基础知识整理
https://www.weixueyuan.net/java/rumen_1/ JAVA的三大版本 JDK.JRE.JVM JAVA安装与卸载 JDK结构 HelloWorld运行 编译型与解释型 ...
- Cursor,程序员的 AI 代码编辑助手
相信大家都或多或少地听说过.了解过 chatGPT ,半个月前发布的 GPT-4 ,可谓是 AI 赛道上的一个王炸 那么今天咸鱼给大家分享一个开源的 AI 代码编辑器--Cursor,让各位程序员在编 ...
- JSP | IDEA 配置 JSP 模板
新建 jsp 文件时的模板 在第 5 步输入下面模板代码: <%-- Created by IntelliJ IDEA. User: ${USER} Date: ${DATE} Time: ${ ...
- 3.1 《数据库系统概论》SQL概述及数据定义(模式SCHEMA、表TABLE、索引INDEX)
前言 本篇文章学习书籍:<数据库系统概论>第5版 王珊 萨师煊编著 视频资源来自:数据库系统概论完整版(基础篇+高级篇+新技术篇) 由于 BitHachi 学长已经系统的整理过本书了,我在 ...
- springboot项目pom文件设置<profile>读取不同的配置文件(网上瞎copy的大把,测试过真实可用)
这篇文章主要介绍关于springboot如何通过多个properties实现数据库环境部署时自动切换配置的两种方式,部署时切换方式和打包时Maven控制方式.