返回顶部
首页 > 资讯 > 数据库 >如何理解MySQL服务器安全
  • 652
分享到

如何理解MySQL服务器安全

2024-04-02 19:04:59 652人浏览 独家记忆
摘要

这篇文章主要讲解了“如何理解Mysql服务器安全”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解mysql服务器安全”吧!MySQL服务器安全对于自建

这篇文章主要讲解了“如何理解Mysql服务器安全”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解mysql服务器安全”吧!

MySQL服务器安全

对于自建机房的Mysql服务器安装都会经历网络配置,存储规划,安装服务器以,安装MySQL。

如何理解MySQL服务器安全

存储安全

自建MySQL服务器

对于自建MySQL服务器来说,为了磁盘不出现单点故障,一般都会使用RaiD磁盘冗余阵列的方式。

有两种模式:硬件RAID和软件RAID,硬件RAID需要购买RAID卡支撑,软件RAID通过软件包mdadm生成即可,生产环境建议选择硬件RAID,一般需要对多块盘先做RAID,对于数据库服务器来说,通常选择RAID10(也称为RAID  1 + 0,先进行镜像RAID1,再进行条带化RAID0存储),读写性能都比较好。

如何理解MySQL服务器安全

在实际的生产环境,一般都会有8块盘,每块盘800G,在服务器启动的时候,先做磁盘RAID划分,通常划分两个卷组(volume  group),一个是操作系统内置目录使用rootvg,一个就是MySQL的数据相关的卷组datavg,LVM操作主要的步骤如图:

如何理解MySQL服务器安全

通过以上的存储划分及配置RAID10,MySQL产生的数据都会写到/data目录下,同步到逻辑卷lvdata中,进而同步到物理卷中,最终同步到物理磁盘中镜像存储,有效避免了单盘损坏导致的数据不可用。

公有云RDS

对于RDS来说,线上环境一般都选择高可用版,即一主一从模式,默认情况下Slave只做failover(故障切换),主要是由于Master和Slave服务器的磁盘没有做RAID。

如何理解MySQL服务器安全

网络安全

  • 设置白名单

对于自建机房,一般都会使用硬件防火墙来做网络隔离以及IP白名单限制,只允许指定的应用服务器通过3306端口连接MySQL  Server,其他的恶意请求应该在防火墙层面进行拦截,例如RDS控制台的数据安全可以添加指定IP。

如何理解MySQL服务器安全

  • 外网访问

数据库服务器只需要内网访问,禁止开通外网地址或者公网地址。

如何理解MySQL服务器安全

操作系统安全

安装完操作系统(例如Centos 7.4)后,要进行安全漏洞扫描及定期巡检,主要有以下几个方面需要注意:

root启动MySQL

MySQL  Server安装完之后,如果用root启动MySQL,则任何具有FILE系统权限的用户都可以读写root用户下的文件,会造成严重的安全隐患,应该将软件目录属主设置成root用户,数据目录属主设置成mysql用户,使用mysql用户启动MySQL实例。

账号弱密码

linux服务器的所有账号密码不能是弱密码(例如密码是纯数字,纯字母,账号的一部分等,长度太短),建议所有的账号都设置20位长度,包括数字,大写字母,小写字母以及特殊字符。

如何理解MySQL服务器安全

对外开放端口

对于MySQL数据库服务器,除了3306端口开发给指定的应用服务器访问外,其他的端口都应该禁用掉,例如ssh, ftp, telent服务端口。

服务漏洞

在用绿盟或者其他工具进行安全扫描时,都会发现一些系统漏洞,常见的有ntp漏洞,vsftpd的漏洞等。这时就需要停机去打patch修复,再次进行扫描,直到全部通过才能安装MySQL。

密码登录

对于生产服务器,严禁本地通过密码直接登录,建议采用跳板机 jumpserver 的方式,每个用户都用自己 jumpserver  账号去登录,然后选择自己要访问的服务器(需要提前告知管理员添加),默认的登录用户(例如 server 用户)只有只读权限,不能做任何修改操作。

如何理解MySQL服务器安全

审计功能

用户通过 jumpserver 登录到生产服务器的所有操作都应该被审计和录屏,并且定时回放这些操作,确认每一步都是最优的,没有不必要的多操作。

操作命令历史

用户登录到 Linux 服务器上的所有操作命令都会记录到 history 中,将 history 设置大一点,保存更多的操作命令记录。

如何理解MySQL服务器安全

资源限制

通过配置/etc/security/limits.conf文件限制用户资源使用,例如打开进程数,文件数,文件大小及内存等。

如何理解MySQL服务器安全

服务器备份

定期的对服务器进行备份,备份内容主要包括 Linux 内置目录(/usr /var  /lib)和MySQL数据目录(数据文件,binlog,undolog, redolog),同时要定期检查备份的有效性以及恢复演练,以下是阿里云 ECS  的快照,建议每天一个快照,保留7天。

如何理解MySQL服务器安全

MySQL数据库安全

账号安全

如何理解MySQL服务器安全

账号密码

建议所有的账号都设置20位长度,包括数字,大写字母,小写字母以及特殊字符,如^N9UxOR&ydQWCBvIwqql

账号分离

对于分布式系统来说,会有多个服务,且服务之间存在调用关系,比如交易 trade-service 会调用支付 payment-service。

为了安全起见,给每个服务创建一个数据库,同时分配自己的账号,禁止跨库访问。

如何理解MySQL服务器安全

账号权限

保证账号权限最小化原则,对于业务账号来说,只需要授予连接,查询,新增,修改的权限即可。

使用SSL连接

对于数据安全性要求比较高的业务,建议启用SSL连接,这样即使用抓包工具分析,也不能看到具体的SQL文本。但从SSL实现方式来看,建立连接时需要进行握手、加密、解密等操作,连接建立阶段比较耗时,如果使用连接池或者长连接不会有太大影响,如果是短连接性能损耗比较大。

系统权限

mysql.user权限

除了MySQL root账号之外,其他任何账号对mysql.user的表有修改权限,会带来安全风险:账号密码被修改和认证插件修改。

修改账号密码

如何理解MySQL服务器安全

修改密码认证方式

MySQL默认都是本地密码认证插件  mysql_native_passWord,如果改成auth_Socket,则不需要密码,只检查用户是否使用UNIX套接字进行连接,然后比较用户名即可。

如何理解MySQL服务器安全

权限风险

一般允许普通开发人员通过 jumpserver 登录到中转机,然后用mysql -h -u  -p以只读账号的方式访问数据库,有时也想看一下infORMation_schema下长事务(innodb_trx)等相关的信息,需要授予process系统管理权限,会带来一些安全隐患。

如何理解MySQL服务器安全

这样只读账号也能查看innodb_trx表中所有业务账号正在执行的SQL语句,SQL可能包含敏感信息。

如何理解MySQL服务器安全

在以前的MySQL版本,拥有process系统权限的用户还可以定系统表,比如lock table mysql.user  read,导致正常修改用户的操作

FILE权限

具有FILE权限可以将数据通过SELECT…..INTO OUTFILE…..写到服务器上有写权限的目录下,作为文本格式存放,也可以通过LOAD DATA  INFILE…将文本文件数据导入到数据表中。

如何理解MySQL服务器安全

审计功能

安装 MySQL Server 之后,应该配置和开启 Audit Plugin,这样经过 MySQL Server 执行所有的 SQL  都会被记录下来,一方面可以排除问题,另一方面可以做性能监控分析(例如一段时间内某个SQL的QPS,TPS)。

数据备份

需要定时备份数据文件和 binlog,对于自建 MySQL  服务器,可以使用xtrabackup去做每天的物理全备,对于RDS来说,需要配置备份策略,同时也要定期的检查的备份完整性和有效性。

如何理解MySQL服务器安全

异地容灾

对于核心的业务系统,比如交易,支付等,要做好数据库的异地容灾,避免由于地震等自然灾害造成数据不可恢复。

如何理解MySQL服务器安全

数据安全

数据是企业宝贵的资源,每个业务域产生的数据以及需要的数据都不一样,如何保证安全的访问数据是非常重要的,一般大公司都有自己的数据管理平台,比如阿里的iDB,现在已经是一个服务DMS(数据管理服务),可以管理各种类型的数据库。

数据访问范化

所有数据变更都应该走审批流程,发起人和审批人不能是同一个,重要敏感的数据操作需要提交工单,进行多级审批,确认没有问题才能执行,执行之前要先做好备份,以便回滚时使用。

建议使用数据库管理平台来管理数据库,一般需要用户注册账号,申请权限(数据导出,结构变更,数据变更),服务Owner审批,提交工单进入审批流程等操作,所有的操作环节都会记录操作日志

如何理解MySQL服务器安全

数据脱敏

对核心业务表的敏感字段要进行脱敏处理,例如姓名,邮箱,电话号码,身份证号码,可以利用中间平台去处理,例如阿里云的DMS可以配置数据脱敏,支持数据库,表,字段三个级别,默认在平台上查询都是以*号显示,如果想要查看明文,需要申请敏感数据权限,并提交工单,审批通过后才可以查看,权限时间默认为一天,最长不超过7天。

在做营销活动之前,都会做数据库性能压测,需要把PROD数据库全量导入UAT环境,会涉及一些敏感数据,一般需要通过中间层做脱敏处理,例如手机号可以前3位后3位进行打码处理,15222210123脱敏成152****123。

如何理解MySQL服务器安全

数据加密

从MySQL  5.7开始,InnoDB支持对独立表空间静态数据加密,是引擎内部数据页级别的加密手段,当数据页写入文件系统时加进行加密,从数据文件读到内存中时解密,基于旋转秘钥文件而起作用,对于数据保护非常有用。

如何理解MySQL服务器安全

主秘钥文件存储在磁盘上,同时要做好备份,对于加密的表,表空间秘钥由主秘钥并存储在表空间文件的头部中,使用的加密算法是AES,加密模式是块加密。

我们来看一下**加密ENCRYPTION='Y'和未加密ENCRYPTION='N'**的区别在哪

如何理解MySQL服务器安全

如何理解MySQL服务器安全

从这里就可以看出,通过Keyring的加密方式,主秘钥是存储表空间文件的头部信息中,这样增强了数据文件的安全性,对于一些社交软件产生的聊天消息,可以采用这种方式来加密数据文件,防止数据文件被窃取之后进行恢复。

延迟从库

如何理解MySQL服务器安全

oracle数据库有两个特性:回收站(recyclebin)和闪回(flashback)功能,drop  table如果不加purge选项,Oracle会把这个表rename一个新的表名存放到回收站里,需要还原时执行flashback table即可。

那如果delete能恢复吗?

也是可以的,利用flashback query去Undo  Log里获取删除时间前的数据,回插到原表即可,这两个功能是很棒的,可惜MySQL里都没有。

通常MySQL的主从复制是实时的一致性复制,Master执行的变更会立刻通过binlog复制同步到Slave执行。

如果不想让Slave那么快的执行Master的变更,可以配置延迟从库,利用它可以实现数据误删的快速恢复,例如延迟一个小时。

如何理解MySQL服务器安全

感谢各位的阅读,以上就是“如何理解MySQL服务器安全”的内容了,经过本文的学习后,相信大家对如何理解MySQL服务器安全这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

您可能感兴趣的文档:

--结束END--

本文标题: 如何理解MySQL服务器安全

本文链接: https://lsjlt.com/news/61954.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何理解MySQL服务器安全
    这篇文章主要讲解了“如何理解MySQL服务器安全”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何理解MySQL服务器安全”吧!MySQL服务器安全对于自建...
    99+
    2024-04-02
  • 如何理解MYSQL安全信息
    本篇文章给大家分享的是有关如何理解MYSQL安全信息,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。  如果想了解攻击者,那么拥有的信息来源是非...
    99+
    2024-04-02
  • 如何做好云服务器安全管理
    做好云服务器安全管理的方法:1、及时更新安装云服务器系统补丁;2、为云服务器安装并配置防火墙程序;3、为云服务器部署杀毒软件,排查安全隐患;4、关闭云服务器不需要的服务和端口,降低被攻击风险;5、定期对云服务器进行数据备份,避免数据丢失无法...
    99+
    2024-04-02
  • 代理服务器如何提高安全性
    本篇文章给大家分享的是有关代理服务器如何提高安全性,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。       代理服务器在您的服务器和外...
    99+
    2023-06-21
  • 云服务器安全性如何保障安全
    云服务器提供了多种安全功能,包括: 安全审计:云服务器支持对访问用户的活动进行审计,包括日志记录、警报处理、身份验证等等。这可以帮助服务器避免受到恶意攻击的威胁。 安全策略:云服务器通过设置安全策略,对不同的用户和数据进行权限控制,并确...
    99+
    2023-10-26
    安全性 服务器
  • 美国服务器如何进行安全管理
    美国服务器进行安全管理的方法:1、定期对美国服务器数据进行备份;2、及时清理美国服务器共享文件夹;3、对美国服务器文件夹的权限进行设置;4、将美国服务器上不必要的服务和端口关闭。具体内容如下:备份数据美国服务器用户需要定期进行数据备份,这样...
    99+
    2024-04-02
  • 如何维护服务器安全
    维护服务器安全的方法有:1、及时更新服务器的系统补丁;2、给服务器安装配置防火墙规则进行防御;3、给服务器安装网络杀毒软件,排查服务器上的病毒;4、关闭服务器上不必要的服务和端口,防止入侵;5、定期对服务器进行数据备份,防止数据丢失;6、通...
    99+
    2024-04-02
  • 服务器安全如何维护
    服务器安全是非常重要的,因为服务器存储着大量重要的数据和信息。以下是一些维护服务器安全的方法: 及时更新操作系统和软件:定期检查...
    99+
    2024-04-26
    服务器
  • 怎么理解MySQL安全
    本篇内容介绍了“怎么理解MySQL安全”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!MySQL安全当多个用...
    99+
    2024-04-02
  • 如何管理无服务器计算的安全性
    管理无服务器计算安全性的方法有:1、减少无服务器权限功能,从而减少权限数量;2、实施身份验证,访问控制和身份验证能帮助限制风险;3、使用云平台提供的程序控件,能帮助用户识别潜在的错误配置;4、配置日志记录和监视,在需要威胁搜索时使用审计跟踪...
    99+
    2024-04-02
  • 如何做好美国服务器的安全管理
    做好美国服务器安全管理的方法:1、对服务器管理员账号密码进行保护,防止被黑客破解;2、对登录服务器进行双重认证,如密码验证和验证码方式,提高服务器登录安全;3、及时安装更新系统补丁,防止被黑客利用系统漏洞攻击;4、监测美国服务器系统日志,排...
    99+
    2024-04-02
  • 如何安全管理阿里云服务器端口
    阿里云服务器作为企业级云服务提供商,为用户提供了一种安全可靠的云端运行环境。但同时,为了防止潜在的安全威胁,用户需要对服务器端口进行安全管理。本篇文章将详细介绍如何安全管理阿里云服务器端口,确保服务器运行的安全性。 一、了解端口端口是指网络...
    99+
    2023-12-17
    阿里 端口 安全管理
  • 如何关闭云服务器安全服务?
    1. 登录云服务器管理控制台 首先,你需要登录到你的云服务器管理控制台。这可能需要你提供你的用户名和密码,以及其他身份验证信息。 2. 导航到安全服务设置 一旦你成功登录到管理控制台,你需要导航到安全服务设置页面。这个页面通常可以在控制台...
    99+
    2023-10-27
    服务器
  • 云服务器安全性如何保障安全使用
    数据备份:云服务器通常会为用户提供数据备份服务,以确保在数据丢失或损坏时能够恢复数据。备份数据应该存储在安全的位置,以防止数据的泄露和恶意破坏。 访问控制:云服务器提供商通常会实施访问控制措施,以确保只有授权的用户才能访问服务器。这些措施...
    99+
    2023-10-27
    安全性 服务器
  • 如何安全强化Linux服务器
    这篇文章给大家分享的是有关如何安全强化Linux服务器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. 更新你的服务器保护服务器安全的第一件事是更新本地存储库,并通过应用最新的修补程序来升级操作系统和已安装的应...
    99+
    2023-06-16
  • 云服务器的安全性如何
    身份验证:云服务器通常需要用户输入他们的用户名和密码才能访问。这可以通过诸如密码强度检查、双因素身份验证等安全机制来实现。 访问控制:云服务器提供访问控制机制来限制对资源的访问。这可以通过审计、日志跟踪等机制来实现。 加密:云服务器使用S...
    99+
    2023-10-27
    安全性 服务器
  • 如何理解IIS的安全性
    如何理解IIS的安全性,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。信息服务器IIS是BACKOFFICE系列产品中功能最强大、最流行的应用程序,它与整个BAC...
    99+
    2023-06-13
  • 香港云服务器安全问题如何解决
    香港云服务器安全问题可以通过以下方式来解决: 强化访问控制:确保只有经过授权的用户才能访问云服务器,使用强密码和多因素认证来加强...
    99+
    2024-04-09
    香港云服务器 云服务器
  • 服务器安全补丁:如何选择合适的安全解决方案
    服务器安全补丁是保障服务器安全的重要手段之一,通过安装补丁可以及时修复系统中已知的安全漏洞,防止恶意软件和黑客攻击。常见的服务器安全补丁包括操作系统补丁、应用程序补丁和第三方软件补丁。 在选择服务器安全解决方案时,应考虑以下几点: 确...
    99+
    2024-02-27
    服务器安全 补丁 安全解决方案
  • 如何做好香港服务器安全管理措施
    做好香港服务器安全管理措施的方法:1、及时安装并更新香港服务器系统补丁,防止被黑客利用;2、对香港服务器管理员账号密码进行加密保护,防止被黑客破解;3、给香港服务器安装并配置防火墙,提高服务器防御力;4、监测香港服务器的系统日志,查看服务器...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作