当前位置:首页 > RockyLinux > 正文

RockyLinux数据库安全加固指南(手把手教你提升Rocky Linux下数据库安全性)

在当今的网络环境中,数据库作为企业核心数据资产的存储中心,其安全性至关重要。如果你正在使用 RockyLinux 作为服务器操作系统,并部署了如 MySQL、MariaDB 或 PostgreSQL 等数据库系统,那么进行数据库安全加固是必不可少的一步。本文将从零开始,为小白用户详细讲解如何在 RockyLinux 上对数据库进行安全加固,确保你的数据不被非法访问或篡改。

RockyLinux数据库安全加固指南(手把手教你提升Rocky Linux下数据库安全性) RockyLinux数据库安全加固 数据库安全配置 Rocky Linux MySQL安全 RockyLinux安全最佳实践 第1张

一、更新系统与数据库软件

安全加固的第一步永远是保持系统和软件为最新版本。旧版本可能存在已知漏洞,攻击者可借此入侵系统。

在 RockyLinux 中,使用以下命令更新系统:

sudo dnf update -y

如果你使用的是 MariaDB(RockyLinux 默认数据库),也请确保其为最新版:

sudo dnf install mariadb-server -ysudo systemctl start mariadbsudo systemctl enable mariadb

二、运行安全初始化脚本

MariaDB/MySQL 提供了一个名为 mysql_secure_installation 的安全脚本,可以一键完成多项基础安全设置,包括:

  • 设置 root 密码
  • 移除匿名用户
  • 禁止 root 远程登录
  • 删除测试数据库
  • 刷新权限表

执行以下命令启动该脚本:

sudo mysql_secure_installation

按照提示操作即可。建议设置强密码(包含大小写字母、数字和特殊字符),并拒绝 root 远程登录

三、创建专用数据库用户

不要在应用程序中直接使用 root 账户连接数据库!应为每个应用创建独立的数据库用户,并仅授予其所需的最小权限。

例如,为一个名为 webapp 的应用创建用户:

mysql -u root -p-- 在 MySQL/MariaDB 命令行中执行:CREATE DATABASE webapp_db;CREATE USER 'webapp_user'@'localhost' IDENTIFIED BY 'StrongP@ssw0rd!2024';GRANT SELECT, INSERT, UPDATE, DELETE ON webapp_db.* TO 'webapp_user'@'localhost';FLUSH PRIVILEGES;EXIT;

这样即使应用被攻破,攻击者也无法获得数据库的全部控制权,这符合 最小权限原则,是 Rocky Linux MySQL安全 的关键实践之一。

四、配置防火墙限制访问

RockyLinux 默认使用 firewalld 防火墙。数据库端口(如 MariaDB 默认 3306)不应对外网开放,除非有明确需求。

仅允许特定 IP(如应用服务器)访问数据库端口:

# 允许本地回环(必须)sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="127.0.0.1" port port="3306" protocol="tcp" accept'# 若应用服务器 IP 为 192.168.1.100sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port port="3306" protocol="tcp" accept'sudo firewall-cmd --reload

如果数据库和应用在同一台服务器,建议直接绑定到 127.0.0.1(见下一步)。

五、修改数据库绑定地址

编辑 MariaDB 配置文件,限制其仅监听本地回环地址,防止外部直接连接:

sudo vi /etc/my.cnf.d/server.cnf

[mysqld] 段落下添加或修改:

[mysqld]bind-address = 127.0.0.1

保存后重启服务:

sudo systemctl restart mariadb

六、定期备份与日志审计

安全不仅是防御,还包括灾备。建议每天自动备份数据库:

# 创建备份脚本 /root/backup_db.sh#!/bin/bashmysqldump -u root -p'YourRootPassword' --all-databases > /backup/db_$(date +\%F).sqlfind /backup -name "db_*.sql" -mtime +7 -delete  # 保留7天# 添加定时任务echo "0 2 * * * /root/backup_db.sh" | sudo crontab -

同时,开启慢查询日志和错误日志,便于事后审计:

[mysqld]log-error=/var/log/mariadb/mariadb.logslow_query_log=1slow_query_log_file=/var/log/mariadb/slow.loglong_query_time=2

结语

通过以上六个步骤,你已经完成了在 RockyLinux 上对数据库的基础安全加固。这些措施涵盖了 RockyLinux数据库安全加固数据库安全配置Rocky Linux MySQL安全 以及 RockyLinux安全最佳实践 等核心要点。安全是一个持续的过程,建议定期审查配置、更新软件,并关注官方安全公告。

记住:没有绝对安全的系统,但你可以让攻击者付出更高的代价!