在kali linux中redis的配置和基本使用

一、安装和启动


1. 安装Redis

kali linux 的apt 包管理器中自带redis下载链接,可直接使用apt命令下载,sudo命令作用是普通用户行使root用户权限

# 查看 apt 包管理器 redis 版本
sudo apt | grep redis-server
# 下载并安装redis
sudo apt install redis-server -y
# 查看已经安装的redis-server
sudo dpkg -l redis-server

实操附图:

① 查看可安装的redis-server 版本

在这里插入图片描述

② 查看已经安装的redis-server

在这里插入图片描述


2. 启动Redis服务

# 查看redis服务状态
sudo systemctl status redis-server
# 设置开机自启
sudo systemctl enable redis-server
# 启动服务
sudo systemctl start redis-server
# 检查服务状态
sudo systemctl status redis-server

实操附图

①可以看到 redis 未开机自启和未启动服务

在这里插入图片描述

②开启开机自启和启动服务

在这里插入图片描述


3. 验证Redis版本和运行

# 查看reids版本
redis-cli --version
# 验证redis运行
redis-cli ping
# 成功会返回 "PONG"
# 或者进入redis-cli界面验证

实操附图:

① 查看版本

在这里插入图片描述

② 直接使用redis-cli命令验证

在这里插入图片描述

③ 进入redis-cli界面验证,退出按 ctrl + c

在这里插入图片描述

二、安全配置

1. 配置Redis

编辑配置文件
sudo vim /etc/redis/redis.conf
关键配置项
  • 允许远程访问(可选,需谨慎)
    修改 bind 行:

    bind 0.0.0.0
    
  • 设置访问密码(增强安全性)
    取消注释并修改 requirepass

    requirepass your_strong_password
    
  • 关闭保护模式(如果未设置密码需保持开启)

    protected-mode yes
    

保存后重启服务:

sudo systemctl restart redis-server

vim的常用操作
①模式:
命令模式和插入模式
进入插入模式后按esc退到命令模式

②插入内容操作(进入插入模式):
按字母 i,I,a,A,o,O 都是插入内容方式

③查找内容操作(在命令模式) :
按 /
④退出文件操作(在命令模式) :
qw 保存退出 :q! 不保存退出

实操附图:

① 允许所有机子远程访问(可以具体指定)
远程访问与登陆密码一定一起设置使用

在这里插入图片描述

② 添加登陆密码

在这里插入图片描述

③ 重新启动服务


2. 测试远程连接

可以远程连接本机子的 ip 地址进行测试

redis-cli -h 192.168.238.150 -p 6379
AUTH wgs
# 输入密码后执行命令测试

实操附图:

① 未设置远程连接的结果

在这里插入图片描述

② 设置远程连接未设置登陆密码的结果

在这里插入图片描述

③ 设置远程连接和登陆密码的结果

在这里插入图片描述


3. 基本使用示例

# 连接到本地Redis
redis-cli
# 或者远程连接redis
redis-cli -h 192.168.238.150 -p 6379
# 验证密码(如果设置了密码)
auth wgs
# 存储数据
set key1 "hello redis"
# 读取数据
get key1
# 退出
exit

实操附图:

在这里插入图片描述


4.安全建议

  1. 仅本地访问:如无需远程连接,保持 bind 127.0.0.1
  2. 使用SSH隧道:替代直接开放端口,更安全。
  3. 定期备份:Redis数据目录默认在 /var/lib/redis
  4. 监控日志:日志路径 /var/log/redis/redis-server.log

故障排查

  • 查看日志
    journalctl -u redis-server -f
    
  • 检查端口占用
    ss -tulnp | grep 6379
    

三、 理论与实操

1、Redis基础概念

①. Redis是什么?
  • 内存数据库:数据存储在内存中,读写速度极快(微秒级)。
  • 键值存储:以key-value形式存储数据,支持多种数据结构。
  • 持久化:支持RDB(快照)和AOF(日志)两种持久化方式。
  • 单线程模型:基于事件循环,避免多线程竞争,保证原子性。
② Redis适用场景
  • 缓存系统(如网页缓存、会话缓存)
  • 实时排行榜(有序集合)
  • 消息队列(列表/发布订阅)
  • 计数器(如网站访问量)
  • 分布式锁

2、Redis数据结构与命令

Redis支持5种核心数据结构:字符串、列表、哈希、集合、有序集合


①. 字符串(Strings)
  • 特点:二进制安全,可存储文本、JSON、数字等。
  • 常用命令
    SET key value         # 设置键值(覆盖原有值)
    GET key               # 获取值
    INCR key              # 值自增1(原子操作)
    DECR key              # 值自减1
    APPEND key value      # 追加内容
    STRLEN key            # 获取字符串长度
    MSET key1 val1 key2 val2  # 批量设置
    MGET key1 key2        # 批量获取
    EXPIRE key 60         # 设置过期时间(秒)
    
  • 实操附图
    在这里插入图片描述
    在这里插入图片描述

②. 列表(Lists)
  • 特点:双向链表,支持左右插入/弹出。
  • 常用命令
    LPUSH list value      # 左端插入
    RPUSH list value      # 右端插入
    LPOP list             # 左端弹出
    RPOP list             # 右端弹出
    LRANGE list 0 -1      # 获取全部元素
    LLEN list             # 获取列表长度
    LINDEX list 0         # 获取索引0的元素
    
  • 实操附图
    在这里插入图片描述
    在这里插入图片描述

③. 哈希(Hashes)
  • 特点:键值对集合,适合存储对象。
  • 常用命令
    HSET user1 name "wgs"   # 设置字段及值
    HGET user1 name        # 获取字段值
    HMSET user2 name "wgs" age 25 # 批量设置字段及值
    HMGET user2 name age # 批量获取多个字段值
    HGETALL user2          # 获取所有字段及值
    HDEL user1 name         # 删除字段
    HEXISTS user1 name    # 检查字段是否存在
    
  • 实操附图
    在这里插入图片描述

④. 集合(Sets)
  • 特点:无序、元素唯一,支持交并差运算。
  • 常用命令
    SADD set1 "red" "pink" "blue"  # 添加元素
    SADD set2 "red" "green"	"blue"
    SMEMBERS set1          # 获取所有元素
    SREM set2 "blue"   # 删除元素
    SISMEMBER set1 "blue" # 检查元素是否存在
    SINTER set1 set2       # 交集
    SUNION set1 set2       # 并集
    SDIFF set1 set2		   # 差集
    DEL set1 			   # 删除集合
    
  • 示例
    在这里插入图片描述
    在这里插入图片描述

⑤. 有序集合(Sorted Sets)
  • 特点:元素唯一,每个元素关联一个分数(score)用于排序。
  • 常用命令
    ZADD sset 100 "red" 90 "blue" 80 "green" # 添加元素
    ZRANGE sset 0 -1 WITHSCORES     # 按分数升序获取
    ZREVRANGE sset 0 -1 WITHSCORES  # 按分数降序获取
    ZRANK sset "red"      # 获取升序排名
    ZSCORE sset "red"     # 获取分数
    ZRANGEBYSCORE sset 90 100  # 获取分数在80~100的元素
    
  • 实操附图
    在这里插入图片描述

3、学习资源

①. 官方文档https://redis.io/documentation
②. Redis命令速查https://redis.io/commands


以上内容根据deepseek生成教程大纲,由本人进行实操并添加内容验证其能够在kali linux入门 redis 的可行性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值