Redis安全基线检查

禁止使用root用户启动 | 访问控制

描述
使用root权限去运行网络服务是比较有风险的(nginx和apache都是有独立的work用户,而redis没有)。redis crackit 漏洞就是利用root用户的权限来替换或者增加authorized_keys,来获取root登录权限的
加固建议
使用root切换到redis用户启动服务:

useradd -s /sbin/nolog -M redis 
sudo -u redis /<redis-server-path>/redis-server /<configpath>/redis.conf 

操作时建议做好记录或备份

禁止监听在公网 | 访问控制

描述
Redis监听在0.0.0.0,可能导致服务对外或内网横向移动渗透风险,极易被黑客利用入侵。
加固建议
在redis的配置文件redis.conf中配置如下:bind 127.0.0.1或者内网IP,然后重启redis

操作时建议做好记录或备份

打开保护模式 | 访问控制

描述
redis默认开启保护模式。要是配置里没有指定bind和密码,开启该参数后,redis只能本地访问,拒绝外部访问。
加固建议
redis.conf安全设置: # 打开保护模式protected-mode yes

操作时建议做好记录或备份

限制redis 配置文件访问权限 | 文件权限

描述
因为redis密码明文存储在配置文件中,禁止不相关的用户访问改配置文件是必要的,设置redis配置文件权限为600,
加固建议
执行以下命令修改配置文件权限:

chmod 600 /<filepath>/redis.conf

操作时建议做好记录或备份

修改默认6379端口 | 服务配置

描述
避免使用熟知的端口,降低被初级扫描的风险
加固建议
编辑文件redis的配置文件redis.conf,找到包含port的行,将默认的6379修改为自定义的端口号,然后重启redis

操作时建议做好记录或备份

禁用或者重命名危险命令 | 入侵防范

描述
Redis中线上使用keys *命令,也是非常危险的。因此线上的Redis必须考虑禁用一些危险的命令,或者尽量避免谁都可以使用这些命令,Redis没有完整的管理系统,但是也提供了一些方案。
加固建议
修改 redis.conf 文件,添加

rename-command FLUSHALL ""
rename-command FLUSHDB  ""
rename-command CONFIG   ""
rename-command KEYS     ""
rename-command SHUTDOWN ""
rename-command DEL ""
rename-command EVAL ""

然后重启redis。 重命名为"" 代表禁用命令,如想保留命令,可以重命名为不可猜测的字符串,如: rename-command FLUSHALL joYAPNXRPmcarcR4ZDgC

操作时建议做好记录或备份

开启redis密码认证,并设置高复杂度密码 | 身份鉴别

描述
redis在redis.conf配置文件中,设置配置项requirepass, 开户密码认证。 redis因查询效率高,auth这种命令每秒能处理9w次以上,简单的redis的密码极容易为攻击者暴破。
加固建议
打开redis.conf,找到requirepass所在的地方,修改为指定的密码,密码应符合复杂性要求:

1、长度8位以上
2、包含以下四类字符中的三类字符:
英文大写字母(A 到 Z)
英文小写字母(a 到 z)
10 个基本数字(0 到 9)
非字母字符(例如 !、$、%、@、^、&等,#除外)
3、避免使用已公开的弱密码,如:abcd.1234 、admin@123等
再去掉前面的#号注释符,然后重启redis

操作时建议做好记录或备份

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis安全基线检查是指对Redis数据库进行一系列安全检查的措施,以确保Redis数据库的安全性和可靠性。 首先,我们需要确保Redis数据库的身份验证设置。使用者必须提供正确的密码才能访问数据库。强烈建议使用强密码并定期更改密码,以免被未经授权的用户访问。 其次,我们需要审查Redis配置文件中的网络绑定设置。确保Redis只绑定到可信任的IP地址,避免暴露在外部网络中,以防止未经授权的访问。 另外,我们需要限制Redis的最大连接数。通过设置适当的最大连接数,可以避免因过多的连接而导致数据库性能下降或崩溃。 此外,我们还应该考虑限制Redis的内存使用。通过设置合理的最大内存限制,可以避免数据库超出可用内存的情况,并防止由此引发的性能问题。 另一个重要的安全措施是禁用Redis的命令功能。这样可以防止未经授权的用户执行危险的命令,从而保护数据库的安全。 此外,定期备份Redis数据库以及监控Redis的运行状况也是必要的。通过备份可以防止数据丢失,而监控则可以及时发现异常行为和性能问题。 最后,更新Redis版本和修复已知的安全漏洞也非常重要。及时升级Redis可以确保数据库的安全性,并充分利用Redis最新版本的性能和功能优势。 总而言之,在进行Redis安全基线检查时,我们需要重点关注身份验证、网络绑定、连接数和内存限制、命令功能、备份和监控、版本更新等方面,以保障Redis数据库的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值