Redis安全性配置
最近Redis刚爆出一个安全性漏洞,我的服务器就“光荣的”中招了。黑客攻击的基本方法是:
- 扫描Redis端口,直接登录没有访问控制的Redis
- 修改Redis存盘配置:config set dir /root/.ssh/; config set dbfilename /root/.ssh/authorized_keys
- 添加key:crackit,将其值设置为新的公钥。然后就可以为所欲为了。
不影响客户端程序的修复办法:
- 重命名config命令:rename-command CONFIG DO_NOT_USE_CONFIG
- 重启Redis
现在,我们就来认识一下Redis安全性方面的一些知识。
首先,Redis从设计上来说是用来被可信的客户端访问的,这就意味着不适于暴露给外部环境里的非可信客户端访问。最佳的实践方法是在Redis前面加一个访问控制层,校验用户请求。
其次,Redis本身提供了一些简单的配置以满足基本的安全控制。
- ip绑定。如果不需要直接对外提供服务,bind 127.0.0.1就行了,切忌bind 0.0.0.0!
- 端口设置。修改默认的6379,一定程度上避免被扫描。
- 设置密码。Redis的密码是通过requirepass以明文的形式配置在conf文件里的,所以要尽可能得长和复杂,降低被破解的风险。
- 重命名或禁用某些高危操作命令。向config、flushall、flushdb这些操作都是很关键的,不小心就会导致数据库不可用。可以在配置文件中通过rename-command重命名或禁用这些命令。
零一积流|IT参考 原创文章,转载请注明出处: http://www.it-refer.com/2015/11/17/redis-security-config
Redis安全性配置的更多相关文章
- Redis安装配置与Jedis访问数据库
一.NOSQL概要 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库.NoSQL数据库的四大分类 键值(Key-Value)存储数据库 这一类数据 ...
- Redis——学习之路三(初识redis config配置)
我们先看看config 默认情况下系统是怎么配置的.在命令行中输入 config get *(如图) 默认情况下有61配置信息,每一个命令占两行,第一行为配置名称信息,第二行为配置的具体信息. ...
- redis哨兵配置
redis哨兵配置主从 redis哨兵的启动和redis实例的启动没有关系.所以可以在任何机器上启动redis哨兵.至少要保证有两个哨兵在运行,要不然宕机后哨兵会找不到主节点. 配置步骤: 1.在 ...
- Linux下Redis服务器安装配置
说明:操作系统:CentOS1.安装编译工具yum install wget make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel ...
- CentOS下Redis服务器安装配置
说明: 操作系统:CentOS 1.安装编译工具 yum install wget make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-de ...
- Redis主从配置详细过程
Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构.下面楼主简单的进行一下配置. 1.上面安装 ...
- redis主从配置及主从切换 转
redis主从配置及主从切换 转自 http://blog.sina.com.cn/s/blog_67196ddc0101h8v0.html (2014-04-28 17:48:47) 转载▼ 分 ...
- Redis 客户端配置及示例
一.redis自定义配置节点 <configSections> <section name ="RedisConfig" type="Amy.Toolk ...
- redis.conf 配置详解
# Redis 配置文件 # 当配置中需要配置内存大小时,可以使用 1k, 5GB, 4M 等类似的格式,其转换方式如下(不区分大小写) # # 1k => 1000 bytes # 1kb = ...
随机推荐
- Windows下tomcat进程监控批处理程序
在Windows下tomcat进程监控批处理程序脚本如下: @echo off ::tomcat安装目录 set _tomcatDir=E:\myFiles\apache-tomcat-8.5.31 ...
- vue集成ueditor
相关代码见github 1.引入ueditor相关的文件,具体目录见下图如下 我将下载的文件放在static下面,这里专门用来放置相关的静态文件 (在ueditor.config.js需要配置一下路径 ...
- LeetCode——Is Subsequence
Question Given a string s and a string t, check if s is subsequence of t. You may assume that there ...
- SQL查询入门(下篇)
SQL查询入门(下篇) 文章转自:http://www.cnblogs.com/CareySon/archive/2011/05/18/2049727.html 引言 在前两篇文章中,对于单表查询 ...
- Objective C NSString 编码成URL 特殊字符处理
找了一下网上的教程都是使用类似以下代码,Xcode提示这个CoreFoundation不受ARC管理,所以折中的方式是添加__bridge. NSString *encodedValue = (__b ...
- 数据可视化——matplotlib(3)
导入相关模块 import matplotlib.pyplot as plt import numpy as np import pandas as pd 中文显示设置 在之前,绘图时均使用的是英文, ...
- input实现文件上传
input实现文件上传 input + ajax 实现文件上传,包括文件大小及类型的判断 一.html <input type="file" id="file&qu ...
- 对reducers 理解
var reducers = { totalInEuros : function(state, item) { return state.euros += item.price * 0.8974243 ...
- 用stringstream实现从数字到字符串的转化
代码简单,字符串到数字和数字到字符串的写法类似. #include <sstream> #include <bits/stdc++.h> using namespace std ...
- day5-import机制详述
一.概述 但凡稍微复杂一些的python程序,都不可避免地需要import一些内置模块或外部模块,当然也有可能import进来一个package,java语言中也经常见到各种import打头,可见其用 ...