加入收藏 | 设为首页 | 会员中心 | 我要投稿 文章分享网_茂名站长网 (https://www.0668zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 动态 > 正文

守护 Redis 安全的几个策略

发布时间:2021-04-28 15:38:01 所属栏目:动态 来源:互联网
导读:之,Redis 并没有极力去优化安全方面,而是尽可能去优化高性能和易用性。 网络安全 仅有可信的网络用户才可以访问 Redis 的端口,因此运行 Redis 的服务器应该只能被用 Redis 实现的应用程序的计算机直接访问。 一般情况下一台直接暴露在 Internet 的计算机

之,Redis 并没有极力去优化安全方面,而是尽可能去优化高性能和易用性。

网络安全

仅有可信的网络用户才可以访问 Redis 的端口,因此运行 Redis 的服务器应该只能被用 Redis 实现的应用程序的计算机直接访问。

一般情况下一台直接暴露在 Internet 的计算机,例如一个虚拟化 Linux 实例(Linode, EC2,…),防火墙应该防止外部用户访问它的redis端口。用户仍可以通过本地接口来访问 Redis。

记住在redis.conf 文件中增加下面这一行配置就可以把 Redis 绑定在单个接口上。禁止外部访问 Redis 的话,将会产生非常严重的后果。比如,一个 FLUSHALL 操作就可以当做外部攻击来删除 Redis 上的所有数据。

认证的特性

虽然 Redis 没有尝试去实现访问控制,但是提供了一个轻量级的认证方式,可以编辑redis.conf 文件来启用。当认证授权方式启用后,Redis 将会拒绝来自没有认证的用户的任何查询。一个客户端可以通过发送 AUTH 命令并带上密码来给自己授权。

这个密码由系统管理员在redis.conf 文件里面用明文设置,它需要足够长以应对暴力攻击,这样子设置有以下两个原因:证层的目标是提供多一层的保护。假如防火墙或者其它任何系统防护攻击失败的话,外部客户端如果没有认证密码的话将依然无法访问 Redis 实例。AUTH 命令就像其它Redis命令一样,是通过非加密方式发送的,因此无法防止拥有足够的访问网络权限的攻击者进行窃听。

数据加密支持

Redis并不支持加密。为了实现在网络上或者其它非可信网络访问 Redis 实例,需要实现新增的保护层,例如 SSL 代理。

官方推荐的SSL 代理:spiped

禁用的特殊命令

在 Redis 中可以禁用命令或者将它们重命名成难以推测的名称,这样子普通用户就只能使用部分命令了。例如,一个虚拟化的服务器提供商可能提供管理Redis实例的服务。在这种情况下,普通用户可能不被允许调用 CONFIG 命令去修改实例的配置,但是能够提供删除实例的系统需要支持修改配置。

在这种情况下,你可以从命令表中重命名命令或者禁用命令。这个特性可以在redis.conf 文件中进行配置。例如:

(编辑:文章分享网_茂名站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读