您的位置:首页 > 编程语言 > PHP开发

FTP使用外部数据源

2019-01-23 23:28 921 查看

第一步安装FTP组件

这个就不说了

第二步安装开发工具组件

yum -y groupinstall "Development Tools" "Server Platform Development"

第三步安装数据库等功能组件

yum -y install mariadb-server openssl-devel pam-devel mariadb-devel


mariadb的程序文件大部分都在/usr/bin下

openssl 的主程序也在/usr下

pam程序 在/usr下 pam_mod的目录在/usr/lib64/security

第四步启动MYSQL服务

systemctl start mariadb.service

第五步安装PAM_MYSQL插件

http://pam-mysql.sourceforge.net/ 这里下载

解压、编译、安装

tar -xf pam_mysql-0.7RC1.tar.gz

 ./configure --with-mysql=/usr --with-openssl=/usr --with-pam=/usr --with-pam-mods-dir=/usr/lib64/security

make && make install

输出以上内容表示PAM-MYSQL插件安装成功

第六步 数据库操作

1、创建数据库

2、切换数据库

3、创建表格

4、查看表格结构

5、插入测试用户信息

6、查看插入结果

7、给连接用户授权(程序之间的通信用户)

8、测试程序通信用户的有效性

第七步:修改认证配置文件

user/passwd 用于与数据库对接的用户名和密码

host 指定数据库IP地址

db 用户信息所在的数据库

table 用户信息所在的表

usercolumn 用户名列

passwdcolumn 密码列

crypt 数据库中用户密码的加密方式

pam_mysql.so 这个是相对路径,相对/lib64/security/

auth 和 account 是一对  auth 指定认证方式 account 负责认证

第八步:创建系统用户

每一个虚拟用户最终会映射到一个系统用户

第九步:修改vsftpd.conf 配置文件

第十步:启动/重启vsftpd服务

第十一步:测试

额外补充

a、虽然外部数据源用户映射到了系统用户,但是上传数据还是使用的是匿名用户权限,所以如果外部数据源用户想上传文件,就需要开启匿名用户上传功能,同时映射系统用户还要对目标目录有写权限。FTP根目录不能有写权限,再次提醒,如果想上传文件,需要在FTP根目录下创建一个目录修改权限再上传。

b、可以根据用户给权限,user_config_dir(每个用户的配置文件路径,文件名与用户名相同)。

测试一个功能,一个用户可以上传文件,另一个用户不能上传文件

1、vsftpd.conf中增加一个配置参数

2、根据用户修改权限

上面是zhengyue的测试过程

下面看看yueyu208



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息