一、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安装和使用的更多相关文章

  1. linux下vsftpd的安装及配置使用详细步骤(推荐)

    vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...

  2. Hyper-V上运行的Linux虚拟机验证是否安装了集成服务

    Hyper-V上运行的Linux虚拟机验证是否安装了集成服务 ps aux|grep "hv"root       311  0.0  0.0      0     0 ?     ...

  3. Linux Hadoop2.7.3 安装(单机模式) 一

    Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 java环境安装 http://www.cnblogs.com/zeze/p/590 ...

  4. 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)

    RAC在LINUX上使用NFS安装前准备(六) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇 ...

  5. Linux下命令行安装weblogic10.3.6

    Linux下命令行安装weblogic10.3.6 一.安装前准备工作: 1.创建用户useradd weblogic;创建用户成功linux系统会自动创建一个和用户名相同的分组,并将该用户分到改组中 ...

  6. Linux下MongoDB服务安装

    Linux下MongoDB服务安装 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB是一个介于关系数据库和非关系数据 ...

  7. Linux Hadoop2.7.3 安装(单机模式) 二

    Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 YARN是Hadoop 2.0中的资源管理系统,它的基本设计思想是将MRv1中的Jo ...

  8. .Net Core Linux centos7行—hyper-v安装linux系统和.net core sdk

    下载linux系统,选择安装centos7 下载地址:https://www.centos.org/download/ 安装centos7 hyper-v选择新建虚拟机 根据向导一路next,虚拟机代 ...

  9. 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 ...

  10. Windows下的Memcache安装 linux下的Memcache安装

    linux下的Memcache安装: 1. 下载 memcache的linux版本,注意 memcached 用 libevent 来作事件驱动,所以要先安装有 libevent. 官方网址:http ...

随机推荐

  1. st_geometry、st_transform配置及问题汇总

    1.文件配置修改 路径上一定要使用双斜杠 2.使用sde账号登录,执行以下SQL,路径按照实际环境填写. select * from user_libraries; create or replace ...

  2. Sequelize的简单连接和使用

    Sequelize是一个基于Node.js的ORM框架 特点: 1.支持多种数据库:Sequelize支持多种关系型数据库,包括MySQL.PostgreSQL.SQLite和MSSQL等,适用于需要 ...

  3. 快速入门Mybatis完成基本CURD(注解实现)

    一.什么是Mybatis? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射. MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集. MyB ...

  4. Llama2-Chinese项目:5-推理加速

      随着大模型参数规模的不断增长,在有限的算力资源下,提升模型的推理速度逐渐变为一个重要的研究方向.常用的推理加速框架包含lmdeploy.FasterTransformer和vLLM等. 一.lmd ...

  5. Python FastAPI 获取 Neo4j 数据

    前提条件 先往Neo4j 里,准备数据 参考:https://www.cnblogs.com/vipsoft/p/17631347.html#创建传承人 搭建 FastAPI 项目:https://w ...

  6. 【JAVA基础】JAVA基础知识整理

    https://www.weixueyuan.net/java/rumen_1/ JAVA的三大版本 JDK.JRE.JVM JAVA安装与卸载 JDK结构 HelloWorld运行 编译型与解释型 ...

  7. Cursor,程序员的 AI 代码编辑助手

    相信大家都或多或少地听说过.了解过 chatGPT ,半个月前发布的 GPT-4 ,可谓是 AI 赛道上的一个王炸 那么今天咸鱼给大家分享一个开源的 AI 代码编辑器--Cursor,让各位程序员在编 ...

  8. JSP | IDEA 配置 JSP 模板

    新建 jsp 文件时的模板 在第 5 步输入下面模板代码: <%-- Created by IntelliJ IDEA. User: ${USER} Date: ${DATE} Time: ${ ...

  9. 3.1 《数据库系统概论》SQL概述及数据定义(模式SCHEMA、表TABLE、索引INDEX)

    前言 本篇文章学习书籍:<数据库系统概论>第5版 王珊 萨师煊编著 视频资源来自:数据库系统概论完整版(基础篇+高级篇+新技术篇) 由于 BitHachi 学长已经系统的整理过本书了,我在 ...

  10. springboot项目pom文件设置<profile>读取不同的配置文件(网上瞎copy的大把,测试过真实可用)

    这篇文章主要介绍关于springboot如何通过多个properties实现数据库环境部署时自动切换配置的两种方式,部署时切换方式和打包时Maven控制方式.