redis密码设置、访问权限控制等安全设置

redis作为一个高速数据库,在互联网上,必须有对应的安全机制来进行保护。

1.比较安全的办法是采用绑定IP的方式来进行控制。


代码如下:

bind 127.0.0.1

表示仅仅允许通过127.0.0.1这个ip地址进行访问。那么其实只有自己才能访问自己了,其他机器都无法访问他。

这段命令要去redis.conf里修改。

这里请注意

我们常用的启动方式src/redis-server

改为src/redis-server redis.conf

因为它需要加载配置文件。

这个方法有一点不太好,我难免有多台机器访问一个redis服务

2.设置密码,以提供远程登陆

redis.conf
找到
requirepass
写上
requirepass yourpassword
设置密码以后发现可以登陆,但是无法执行命令了。


代码如下:

src/redis-cli -h 192.168.1.121
keys *
(error) ERR operation not permitted

授权命令


代码如下:

auth 123456

登陆带密码方式


代码如下:

./redis-cli -h 192.168.1.121 -a abcd

由于redis并发能力极强,仅仅搞密码,攻击者可能在短期内发送大量猜密码的请求,很容易暴力破解,所以建议密码越长越好,比如20位。(密码在 conf文件里是明文,所以不用担心自己会忘记)

(0)

相关推荐

  • 关于Redis未授权访问漏洞利用的介绍与修复建议

    前言 本文主要给大家介绍了关于Redis未授权访问漏洞利用的相关内容,文中对该漏洞进行了详细,并给出了相对应的修复/安全建议,下面话不多说了,来一起看看详细的介绍吧. 一.漏洞介绍 Redis 默认情况下,会绑定在 0.0.0.0:6379,这样将会将 Redis 服务暴露到公网上,如果在没有开启认证的情况下,可以导致任意用户在可以访问目标服务器的情况下未授权访问 Redis 以及读取 Redis 的数据.攻击者在未授权访问 Redis 的情况下可以利用 Redis 的相关方法,可以成功在 Re

  • python脚本实现Redis未授权批量提权

    前言 本文主要给大家介绍了关于redis未授权批量提权的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 安装依赖 sudo easy_install redis 使用 redis python hackredis.py usage: hackredis.py [-h] [-l IPLIST] [-p PORT] [-r ID_RSAFILE] [-sp SSH_PORT] For Example: -----------------------------------

  • redis密码设置、访问权限控制等安全设置

    redis作为一个高速数据库,在互联网上,必须有对应的安全机制来进行保护. 1.比较安全的办法是采用绑定IP的方式来进行控制. 复制代码 代码如下: bind 127.0.0.1 表示仅仅允许通过127.0.0.1这个ip地址进行访问.那么其实只有自己才能访问自己了,其他机器都无法访问他. 这段命令要去redis.conf里修改. 这里请注意 我们常用的启动方式src/redis-server 改为src/redis-server redis.conf 因为它需要加载配置文件. 这个方法有一点不

  • 理解Java访问权限控制

    今天我们来一起了解一下Java语言中的访问权限控制.在讨论访问权限控制之前,先来讨论一下为何需要访问权限控制.考虑两个场景: 场景1:工程师A编写了一个类ClassA,但是工程师A并不希望ClassA被该应用中其他所用的类都访问到,那么该如何处理? 场景2:如果工程师A编写了一个类ClassA,其中有两个方法fun1.fun2,工程师只想让fun1对外可见,也就是说,如果别的工程师来调用ClassA,只可以调用方法fun1,那么该怎么处理? 此时,访问权限控制便可以起到作用了. 在Java中,提

  • 详解Java之路(五) 访问权限控制

    在Java中,所有事物都具有某种形式的访问权限控制. 访问权限的控制等级从最大到最小依次为:public,protected,包访问权限(无关键词)和private. public,protected和private这几个Java访问权限修饰词在使用时,是置于类中每个成员(域或者方法)定义之前的. 一.类成员的访问权限 取得对某成员的访问权的唯一途径是: 1).使该成员成为public.无论谁在哪里,都可以访问该成员: 2).通过不加访问权限的修饰词并将其他类放置于同一包内的方式给成员赋予包访问

  • Java访问权限控制的重要性深入讲解

    前言 人在什么面前最容易失去抵抗力? 美色,算是一个,比如说西施的贡献薄就是忍辱负重.以身报国.助越灭吴:金钱,算是另外一个,我们古人常说"钱乃身外之物,生不带来死不带去",但我们又都知道"有钱能使鬼推磨". 除去美色和金钱,我认为还有一个,就是读者的认可--"二哥,你的文章真的很棒,我特别喜欢.希望能多多更新Java基础知识,真的是受益良多,就好像是在读王小波的散文,但又学了编程!"--你说,收到读者这样暖暖的评语,还需要美色和金钱?"

  • django 实现编写控制登录和访问权限控制的中间件方法

    django中,很多时候我们都需要有一个地方来进行更加详细的权限控制,例如说哪些用户可以访问哪些页面,检查登录状态等,这里的话就涉及到了中间件的编写了. 在django项目下的setting.py文件中,有一个MIDDLEWARE_CLASSES的字段,这里存放的就是中间件,用户的访问会先经过这些中间件的处理之后再给各种views函数进行处理.在这个参数中加入我们接下来要编写的中间件: MIDDLEWARE_CLASSES = ( 'django.contrib.sessions.middlew

  • 利用django-suit模板添加自定义的菜单、页面及设置访问权限

    前言 本文主要给大家介绍了利用django-suit模板在管理后台添加自定义的菜单和自定义的页面.设置访问权限的相关内容,分享出来供大家参考学习,下面话不多说了,来随着小编一起看看详细的介绍吧  方法如下: 1.先在settings.py里面的SUIT_CONFIG中添加配置,我们平时添加的配置都是app类型的,我们需要自定义页面的话,就不能用app了,需要用url,这里面我们使用如下: # django-suit config SUIT_CONFIG = { 'ADMIN_NAME': 'X·

  • ASP.NET中Webservice安全 实现访问权限控制

    一. 概述: Web Services是由企业发布的完成其特定商务需求的在线应用服务,其他公司或应用软件能够通过Internet来访问并使用这项在线服务.它逻辑性的为 其他应用程序提供数据与服务.各应用程序通过网络协议和规定的一些标准数据格式(Http,XML,Soap)来访问Web Service,通过Web Service内部执行得到所需结果.由于它通过internet进行调用,必然存在网络用户都可以调用的安全问题.如何实现webservice的访问 权限限制,是使用webservice用户

  • MongoDB为用户设置访问权限

    MongoDB已经使用很长一段时间了,基于MongoDB的数据存储也一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),今天特地花了一点时间研究了一下,研究成果如下: 注:研究成果基于Windows平台 MongoDB在本机安装部署好后 1. 输入命令:show dbs,你会发现它内置有两个数据库,一个名为admin,一个名为local.local好像没啥用,如果哪位在使用过程中发现了这个local表的用途,希望能够留言提醒,那我们就专心来说说admin表 2. 输入命令:use

  • Java类成员访问权限控制知识总结

    一 前言 这篇文章是很基础的一文,没多大深度,对于开发人员必然是熟练于心.本篇文章的主题是为什么java要设置类成员访问级别?其原因也很简单,就是为了面向对象的封装特性:将类成员使用不同的访问级别控制,在数据封装后,其他的类成员想要访问当前类成员,就必须要有足够的权限才能访问:这样做的目的就是我可以随意修改不想让其他类成员没有权限访问的数据,只要约定好相关的协议,不影响其他类成员访问即可: 二 权限修饰词介绍 public 意指公有的意思,其修饰的成员权限最低,表示任何成员都可以访问:注意点是一

  • Python变量访问权限控制详解

    oop1.py文件代码 # user/bin/python class Foo: def bar(self): print('ok') def hello(self, name): print("i am %s" % name) foo = Foo() foo.bar() foo.hello('Fred Huang') class Foo: def __init__(self, name, age): ''' 初始化实例属性''' self._name = name "&qu

随机推荐