以下是几种常见的 Redis 安全加固方法:
设置密码认证:在 Redis 配置文件中设置 requirepass 参数,为 Redis 实例设置访问密码,只有提供正确的密码才能进行访问。
# 在配置文件中设置密码
requirepass yourpassword
启用密码认证后,客户端连接 Redis 实例时需要提供密码才能进行操作。
设置绑定 IP:在 Redis 配置文件中设置 bind 参数,将 Redis 实例绑定到指定的 IP 地址上,限制只有指定 IP 地址的客户端才能连接。
# 在配置文件中设置绑定 IP
bind 127.0.0.1
这样只有本地的客户端可以连接 Redis,其他 IP 地址无法连接。
禁用危险命令:在 Redis 配置文件中设置 rename-command 参数,将某些危险的命令重命名,或者通过设置 rename-command 参数禁用特定的命令,从而防止恶意用户执行危险操作。
# 在配置文件中重命名危险命令
rename-command FLUSHALL ""
这样就将 FLUSHALL 命令重命名为空字符串,禁用了该命令。
使用防火墙限制访问:使用防火墙,如 iptables,配置规则仅允许特定 IP 地址或 IP 段访问 Redis 端口。
# 仅允许特定 IP 地址访问 Redis 端口
sudo iptables -A INPUT -p tcp -s 192.168.0.1 --dport 6379 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 6379 -j DROP
这样只有 IP 地址为 192.168.0.1 的客户端可以访问 Redis 端口,其他 IP 地址无法访问。
使用非默认端口:将 Redis 监听的端口修改为非默认的端口,如将默认的 6379 端口修改为其他端口,减少被自动扫描的风险。
# 在配置文件中设置监听端口
port yourport
修改配置文件中的 port 参数为其他非常用端口。
这些方法可以帮助加强 Redis 的安全性,但请注意,安全加固只是一种辅助手段,还应该注意保持 Redis 版本的更新,并采取其他安全措施,如定期备份数据、定期审查访问日志等。