linux环境搭建Pure-ftpd服务器

一、安装下载pure-ftpd软件包

1、下载软件包

yum install epel-release(默认源无pure-ftpd)
yum install -y pure-ftpd

2、关闭防火墙和SELinux

systemctl stop firewalld
setenforce 0

3、开启服务

systemctl start pure-ftpd

二、本地用户搭建(本地用户可以直接访问)

1、创建本地用户。

useradd hehe  //可以通过-d指定用户的家目录
passwd hehe

2、创建测试文件。

vim /home/hehe/a.txt

Windows则在cmd所在路径下创建测试文件b.txt

3、重启服务,进行登录测试。

systemctl restart pure-ftpd

在这里插入图片描述在这里插入图片描述

三、匿名用户搭建

1、修改配置文件,打开上传权限。

vim /etc/pure-ftpd/pure-ftpd.conf
修改 AnonymousCantUpload    yes 为 no

2、创建测试文件并赋权限。

vim /var/ftp/a.txt
chmod -R 777 /var/ftp/

Windows则在cmd所在路径下创建测试文件b.txt

3、重启服务,进行登录测试。

systemctl restart pure-ftpd

在这里插入图片描述在这里插入图片描述

四、虚拟用户搭建

1、创建账户,配置权限。

groupadd ftpgroup
useradd -g ftpgroup -s /sbin/nologin -d /var/ftp -M ftpuser

2、创建虚拟账户,设置密码。

pure-pw useradd haha -u ftpuser -d /var/ftp -m

3、创建用户信息数据库文件。

pure-pw mkdb
pure-pw list                 #查看用户列表
pure-pw useradd user -u www -d /data/www/wordpress    #添加新的ftp用户
pure-pw passwd user          #修改密码
pure-pw usermod user -d /data/www/web                 #修改用户的上传路径
pure-pw show user            #查看用户信息

4、修改配置文件,打开PureDB功能。

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

5、赋权限。

chmod -R 777 /var/ftp/

6、重启服务,进行登录测试。

systemctl restart pure-ftpd

在这里插入图片描述在这里插入图片描述

采用Mysql认证方式

1、安装mysql软件包

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server

#开启服务
systemctl start mysqld

2、查看mysql登录密码(默认没有密码),添加密码。

grep 'temporary password' /var/log/mysqld.log           
 (如果出不来密码的话  rm -rf /var/lib/mysql   systemctl restart mysqld)
mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=password("12345678") where user='root';
mysql> flush privileges;
mysql> exit;  

3、创建数据库和用户表,插入测试数据。

mysql -uroot -p12345678

#创建数据库
create database pureftpd;
#切换数据库
use pureftpd;
#创建用户表
CREATE TABLE users (  User VARCHAR(255) BINARY NOT NULL,  Password VARCHAR(255) BINARY NOT NULL,  Uid INT NOT NULL default '-1',  Gid INT NOT NULL default '-1',  Dir VARCHAR(255) BINARY NOT NULL, PRIMARY KEY (User));
#插入数据
insert into users values('test',password('123456'),1000,1000,'/var/ftp');

4、修改配置文件,采用mysql认证方式。

vim /etc/pure-ftpd/pure-ftpd.conf
打开  MySQLConfigFile /etc/pure-ftpd/pureftpd-mysql.conf
关闭  PureDB /etc/pure-ftpd/pureftpd.pdb
关闭  PAMAuthentication   yes

5、修改mysql对应的配置文件pureftpd-mysql.conf。

vim /etc/pure-ftpd/pureftpd-mysql.conf

MYSQLServer     127.0.0.1    #跟MYSQLSocket互斥,用一个就行
#MYSQLSocket     /var/lib/mysql/mysql.sock
MYSQLPort       3306
MYSQLUser       root         #mysql连接用户
MYSQLPassword   12345678     #mysql连接密码
MYSQLDatabase   pureftpd     #数据库名称
MYSQLCrypt      password     #加密函数

6、重启服务,进行登录测试。

systemctl restart pure-ftpd

在这里插入图片描述在这里插入图片描述

五、pure-ftp服务访问日志查看

cat /var/log/pureftpd.log

在这里插入图片描述

ChrootEveryone yes //锁定所有用户到家目录中
# TrustedGID 100 //信任组ID100,可以不锁定
MaxClientsNumber 50 //最大的客户端数量
MaxClientsPerIP 8 //同一个IP允许8个链接
DisplayDotFiles no //不显示隐藏文件
AnonymousOnly no //只允许匿名用户
NoAnonymous yes//不允许匿名用户
DontResolve yes //禁止反向解析
MaxIdleTime 10 //最大空闲10分钟
# LDAPConfigFile /etc/pureftpd-ldap.conf //LDAP配置文件目录
# MySQLConfigFile /etc/pureftpd-mysql.conf//MySQL配置文件目录
# PGSQLConfigFile /etc/pureftpd-pgsql.conf //PGSQL配置文件目录
PureDB /usr/local/pureftpd/etc/pureftpd.pdb //虚拟用户数据库
# UnixAuthentication yes //主机认证
LimitRecursion 2000 8 //别表最大显示2000个文件,最深8个目录
AnonymousCanCreateDirs no //是否允许匿名用户创建目录
#MaxLoad 4 //最多可下载的数量
# PassivePortRange 30000 50000 //主动连接的端口范围
ForcePassiveIP 192.168.0.1 //这个地址总是直到匿名目录
# AnonymousRatio 1 10 //匿名用户上传下载速度比率
# UserRatio 1 10 //用户上传下载速度比率
# Bind 127.0.0.1,21 //绑定IP和端口
# AnonymousBandwidth 8 //匿名用户带宽8KB
# UserBandwidth 8 //用户带宽8KB
Umask 133:022 //文件和目录的umask
MinUID 1000 //用户ID至少要大于1000才能登陆
AllowUserFXP no //是否允许用户使用FXP协议登陆
AllowAnonymousFXP no //是否允许匿名用户使用FXP协议
ProhibitDotFilesWrite no //是否允许写入点文件
ProhibitDotFilesRead no //是否允许读取点文件
AnonymousCantUpload yes //不允许匿名用户上传
#NoChmod yes //不允许用户改变权限
#KeepAllFiles yes //允许用户断点续传
#Quota 1000:10//磁盘配额
#MaxDiskUsage 99 //磁盘的最大利用率
#NoRename yes //不允许自动重命名
IPV4Only yes //只允许使用IPV4协议
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一条代码鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值