《PHP、MySQL和Apache入门经典(第5版)》一一2.7 基本安全规则

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

本节书摘来自异步社区出版社《PHP、MySQL和Apache入门经典(第5版)》一书中的第2章,第2.7节,作者: 【美】Julie C. Meloni,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.7 基本安全规则

PHP、MySQL和Apache入门经典(第5版)
不管是在Windows、Linux/UNIX还是Mac OS X上运行MySQL,也不管是管理自己的服务器还是使用Internet服务提供商所提供的系统,你都必须理解基本安全规则。如果你通过Internet服务提供商访问MySQL,需要注意几个服务器安全性的方面。例如,一个非root用户不能够修改或绕过身份验证。不幸的是,很多Internet服务提供商对安全规则毫不在意,让他们的客户暴露在外,并且在很大程度上,他们没有意识到风险。

2.7.1 启动MySQL

增强MySQL的安全性从服务器的启动阶段就开始了。如果你不是服务器的管理员,就不能改变服务器的安全设置,但是,你肯定可以查看服务器的安全性,并且向Internet服务提供商报告弱点。

如果MySQL安装在Linux/UNIX或Mac OS X上,主要关心的问题应该是MySQL守护程序的所有者,它不应该是root。把守护程序作为一个非root用户的进程运行,例如mysql或database,将会限制恶意用户获得访问服务器或者覆盖文件的能力。

提示:

可以在Linux/UNIX或Mac OS X系统上使用ps(进程状态)命令来验证进程的所有者。
如果看到MySQL在系统上作为root用户运行,应立即联系你的Internet服务提供商并且提出意见。如果你是一个服务器管理员,应该作为非root用户启动MySQL进程,或者在启动命令行里指定首选的用户名。

image

例如,如果你想要作为用户mysql运行MySQL,使用如下命令。
image

然而,启动MySQL的推荐方法是通过MySQL安装的bin目录中的mysqld_safe启动脚本来进行。

image

2.7.2 增强MySQL连接的安全

你可以以几种不同的方式连接到MySQL监视器或者其他的MySQL应用程序,每种方式都有安全性风险。如果你的MySQL安装在自己的工作站上,和那些必须使用一个网络链接连接到他们的服务器的用户相比,你可以少些担忧。

如果MySQL安装在工作站上,最大的安全风险就是MySQL监视器或MySQL GUI管理工具没有关注到工作站的启动和运行。在这种情况下,任何人都可以利用并删除数据,插入假的数据,或者关闭服务器。如果你必须让工作站在一个公共领域内保持无监控状态,就使用一个带有密码的屏幕保护或锁定屏幕的机制。

如果MySQL安装在你的网络之外的一个服务器上,连接的安全性应该受到关注。就像任何通过Internet的数据传输一样,数据可能被截获。如果传输是未加密的,截获数据的人就可以将它们拼接起来并使用信息。假设未加密传输的数据是你的MySQL登录信息,一个恶意者现在就可以伪装成你来访问数据库了。

防止这种情况发生的一种方法,就是通过一个安全的链接(例如,Secure Shell,即SSH)来连接到MySQL。通过SSH,所有到远程机器的传输和来自远程机器的传输都是加密的。类似地,如果你使用一个基于Web的管理界面,例如phpMyAdmin(参见http://www.phpmyadmin.net/以了解更多信息,注意,phpMyAdmin在第1章所介绍的基于XAMPP的快速安装中,已经安装过了),或者你的Internet服务提供商所使用的另一种工具,请通过一个安全的HTTP连接来访问该工具。

在下一节中,你将会了解到MySQL的权限系统,这有助于使服务器获得更深层次的安全保护。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
1819
分享
相关文章
PHP 与现代 Web 应用的安全挑战与解决方案
随着 Web 应用的发展,PHP 作为一种广泛使用的服务器端脚本语言,面临着越来越复杂的安全挑战。本文探讨了当前 PHP 开发中常见的安全问题,并提供了相应的解决方案,帮助开发者构建更安全可靠的 Web 应用。 【7月更文挑战第8天】
108 1
|
5月前
|
PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全
本文深入探讨了PHP开发中防止SQL注入的方法,包括使用参数化查询、对用户输入进行过滤和验证、使用安全的框架和库等,旨在帮助开发者有效应对SQL注入这一常见安全威胁,保障应用安全。
160 4
PHP在Apache中如何运行?
PHP在Apache中如何运行?
163 5
阿里云 DataWorks 正式支持 SelectDB & Apache Doris 数据源,实现 MySQL 整库实时同步
阿里云数据库 SelectDB 版是阿里云与飞轮科技联合基于 Apache Doris 内核打造的现代化数据仓库,支持大规模实时数据上的极速查询分析。通过实时、统一、弹性、开放的核心能力,能够为企业提供高性价比、简单易用、安全稳定、低成本的实时大数据分析支持。SelectDB 具备世界领先的实时分析能力,能够实现秒级的数据实时导入与同步,在宽表、复杂多表关联、高并发点查等不同场景下,提供超越一众国际知名的同类产品的优秀性能,多次登顶 ClickBench 全球数据库分析性能排行榜。
|
5月前
|
PHP在Web开发中的安全实践与防范措施###
【10月更文挑战第22天】 本文深入探讨了PHP在Web开发中面临的主要安全挑战,包括SQL注入、XSS攻击、CSRF攻击及文件包含漏洞等,并详细阐述了针对这些风险的有效防范策略。通过具体案例分析,揭示了安全编码的重要性,以及如何结合PHP特性与最佳实践来加固Web应用的安全性。全文旨在为开发者提供实用的安全指南,帮助构建更加安全可靠的PHP Web应用。 ###
87 1
win7系统搭建PHP+Mysql+Apache环境+部署ecshop项目
这篇文章介绍了如何在Windows 7系统上搭建PHP、MySQL和Apache环境,并部署ECShop项目,包括安装配置步骤、解决常见问题以及使用XAMPP集成环境的替代方案。
98 1
win7系统搭建PHP+Mysql+Apache环境+部署ecshop项目
在Linux中,新安装mysql后怎样提升mysql的安全级别?
在Linux中,新安装mysql后怎样提升mysql的安全级别?
多应用模式下,忽略项目的入口文件,重写Apache规则
本文介绍了在多应用模式下,如何通过编辑Apache的.htaccess文件来重写URL规则,从而实现忽略项目入口文件index.php进行访问的方法。
MySQL装机全攻略:从下载到安全配置的详细指南
出于安全考虑,建议禁止root用户通过远程连接登录MySQL数据库。可以通过修改用户权限或配置防火墙规则来实现。 创建新用户并授权: 根据实际需求,创建具有不同权限的用户账户,并为他们分配必要的数据库和表权限。这样既可以满足业务需求,又可以降低安全风险。

热门文章

最新文章

推荐镜像

更多