前言

vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,特点是小巧轻快,安全易用,目前在开源操作系统中常用的FTP套件主要有proftpd、pureftp、ServU和wu-ftpd等。本文将讲解vsftpd的基本功能和如何基于PAM和MySQL/MariaDB实现虚拟用户访问控制。

基础配置介绍

工作原理

状态响应码

1xx:信息码

2xx:成功状态码

3xx:进一步提示补全信息的状态码

4xx:客户端错误

5xx:服务器端错误

用户认证

虚拟用户:仅用于访问某特定服务中的资源

系统用户通过ftp访问的资源的位置:用户自己的家目录

虚拟用户通过ftp访问的资源的位置:给虚拟用户指定的映射成为的系统用户的家目录

配置文件

vsftpd在CentOS6.6的配置文件

配置文件详解

虚拟用户访问控制

虚拟用户

所有的虚拟用户会被统一映射为一个指定的系统账号,访问的共享位置即为此系统账号的家目录

各虚拟用户可被赋予不同的访问权限,通过匿名用户的权限控制参数进行指定

虚拟用户的存放方式:

hash编码的文件(奇数行为用户名,偶数行为密码)

关系型数据库(通过第三方模块pam-mysql实现认证)

工作原理

配置过程

环境准备

FTP服务器:172.16.10.10(CentOS6.6)

数据库服务器:172.16.10.211(CentOS6.6),MariaDB

安装所需程序

首先FTP服务器需要安装vsftpd和pam_mysql,数据库服务器需要安装MySQL或者MariaDB,我这里已经安装完毕了,就直接开始配置了

创建虚拟用户

vsftpd配置

配置虚拟用户具有不同的访问权限

vsftpd可以在配置文件目录中为每个用户提供单独的配置文件以定义其ftp服务访问权限,每个虚拟用户的配置文件名同虚拟用户的用户名。配置文件目录可以是任意未使用目录,只需要在vsftpd.conf指定其路径及名称即可。

配置vsftpd为虚拟用户使用配置文件目录

创建所需要目录,并为虚拟用户提供配置文件

配置虚拟用户的访问权限

虚拟用户对vsftpd服务的访问权限是通过匿名用户的相关指令进行的。比如,如果需要让tom用户具有上传文件的权限,可以修改/etc/vsftpd/vusers_config/tom文件,在里面添加如下选项即可。

启动服务,设置开机自启,查看21端口是否被监听

测试虚拟用户

The end

好了,FTP基于PAM和MySQL/MariaDB的虚拟用户访问控制,就说到这里啦,配置ftp过程中请确保不要敲多空格,否则是会报错或者登录失败的,我就深受其害,这确实是个坑,部署过程中遇到问题可留言,多谢关注呦。以上仅为个人学习整理,如有错漏,大神勿喷~~~

本文转自 北城书生  51CTOhttp://blog.51cto.com/scholar/1636190博客,原文链接:http://blog.51cto.com/scholar/1636190

mariadb pam_mysql_FTP基于PAM和MySQL/MariaDB实现虚拟用户访问控制相关推荐

  1. 基于SSL的mysql(MariaDB)主从复制

    一.前言 备份数据库是生产环境中的首要任务,重中之重,有时候不得不通过网络进行数据库的复制,这样就需要保证数据在网络传输过程中的安全性,因此使用基于SSL的复制会大加强数据的安全性 二.准备工作 1. ...

  2. db_mysql.so_vsftpd在mysql上配置虚拟用户指南

    作者:香农青岛数据恢复中心 2013-11-07 11:01 Overview VSFTPD (Very Secure FTP Daemon) is a Secure FTP server for u ...

  3. 燃情7月,ACMUG厦门、上海双城技术沙龙及MySQL/MariaDB创始人Monty中国行活动

    在这火热的7月里,经过彭立勋同学的周密协调,ACMUG将盛情邀请MariaDB/MySQL创始人Monty先生来到中国,和国内大规模使用MariaDB / MySQL的互联网大厂以及广大从业者进行深入 ...

  4. vsftpd pam mysql_vsftpd+mysql+pam实现基于数据库的安全的ftp服务

    1.方案分析 mysql:存储用户信息的,可以放vsftpd用户的信息 pam:可插入用户认证模块 VSFTPD:安全的ftp服务 2涉及到的知识点: vsftp 软件安装.启动服务,监听端口,配置文 ...

  5. FTP服务学习笔记之基于MySQL+PAM的vsftpd虚拟用户

    基于mysql+PAM的vsftpd虚拟用户配置 一.实验说明 操作系统:Redhat5.8_X64bit 实验平台:VMware Workstation 所需要的软件包:pam_mysql-0.7R ...

  6. 如何在 MySQL / MariaDB 中导入导出数据,导入导出数据库文件、Excel、CSV

    文章目录 本教程将详细讲解 1. MySQL / MariaDB 数据库数据「导出」 2. MySQL / MariaDB 数据库数据「导入」 3. 使用「卡拉云」一键导入导出 MySQL / Mar ...

  7. linux ftp 团队认证,linux下ftp和ftps以及ftp基于mysql虚拟用户认证服务器的搭建

    linux下ftp和ftps以及ftp基于mysql虚拟用户认证服务器的搭建 1.FTP协议:有命令和数据连接两种 命令连接,控制连接:21/tcp 数据连接: 主动模式,运行在20/tcp端口 和 ...

  8. linux ftp mysql_linux下ftp和ftps以及ftp基于mysql虚拟用户认证服务器的搭建

    命令连接,控制连接:21/tcp 数据连接: 主动模式,运行在20/tcp端口 和 被动模式,运行在随机端口 数据传输模式(自动模式):有二进制(mp3,jpg等)和文本(html)两种传输模式 ft ...

  9. vsftp服务器mysql认证_基于mysql控制vsftp的用户认证机制

    一.简介 vsftpd 是"very secure FTP daemon"的缩写,安全性是它的一个最大的特点.vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以 ...

最新文章

  1. [j2me]类似于OperaMini二级菜单界面演练[1]
  2. IO概述(概念分类)
  3. 殷墟 太行山 红旗渠
  4. 自从安上了“AI”,这些商务经理天天按时下班了
  5. 我的docker随笔20:多平台docker镜像下载
  6. Oracle 11g 的官方支持周期和时限
  7. Delphi 中的MD5实现方法及delphi2009和delphi2010中用法
  8. xpath返回结果是否有值_【自学C#】|| 笔记 41 DataReader:读取查询结果
  9. 计算机软件怎么装,电脑拷贝的软件怎么安装
  10. 多线程编程warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 错误解决
  11. php流量计算单位,数据流量单位换算(流量单位的读法和换算)
  12. freemarker导出excel
  13. .net是什么域名?域名注册需要实名制吗?
  14. u盘启动会进入w ndows安装程序,将Windows装进U盘中,随身携带Windows系统
  15. VLookup函数详细教程
  16. ping——判断两个设备是否在同一个局域网下
  17. 学习Java可以从事什么工作?
  18. 如何快速理解IMU积分、预积分、误差、方差
  19. 基于JAVA进出货管理系统计算机毕业设计源码+数据库+lw文档+系统+部署
  20. 给出一个大于或等于3的正整数,判断它是不是一个素数

热门文章

  1. Java开发的KTV系统 功能非常齐全 完整源码
  2. 创业就像被闪电击中 必须一路专注
  3. 打开doc文档提示Word 遇到问题需要关闭以安全模式启动解决办法
  4. AI人工智能Python实现简单人机对话:你好,人类!
  5. Ventoy制作启动盘、刷机盘(多个系统的刷机或启动盘)
  6. 车企新品牌、新车型层出,数据采集分析告诉你到底哪家强
  7. 动态规划-状态转移方程练习
  8. T3在2K以上分辨率报错
  9. iPhone 4S在美国区已供不应求
  10. Unity 3D作业八:粒子系统