1、Redis是c语言开发的。
2、安装redis需要c语言的编译环境。如果没有gcc需要在线安装。
命令行:
第一步:redis 的源码包上传到 linux 系统。
官方下载地址(选择要安装的版本):
https://download.redis.io/releases/
第二步:解压缩redis。
命令行:
第四步:安装。
命令行:
注意:PREFIX参数指定redis的安装目录。一般软件安装到/usr目录下
3.1. redis的启动
1、前端启动模式
在redis的安装目录下直接启动redis-server。
注意:前端启动模式下,终端窗口就会占用,结束方式:快捷键。
2、后台启动模式(推荐使用)
(1)把/root/redis-3.0.0/redis.conf复制到/usr/local/redis/bin目录下。
[root@localhost redis-3.0.0]#
(2)修改配置文件。
[root@localhost bin]#
- 配置日志文件位置(需要提前创建)
- 指定存储目录,不改为redis.conf所在目录,,后面设置自启时方便查找数据存储目
(3)查看redis进程。
[root@localhost bin]#
(4)通过进程关闭方式,关闭redis服务。
[root@localhost bin]#
注意:kill -9 pid 表示强制关闭。Kill pid 表示正常完成当前任务后关闭
(5)远程连接端口开放解决方案:
CentOS7.x版本(firewall-cmd防火墙):
开放端口:
重启防火墙:
其他命令:
#查看firewall防火墙状态
#查看firewall防火墙开放端
#打开firewall防火墙
#关闭firewall防火墙
#禁止firewall开机启动
3、开机自启
- 新建 redis 系统服务文件
- redis.service 文件内容
3.2. redis-cli
[root@localhost bin]#
-h:连接的服务器的地址
-p:服务的端口号
-a:密码登录
上述命令虽然一步到位,但是容易泄漏密码,因此 Redis 不建议这么操作,而是采取安全登录方式:
针对修改了监听地址和端口号的关闭命令使用:
3.3. Redis五种数据类型
1)String:key-value(做缓存)
Redis中所有的数据都是字符串。命令不区分大小写,key是区分大小写的。Redis是单线程的。Redis中不适合保存内容大的数据。
set(设置)、get(得到)、del(删除)、keys *(查看所有)
incr:加一(生成id),decr:减一
2)Hash:key-fields-values(做缓存)
相当于一个key对于一个map,map中还有key-value
使用hash对key进行归类。
Hset:向hash中添加内容
Hget:从hash中取内容
3)List:有顺序可重复(双向链表)
4)Set:元素无顺序,不能重复
5)SortedSet(zset):有顺序,不能重复
3.4. Key命令
设置key的过期时间。
Expire key second:设置key的过期时间
Ttl key:查看key的有效期
Persist key:清除key的过期时间。Key持久化。
1、安全配置缘由
Redis 默认情况下,会绑定在 0.0.0.0:6379,这样将会将 Redis 服务暴露到公网上,如果在没有开启认证的情况下,可以导致任意用户在可以访问目标服务器的情况下未授权访问 Redis 以及读取 Redis 的数据。攻击者在未授权访问 Redis 的情况下可以利用 Redis 的相关方法,可以成功在 Redis 服务器上写入公钥,进而可以使用对应私钥直接登录目标服务器。
2、入侵特征
Redis 可能执行过 FLUSHALL 方法,整个 Redis 数据库被清空;
在 Redis 数据库中新建了一个名为 crackit(网上流传的命令指令) 的键值对,内容为一个 SSH 公钥;
在 /root/.ssh 文件夹下新建或者修改了 authorized_keys 文件,内容为 Redis 生成的 db 文件,包含上述公钥;
3、解决方案
1)修改Redis的默认端口,避免使用熟知的端口,降低被初级扫描的风险。
在redis.conf中配置如下:port 6379修改成其他端口号,例如6380,记得防火墙的开发端口也要修改成改后的端口号;
移除开放默认端口(针对CentOS7.x):
添加开放端口(针对CentOS7.x):
2)限制内网访问或者只本机访问,多个IP使用空格隔开。
在redis.conf中配置如下:
3)开启redis密码认证并设置高复杂度密码
在redis.conf中配置如下:
4)禁用或重命名危险命令,设置为空即为禁用该命令。(重命名一定要让其他人不易猜中)
在redis.conf中添加如下:
如图所示。
5)仅对特定IP开放访问Redis的使用端口。
设置命令如下:
针对一个网段:
6)修改redis文件目录访问权限。(暂定)
redis根目录设置为
redis.conf 设置为
7)禁止root用户启动redis(暂定)
注意添加用户
到此这篇连接redis(连接redis用什么包)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/rfx/46537.html