vsftpd+mysql+apache实现给虚拟用户分配不同目录及权限并实现远程管理

简介:

 一.vsftpd配置.

1.       mysql配置见”vsftpd0(虚拟目录视频) mysql(第四张光盘)”.

(mysql中创建了4个虚拟用户test1,test2,test3,test4)

2.       vsftpd(/etc/vsftpd/vsftpd.conf)主配置文件配置内容

 

其中anonymous_enable=NO   //禁止匿名访问

Guest_enable=YES   guest_username=vsftpd  //为指定mysql中建立的虚拟用户到本地用户vsftpd下,即所有虚拟用户的共同权限可在本机vsftpd用户下修改.

Pam_service_name=vsftpd.mysql   //为mysql数据库文件

User_config_dir=/etc/vsftpd/vsftpd_user   //在/etc/vsftpd下创建vsftp_user文件夹,在其中创建与虚拟用户同名的文件.

 

以下是这4个文件中的配置条目

 

 

anon_world_readable_only=NO  //允许浏览,下载

anon_umask=022              //允许匿名用户的权限(反码),非常重要的命令
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES   //
允许写入,上传以及建立目录

anon_other_write_enable=YES   //允许改名,删除文件

chroot_local_user=YES          //禁锢本用户到本目录中

local_root=/home/vsftpd/test4   //设定虚拟用户所在的目录

3.    虚拟用户目录权限.

将之前创建的vsftpd本地用户在本地/home/vsftpd下创建的文件夹中添加4个与虚拟用户同名的文件夹test1,test2,test3,test4,并将vsftpd文件夹设定为711,将其4个子目录的属主改为vsftpd,权限仍为711.


这样可配合apache为远程用户建站提供虚拟空间

二.APACHE配置

1.编译安装Apache服务器软件包

 

 

编译之前确认gcc软件包是否安装

 

如果未安装可进入图形界面输入如下命令安装gcc编译软件包

System-config-packages

在httpd的源代码目录中使用 ./configure 命令完成编译前的配置工作

 

完成配置后,执行make和make install命令进行和完成程序的编译

 

2.APACHE配置

Apache服务器安装在系统的/usr/local/apaches2中,该目录包括服务器运行需要的所有程序

 

Bin目录中包括了Apache运行和管理所需的执行程序,其中httpd是服务器的执行程序,apachectl是服务程序的启动脚本.

 

Lib目录保存Apache服务器运行所需的库文件

 

Conf目录用于保存Apache的配置文件,其中httpd.conf是Apache服务器的主配置文件.

 

Htdocs目录是Apache服务器的文档根目录,该目录将作为WEB服务器的根目录

3.Apache服务器的启动和停止

 

 

4.httpd.conf配置文件解析

去除主配置文件的多余注释

 

在实际的应用系统中,Apache需要设置为系统启动时自动运行,因此需要将apachectl写入/etc/rc.local文件中,也就是在该文件末尾加入启动脚本

/usr/local/apache2/bin/apachectl start

 

5.域名虚拟主机配置

在apache服务器的httpd.conf配置文件中进行域名虚拟主机的设置内容

 

 

在主配置文件中添加如下内容

 

 

修改/etc/hosts文件,添加如下配置(如做BIND服务器另做相应配置)

 

从新启动httpd服务

在windows客户端如下路径添加相同配置

 

在客户机浏览器分别输入ftp://www.test1.com ftp://www.test2.com ftp://www.test3.com ftp://www.test4.com, 在提示的对话框中输入帐户名test1,密码123, 登陆后添加含有如下内容的HTML文件.

“This is a testX webpage.”

在客户机浏览器中分别输入www.test1.com,www.test2.com,www.test3.com,www.test4.com观察结果

 

 

 

 

 

      本文转自 showerlee 51CTO博客,原文链接:http://blog.51cto.com/showerlee/1118574,如需转载请自行联系原作者


 

 





相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
网络协议 关系型数据库 MySQL
mysql8.0远程连接权限设置
mysql8.0远程连接权限设置
862 0
|
Ubuntu 安全 关系型数据库
安装与配置MySQL 8 on Ubuntu,包括权限授予、数据库备份及远程连接指南
以上步骤提供了在Ubuntu上从头开始设置、配置、授权、备份及恢复一个基础但完整的MySQL环境所需知识点。
1425 7
|
关系型数据库 MySQL 数据库
mysql添加用户并设置数据库权限
mysql添加用户并设置数据库权限
419 1
|
SQL NoSQL 关系型数据库
|
存储 关系型数据库 MySQL
基于案例分析 MySQL 权限认证中的具体优先原则
【10月更文挑战第26天】本文通过具体案例分析了MySQL权限认证中的优先原则,包括全局权限、数据库级别权限和表级别权限的设置与优先级。全局权限优先于数据库级别权限,后者又优先于表级别权限。在权限冲突时,更严格的权限将被优先执行,确保数据库的安全性与资源合理分配。
458 4
|
关系型数据库 MySQL Docker
docker环境下mysql镜像启动后权限更改问题的解决
在Docker环境下运行MySQL容器时,权限问题是一个常见的困扰。通过正确设置目录和文件的权限,可以确保MySQL容器顺利启动并正常运行。本文提供了多种解决方案,包括在主机上设置正确的权限、使用Dockerfile和Docker Compose进行配置、在容器启动后手动更改权限以及使用 `init`脚本自动更改权限。根据实际情况选择合适的方法,可以有效解决MySQL容器启动后的权限问题。希望本文对您在Docker环境下运行MySQL容器有所帮助。
3243 1
|
安全 关系型数据库 MySQL
Navicat工具设置MySQL权限的操作指南
通过上述步骤,您可以使用Navicat有效地为MySQL数据库设置和管理用户权限,确保数据库的安全性和高效管理。这个过程简化了数据库权限管理,使其既直观又易于操作。
1965 4
|
关系型数据库 MySQL
MySQl优化:使用 jemalloc 分配内存
MySQl优化:使用 jemalloc 分配内存
|
安全 关系型数据库 MySQL
node实战——后端koa结合jwt连接mysql实现权限登录(node后端就业储备知识)
node实战——后端koa结合jwt连接mysql实现权限登录(node后端就业储备知识)
438 3
|
安全 关系型数据库 应用服务中间件
连接rds设置网络权限
连接阿里云RDS需关注:1) 设置白名单,允许特定IP访问;2) 选择合适网络类型,如VPC或经典网络;3) 确保VPC内路由与安全组规则正确;4) 同VPC内可使用内网地址连接;5) 可启用SSL/TLS加密增强安全性。记得遵循最小权限原则,确保数据库安全。不同服务商操作可能有差异,但基本流程相似。
1017 9

推荐镜像

更多