实验:实现基于MYSQL的FTP虚拟用户
来源:互联网 发布:数字化校园软件 编辑:程序博客网 时间:2024/06/14 05:37
说明:本实验在两台centos主机上实现,一台作为FTP服务器,一台做mysql数据库服务器。
注意:须把selinux跟防火墙关闭。
1.在FTP服务器安装所需要的包组。
[root@anuuy ~]# yum install vsftpd [root@anuuy ~]# yum groupinstall "development tools" [root@anuuy ~]# yum install mariadb-devel [root@anuuy ~]# yum install pam-devel #顺序无所谓。 [root@anuuy ~]# yum install openssl-devel [root@anuuy ~]# yum install mariadb [root@anuuy ~]# systemctl start vsftpd #启动服务 [root@anuuy ~]# systemcrl start mariadb #启动数据库服务
2.在FTP服务器编译pam_mysql 安装包地址http://pam-mysql.sourceforge.net/
[root@anuuy ~]# tar xvf pam_mysql-0.7RC1.tar.gz #yum安装也可以,本机没有所以编译安装的,yum可以安装请忽略此步骤。[root@anuuy ~]# cd pam_mysql-0.7RC1/ #进入解压缩目录执行以下操作[root@anuuy ~]# ./configure --with-mysql=/usr --with-pam=/usr --with-pam-mods-dir=/lib64/security[root@anuuy ~]# make && make install #安装
3.在ftp服务器,准备虚拟用户映射的系统用户
[root@anuuy ~]# useradd -s /sbin/nologin -d /app/ftpsite ftpvuser #创建系统账户[root@anuuy ~]# chmod 555 /app/ftpsite/ #给ftpsite文件读和执行权限[root@anuuy ~]# cd /app/ftpsite/ #进入创建upload文件[root@anuuy ~]# mkdir upload #创建文件[root@anuuy ~]# chown ftpvuser upload #更改upload文件的属主为ftpvuser
4.在mysql 服务器,准备用户和数据表
[root@sunny ~]# yum install mariadb-server #安装数据库[root@sunny ~]# systemctl start mariadb #启动数据库[root@sunny ~]# mysql #进入数据库MariaDB [(none)]> create database ftpdb; #创建名称为ftpdb的数据库MariaDB [(none)]> grant all on ftpdb.* to ftpuser@'172.18.19.%' identified by 'centos'; #授权MariaDB [(none)]> create table ftpvusers (id int unsigned auto_increment primary key,username char(30),password char(48)); #创建表 MariaDB [(none)]> insert ftpvusers (username,password) values ('ftpuser1',password('centos')),('ftpuser2',password('centos')); #添加记录MariaDB [ftpdb]> flush privileges; #刷新策略
5.在ftp服务器,创建PAM配置文件
[root@anuuy ~]# vim /etc/pam.d/ftp.mysqlauth required pam_mysql.so user=ftpuser passwd=centos host=192.168.25.108 db=ftpdb table=ftpvusers usercolumn=username passwdcolumn=password crypt=2account required pam_mysql.so user=ftpuser passwd=centos host=192.168.25.108 db=ftpdb table=ftpvusers usercolumn=username passwdcolumn=password crypt=2
6.在FTP服务器调用ftp.mysql文件。
[root@anuuy ~]# vim /etc/vsftpd/vsftpd.confpam_service_name=ftp.mysql #更改为ftp.mysqlguest_enable=YES #添加guest_username=ftpvuser #操作系统账号映射成虚拟账号user_config_dir=/etc/vsftpd/vusers.conf.d/ #指定虚拟用户权限配置文件的所在的目录
7.在FTP服务器上创建虚拟用户权限配置文件
[root@anuuy ~]# mkdir /etc/vsftpd/vusers.conf.d/[root@anuuy ~]# vim /etc/vsftpd/vusers.conf.d/ftpuser1 #创建文件anon_upload_enable=YES #写入此代码,代码意思:打开匿名上传文件[root@anuuy ~]# vim /etc/vsftpd/vusers.conf.d/ftpuser2local_root=/app/ftpsite2/ #指定默认访问家目录anon_upload_enable=YES #允许匿名用户上传文件[root@anuuy ~]# mkdir -pv /app/ftpsite2/upload[root@anuuy ~]# chown ftpvuser /app/ftpsite2/upload
完成!如有错误,请留言.^_^.
阅读全文
0 0
- 实验:实现基于MYSQL的FTP虚拟用户
- 实验:实现基于mysql的ftp虚拟用户
- 实现基于文件验证的vsftpd虚拟用户和基于MYSQL验证的vsftpd虚拟用户
- FTP基于PAM和MySQL/MariaDB实现虚拟用户访问控制
- mysql管理ftp的虚拟用户
- 实现基于MYSQL验证的vsftpd虚拟用户
- 实现基于mysql验证的vsftpd虚拟用户
- ftp的虚拟用户{转载}
- ftp虚拟用户的配置
- PureFtp+PureAdmin:实现基于虚拟账号的FTP服务器
- Ubunton下搭建ftp服务器 实现虚拟用户、本地用户、匿名用户的登陆及权限
- 构建FTP服务器,基于SSL,基于虚拟用户
- ubuntu下vsftpd的配置(虚拟用户基于MySQL验证)
- RHEL 5服务篇—部署FTP文件传输服务(二)部署基于虚拟用户的FTP服务
- FTP服务器中虚拟用户的搭建
- Linux FTP 虚拟用户的使用配置
- Linux FTP 虚拟用户的使用配置
- Linux下的Ftp虚拟用户配置
- Java面向对象
- binary-tree-postorder-traversal java code
- 数组的各种操作
- 利用I/O复用模型实现一个时间同步服务器
- [NOIP模拟] 匹配
- 实验:实现基于MYSQL的FTP虚拟用户
- SpringBoot 使用AOP处理请求
- Java WebSocket连接302错误 或者 握手失败错误
- atm(选做)——实现信用卡程序 python
- CKeditor4.7.3标准版图片上传及相关配置
- JDBC优化之路-2(添加工具类DBUtil)
- 好的博客0709
- 【Android】Android6.0+ 动态申请权限
- typedef和#define的用法与区别