当前位置: 首页 > news >正文

mysql vsftp_vsftp配置验证方式mysql和文件虑拟用户

以下内容在ubuntu 9.04 server系统上测试通过

用apt-get install vsftp安装的时候相关的文件位置:

主配置文件:/etc/vsftpd.conf

验证配置文件/etc/pam.d/vsftpd

重启:/etc/init.d/vsftpd restart

vsftp Mysql验证方式:

MYSQL已经安装在/usr/local/mysql

直接安装vsftp

sudo apt-get install vsftp

安装pam_mysql

下载:http://sourceforge.net/projects/pam-mysql/

解压:

tar zxvf pam_mysql....tar.gz

cd pam_mysql...

./configure--with-openssl --with-mysql=/usr/local/mysql/

如果出现:configure: error: Cannot find pam headers. Please check if your system is ready for pam module development

安装libpam0g-dev:

sudo apt-get install libpam0g-dev

然后编译并安装:

sudo make install

会在/lib/security/创建:pam_mysql.so

创建数据库:ftp

create database ftp;

创建表:

CREATE TABLE IF NOT EXISTS `users` (

`id` int(10) NOT NULL AUTO_INCREMENT,

`name` char(32) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,

`passwd` char(32) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

CREATE TABLE `ftp`.`logs` (

`id` INT(10) NOT NULL AUTO_INCREMENT,

`pid` INT( 10 ) NOT NULL  ,

`content` TEXT NOT NULL ,

`user` VARCHAR( 32 ) NOT NULL ,

`host` VARCHAR( 32 ) NOT NULL ,

`rhost` VARCHAR( 32 ) NOT NULL ,

`logtime` TIMESTAMP NOT NULL ,

PRIMARY KEY ( `id` )

) ENGINE = MYISAM ;

创建一个MYSQL用户:ftp

只把ftp库给此用户:

GRANT ALL PRIVILEGES ON `ftp` . * TO 'ftp'@'localhost' WITH GRANT OPTION ;

增加mysql验证方式:

增加一个文件:/etc/pam.d/vsftpd.mysql内容如下

auth required /lib/security/pam_mysql.so config_file=/srv/ftp/pam_mysql.conf

account required /lib/security/pam_mysql.so config_file=/srv/ftp/pam_mysql.conf

然后新建一个/srv/ftp/pam_mysql.conf

内容如下:

验证部分:

users.host=localhost

users.database=ftp

users.db_user=ftp

users.db_passwd=123456

users.table=users

users.user_column=name

users.password_column=passwd

users.password_crypt=0此处为0时密码为明文,

相关文章:

  • php mysql 连接运算符_php – MINUS运算符在MySQL?
  • centos7.3中安装mysql_CentOS7.3中安装MySQL5.6
  • qstring取前几个_QT中QString 类的使用--获取指定字符位置、截取子字符串等
  • 怎么用yum安装mysql数据库_使用yum如何安装mysql数据库讲析
  • java完全面向对象吗_浅谈对Java为何是完全面向对象语言
  • java getbean不同实现_Spring Boot 2 实战:根据条件来自动配置不同逻辑的Bean
  • 孝感 java_孝感java工资一般多少,孝感java工资待遇,孝感java工资待遇到多少
  • java struct2拦截器_Java struts2 拦截器 interceptors
  • JAVA安卓4.4.4_Android源码4.4.4_r1下载和编译
  • java 设置listview单元格颜色_动态改变Listview的item背景颜色和item中字体的颜色
  • 最长递增子序列 java_动态规划深入6 最长递增子序列
  • yml mysql参数_yml配置--给参数设置默认值
  • ant java eclipse_(转)Eclipse中使用Ant
  • java json merge_JavaScript 如何合并两个Json对象
  • java setselectionend_Java Gallery.setSelection方法代码示例
  • 【comparator, comparable】小总结
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • leetcode46 Permutation 排列组合
  • React-Native - 收藏集 - 掘金
  • ucore操作系统实验笔记 - 重新理解中断
  • 百度地图API标注+时间轴组件
  • 初识MongoDB分片
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 微信小程序设置上一页数据
  • 小程序 setData 学问多
  • 原生Ajax
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • (14)学习笔记:动手深度学习(Pytorch神经网络基础)
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (2)nginx 安装、启停
  • (2015)JS ES6 必知的十个 特性
  • (27)4.8 习题课
  • (k8s中)docker netty OOM问题记录
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (PWM呼吸灯)合泰开发板HT66F2390-----点灯大师
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (黑马C++)L06 重载与继承
  • (每日持续更新)jdk api之FileReader基础、应用、实战
  • (七)MySQL是如何将LRU链表的使用性能优化到极致的?
  • (一)u-boot-nand.bin的下载
  • (转)编辑寄语:因为爱心,所以美丽
  • (转)母版页和相对路径
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等
  • .NET Micro Framework初体验
  • .Net 高效开发之不可错过的实用工具
  • .NET/C# 如何获取当前进程的 CPU 和内存占用?如何获取全局 CPU 和内存占用?
  • .net下简单快捷的数值高低位切换
  • .NET中的十进制浮点类型,徐汇区网站设计
  • .NET中使用Redis (二)
  • /proc/stat文件详解(翻译)
  • [ C++ ] STL---string类的使用指南
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce