展开菜单
首页 精品内容 本月促销 装机必备 Windows macOS软件 IOS软件 Android AI PDF教程 专题
全部分类

当前位置:

首页 > 数据库 > 系统应用 > 浅谈12 条用于 Linux 的 MySQL/MariaDB 安全最佳实践

浅谈12 条用于 Linux 的 MySQL/MariaDB 安全最佳实践

MySQL 无疑是开源数据库领域的标杆,而它的分支 MariaDB 近年来增长势头也相当强劲。不过,装好 MySQL 之后,默认配置可谈不上安全——确保数据库安全,是每个 DBA 的基本功。这么做不仅能保护数据库本身,也能提升整个 Linux 系统的安全水平,毕竟攻击者总是无孔不入,数据库更是他们眼

MySQL 无疑是开源数据库领域的标杆,而它的分支 MariaDB 近年来增长势头也相当强劲。不过,装好 MySQL 之后,默认配置可谈不上安全——确保数据库安全,是每个 DBA 的基本功。这么做不仅能保护数据库本身,也能提升整个 Linux 系统的安全水平,毕竟攻击者总是无孔不入,数据库更是他们眼中的“肥肉”。暴力破解 root 密码,就是最常见的手段之一。

下面这 12 条最佳实践,都是经过实战检验的硬核内容,照着做就能让你的 MySQL/MariaDB 站稳脚跟。

1. 安全地安装 MySQL

安装完 MySQL 后第一件该做的事是什么?运行安全安装脚本。它能帮你解决几个关键问题:

  • 如果安装时没设 root 密码,现在赶紧设上
  • 删除那些允许从本地主机外部访问的 root 账户,从根源上禁用远程 root 登录
  • 清理匿名用户和测试数据库——默认情况下连匿名用户都能访问它们
# mysql_secure_installation

运行上述命令后,设置 root 密码,并通过输入 [Yes/Y] 和回车键回答一系列问题。浅谈12 条用于 Linux 的 MySQL/MariaDB 安全最佳实践

安全安装 MySQL 的界面

2. 将数据库服务器绑定到 Loopback 地址

这条配置会限制远程机器访问,告诉 MySQL 只接受来自本地主机的连接。改起来很简单,编辑主配置文件就行:

# vi /etc/my.cnf                       [RHEL/CentOS]    
# vi /etc/mysql/my.conf                [Debian/Ubuntu] 
# vi /etc/mysql/mysql.conf.d/mysqld.cnf    [Debian/Ubuntu]

[mysqld] 部分加上这一行:

bind-address = 127.0.0.1

3. 禁用 MySQL 的 LOCAL INFILE

为提升安全性,最好禁用 local_infile。在 [mysqld] 部分加入下面这行,防止 MySQL 直接访问底层文件系统:

local-infile=0

4. 修改 MySQL 的默认端口

3306 是默认的 TCP 监听端口,改掉它能让很多自动化扫描工具失效。在 [mysqld] 里设置:

Port=5000

5. 启用 MySQL 日志

日志是了解服务运行状况的最佳方式之一,一旦遭到攻击,也能从日志里找到入侵痕迹。在 [mysqld] 部分添加:

log=/var/log/mysql.log

6. 设置合适的 MySQL 文件访问权限

确保所有 MySQL 服务文件和数据路径的权限都恰当。比如 /etc/my.cnf 只能由 root 修改,防止其他用户篡改数据库配置:

# chmod 644 /etc/my.cnf

7. 删除 MySQL shell 历史

你在 MySQL shell 里执行的所有命令都会被保存在 ~/.mysql_history 中。这非常危险——你创建过哪些用户、输入过什么密码,全都会记录下来。

# cat /dev/null > ~/.mysql_history

8. 不要在命令行中运行 MySQL 命令

终端里输入的所有命令都会被 shell 的历史文件记录(比如 bash 的 ~/.bash_history)。攻击者一旦拿到这个文件,就能看到你输入的密码。强烈不建议像下面这样直接输密码:

# mysql -u root -ppassword_

浅谈12 条用于 Linux 的 MySQL/MariaDB 安全最佳实践

使用密码连接 MySQL

查看命令行历史,就能看到之前输入的密码:

# history

浅谈12 条用于 Linux 的 MySQL/MariaDB 安全最佳实践

查看命令行输入历史

正确的连接方式是这样的:

# mysql -u root -p
Enter password:

9. 定义特定应用的数据库用户

每个在服务器上运行的应用,只分配一个与该应用相关的数据库用户。比如你有一个 WordPress 站点,就像这样创建专用用户:

# mysql -u root -p
MariaDB [(none)]> CREATE DATABASE osclass_db;
MariaDB [(none)]> CREATE USER 'osclassdmin'@'localhost' IDENTIFIED BY 'osclass@dmin%!2';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON osclass_db.* TO 'osclassdmin'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

记得,不再使用的数据库用户要及时删除。

10. 使用额外的安全插件和库

MySQL 自带不少安全插件,比如验证客户端连接、密码强度校验、敏感信息加密存储等,这些在免费版本中就能用。更多信息可参考官方文档:https://dev.mysql.com/doc/refman/5.7/en/security-plugins.html

11. 定期修改 MySQL 密码

密码定期更换是信息安全的基本要求,具体周期由内部安全策略决定。定期换密码能有效阻止那些长期蹲点、试图猜出密码的攻击者:

MariaDB [(none)]> USE mysql;
MariaDB [(none)]> UPDATE user SET password=PASSWORD('YourPasswordHere') WHERE User='root' AND Host = 'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;

12. 定期更新 MySQL Server 包

强烈建议从官方仓库定期更新 MySQL/MariaDB 包,以获取最新的安全补丁和错误修复。操作系统默认仓库里的版本往往比较老旧。

# yum update
# apt update

对 MySQL/MariaDB 做任何修改之后,别忘了重启服务:

# systemctl restart mariadb     # RHEL/CentOS
# systemctl restart mysql       # Debian/Ubuntu
本文内容来源于互联网,如有侵权请联系删除。
作者最新文章
数据库 系统应用 Linux
相关文章 更多
精品专题 更多
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

IOS软件

正软商城iOS软件专区,精选适用于iPhone和iPad的办公、学习、影音、设计、效率及AI应用,提供功能介绍、适用设备、系统要求和正版获取方式等信息。

AI

正软商城AI软件专区,汇集AI写作、AI绘画、AI视频、AI办公、AI编程、AI翻译、智能客服和数据分析等人工智能工具,提供功能介绍、适用平台、收费方式及正版购买信息。

PDF教程

PDF教程适合刚接触PDF文件的用户,本文整理PDF打开、编辑、转换、合并、压缩等常见基础操作。通过这些教程可以快速了解PDF文件怎么处理,解决办公、学习和资料科整理中的常见问题。使用极轻PDF可在线完成多种PDF操作,适合新手快速上手。

Mac软件 更多
灵活计算器
灵活计算器

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

赤友清理大师
赤友清理大师

赤友清理大师是一款为 Mac 设计的智能清理优化工具,可精准扫描垃圾、大文件、重复文件等,释放磁盘空间。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

极度公式
极度公式

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

图几
图几

图几是一款适用于 macOS 的截图、标注与美化工具,支持离线操作保障隐私。界面整理和高频系统操作被放到一起考虑,桌面或窗口内容一多时,管理起来会更省心。

密码键盘
密码键盘

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。

思源笔记
思源笔记

思源笔记是一款本地笔记软件,提供所见即所得的编辑方式,为长文写作带来顺滑的体验。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

Office 365 简体中文
Office 365 简体中文

一款文字处理软件,一种订阅式的跨平台办公软件,基于云平台提供多种服务,通过将 Excel 和 Outlook 等应用与 OneDrive 和 Microsoft Teams 等强大的云服务相结合,Office 365 可让任何人使用任何设备随时随地创建和共享内容。

WALTR PRO
WALTR PRO

WALTR是一款电脑至iOS文件传输转换工具,操作简单,快速实现文件识别与传送。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

CodeExpander
CodeExpander

CodeExpander 是一款快捷短语输入增强工具,通过键入缩写自动展开为自定义文段,提升工作效率。任务管理和过程控制会更完整,持续下载、批量同步或需要稳定传输流程的场景会更适合它。

Mountain Duck
Mountain Duck

Mountain Duck 是一款能将多个网盘挂载到本地的工具,像本地磁盘一样使用网盘。清理链路的完整性会更好一些,做应用卸载、残留处理和空间整理时,通常能少走很多手动排查步骤。

Menuist
Menuist

Menuist 是一款面向 macOS 的 Finder 右键菜单增强工具,主要用来补充新建文件、快捷导航等常用操作,让日常文件管理和访问路径时更高效、更顺手。

Mole
Mole

Mole 是一款专为 Mac 设计的深度清理优化工具,涵盖缓存清理、应用管理及实时状态监控等功能。清理链路的完整性会更好一些,做应用卸载、残留处理和空间整理时,通常能少走很多手动排查步骤。

WINDOWS 更多
Windows 10
Windows 10

Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

极度公式
极度公式

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

密码键盘
密码键盘

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。

思源笔记
思源笔记

思源笔记是一款本地笔记软件,提供所见即所得的编辑方式,为长文写作带来顺滑的体验。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

傲梅轻松备份
傲梅轻松备份

傲梅轻松备份是一款专业易用的数据备份软件,为重要数据提供安全保障。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。

Office 365 简体中文
Office 365 简体中文

一款文字处理软件,一种订阅式的跨平台办公软件,基于云平台提供多种服务,通过将 Excel 和 Outlook 等应用与 OneDrive 和 Microsoft Teams 等强大的云服务相结合,Office 365 可让任何人使用任何设备随时随地创建和共享内容。

Wise Folder Hider Pro
Wise Folder Hider Pro

Wise Folder Hider Pro 是一款专业级文件和文件夹隐藏加密软件,为私密数据添加多重保护。高频操作更强调就近处理,浏览、整理和跨目录移动文件时,来回切换和重复点击都会少很多。

WALTR PRO
WALTR PRO

WALTR是一款电脑至iOS文件传输转换工具,操作简单,快速实现文件识别与传送。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

CodeExpander
CodeExpander

CodeExpander 是一款快捷短语输入增强工具,通过键入缩写自动展开为自定义文段,提升工作效率。任务管理和过程控制会更完整,持续下载、批量同步或需要稳定传输流程的场景会更适合它。

PinStack
PinStack

PinStack是一款轻量级的Windows平台剪贴板管理工具,优化您的剪贴板使用体验。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

Mountain Duck
Mountain Duck

Mountain Duck 是一款能将多个网盘挂载到本地的工具,像本地磁盘一样使用网盘。清理链路的完整性会更好一些,做应用卸载、残留处理和空间整理时,通常能少走很多手动排查步骤。

Seer
Seer

Seer是一款在Win平台下的空格键功能增强效率工具,只需轻敲空格键,就能预览几乎任何格式的文件。它更适合把零散的小功能集中起来使用,处理高频琐碎任务时会更省事。