当前位置 博文首页 > 超负荷小生的博客:Centos7-pure-ftpd服务的安装及各种用户的登
第一步:更换yum源,下载pure-ftpd
yum install epel-release #添加yum源
yum clean all #清理yum
yum makecache #重新生成缓存
yum -y install pure-ftpd # 安装pure-ftpd
第二步:启动和关闭服务指令
systemctl start pure-ftpd #开启服务
systemctl restart pure-ftpd #重新启动服务
systemctl stop pure-ftpd #关闭服务
systemctl status pure-ftpd #查看状态
前提:关闭防火墙(也可以将所需端口或服务添加至防火墙),关闭SElinux
sytemctl stop firewalld
setenforce 0
1、匿名用户的上传、下载的测试
(1)修改配置文件pure-ftpd.conf
vim /etc/pure-ftpd/pure-ftpd.conf # 编辑配置文件
AnonymousCantUpload no #将yes改为no,允许匿名上传文件
(2)重启服务,进行匿名测试 。
注意:默认文件夹在 /var/ftp/ ,如果没有ftp文件,需要新建ftp文件,并且可以在ftp下新建一个777的pub文件夹。账户在pub文件夹下进行put和get操作
systemctl restart pure-ftpd
2、Centos7实体用户上传和下载测试
(1)新建用户
useradd pureuser -d /var/ftp
passwd pureuser
(2)上传和下载测试
3、虚拟用户使用pureDB的上传和下载测试
(1)创建虚拟用户和创建用户信息数据库文件
pure-pw useradd anonyuser -u pureuser -d /var/ftp -m
#回车后,输入密码即可创建成功
#-u 是将虚拟用户与系统用户关联起来,使用虚拟用户登录后会以系统用户身份读写
#-d 是指定家目录,使虚拟用户只能访问指定的目录
pure-pw mkdb #创建用户信息数据库(创建完后必须操作)
其他操作
pure-pw list #查看用户列表
pure-pw show user #查看用户信息
(2)修改配置文件,打开PureDB功能
vim /etc/pure-ftpd/pure-ftpd.conf # 打开配置文件
PureDB /etc/pure-ftpd/pureftpd.pdb #取消注解,开启该配置
(3) 重启服务进行上传和下载测试
systemctl restart pure-ftpd
4、虚拟用户使用Mysql的上传和下载测试
(1)安装mysql
yum install -y mariadb mariadb-server
systemctl start mariadb
(2)进行初始化设置 mysql_secure_installation, 设置root密码,其余的选项都选y
mysql_secure_installation # 设置root密码,其余的都选y
mysql -uroot -p123456 回车 #即可进入
(3)创建数据库,创建表,并插入相应的数据 (易错点,认真阅读注解)
#创建数据库
create database pureftpd;
#进入创建的数据库
use pureftpd;
#创建数据表users表
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));
#退出数据库
quit
#查看自己要依托的实体用户的UID 和 GID
cat /etc/passwd
#结果中有一条是我们刚刚创建的实体用户,我们的虚拟用户依托该实体用户进行相关操作,UID和GID都是1001
结果示例: pureuser:x:1001:1001::/var/ftp:/bin/bash
#登录mysql,进行插入数据,其中1001需要和上面查出的结果保持一致,anonymysqluser是随意起的名字,密码随意,一会测试登录使用
use pureftpd; #选择数据库
# 插入数据,这里的加密是password加密方式,还可以是其他的md5等,需要和pureftpd-mysql.conf配置文件保持一致
insert into users values('anonymysqluser',password('123456'),1001,1001,'/var/ftp');
(4)修改pure-ftpd.conf的配置文件
vim /etc/pure-ftpd/pure-ftpd.conf
MySQLConfigFile /etc/pure-ftpd/pureftpd-mysql.conf #取消注解,使用mysql配置
PureDB /etc/pure-ftpd/pureftpd.pdb #添加注解,使其不起作用,防止冲入
(5)修改对应的mysql的配置文件 (易错点,认真阅读注解)
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 123456 #mysql连接密码
MYSQLDatabase pureftpd #数据库名称,需要和创建数据库时的名称保持一致
MYSQLCrypt password #加密函数,需要和插入insert语句中使用的加密函数保持一致
(6)登录测试上传和下载
systemctl restart pure-ftpd
cs