centos7-Redis服务安全加固
Redis 默认情况下,会绑定在 0.0.0.0:6379,这样将会将Redis服务暴露到公网上,如果在没有开启认证的情况下,
可以导致任意用户在可以访问目标服务器的情况下未授权访 问Redis以及读取Redis的数据。
攻击者在未授权访问Redis的情况下可以利用Redis的相关方法,可以成功将自己的公钥写入目标服务器的 /root/.ssh 文件夹的authotrized_keys 文件中,
进而可以直接登录目标服务器给用户的 Redis 运行环境以及 Linux 主机带来安全风险。
加固修复方案:
1.尽量避免有公网访问
在 redis.conf 文件中找到 # bind 127.0.0.1,将前面的 # 去掉,然后保存
注意:
1.该操作需要重启redis才能生效
2.修改后只有本机才能访问redis,也可以指定访问源ip来访问redis服务
eg:bind 10.174.154.76 127.0.0.1(多个ip中间以空格隔开)
2.设置防火墙
生产业务redis服务需要其他服务器访问,通过firewalld仅允许指定的ip来访问。
firewall-cmd --permanent --add-rich-rule=“rule family=“ipv4” source address=“192.168.142.166” port protocol=“tcp” port=“6379” accept”
3.避免使用默认的端口
在redis.conf中配置文件中找到port关键字,将默认端口6379修改为自定义端口
注:云服务器首先需要在安全组开放自定义端口。
4.开启redis密码认证,并设置高复杂度密码
在redis.conf中配置文件中设置配置项requirepass,去掉其注释,并在后面填上需要的密码, 开户密码认证
5.将redis服务后台运行
在redis.conf中配置文件中将daemonize no 中no改为yes[yes指后台运行]