一、安装下载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) 12 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协议
总结
以上就是
为各位朋友分享的 相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多 等着你!