为什么 redis 会设置 AUTH ?

2018-01-26 17:11:52 +08:00
 zilan

最近正在学习 redis,发现 redis 需要设置一个密码 auth。就按照要求的做了。 但是回头一想,为什么要设置这样一个鉴权过程呢? 有没有人研究过是出于什么样的安全考虑。

7423 次点击
所在节点    PHP
35 条回复
imherer
2018-01-26 17:14:34 +08:00
这不就和服务器登录需要输入密码一个道理么

虽然 redis 可以 bind 访问 ip,但你也不敢保证你 bing 的 ip 百分百安全吧
hcymk2
2018-01-26 17:16:25 +08:00
你家里面自己私人的抽屉要上锁么?
bookding
2018-01-26 17:16:52 +08:00
你不需要也可以不设啊……
k9982874
2018-01-26 17:17:33 +08:00
因为有些人会把 redis 暴露到公网上,然后就被爆菊花了。
zsdroid
2018-01-26 17:25:32 +08:00
为什么你家要安装大门呢? 有没有研究过是出于什么样的安全考虑?
shiroming
2018-01-26 17:41:25 +08:00
如果服务不只是本机的话,就需要设置 auth 了,但是这样也不能保证安全。可惜 redis 官方一直没有 ssl,需要用三方工具
Aliencn
2018-01-26 17:45:36 +08:00
想起前两年爆出一大堆无密码允许公网访问的 redis。
其实如果注重连接速度的话,可以不用密码,防火墙策略设置严格一点。
gleymonkey
2018-01-26 17:47:37 +08:00
不设置就被挖矿了。。我就是。
nutting
2018-01-26 17:49:52 +08:00
楼主意思里面数据无所谓?意思 redis 被攻破不影响其它?
fcten
2018-01-26 17:57:33 +08:00
又不是必须的。访问环境不受信任就设,可信就不设。这不是和任何设密码的环境都一样吗……
changnet
2018-01-26 18:08:16 +08:00
参考 mongodb 当年被骂得狗血淋头
laoyur
2018-01-26 18:09:18 +08:00
不理解楼主的逻辑,你都说这个 AUTH 是密码了,然后还问「是出于什么样的安全考虑」
AUTH 本身提供的安全保证是否足够安全,这是另外一个话题
kslr
2018-01-26 19:25:35 +08:00
如果在公网,并且没有使用防火墙,那么任何人都可以连接。
est
2018-01-26 19:29:57 +08:00
比如你开了个爬虫服务,输入网址,得到结果

然后别人提交了一个向本机 redis flushdb 的指令。
hantsy
2018-01-26 21:32:19 +08:00
生产环境不管暴露不暴露到公网(当然数据库一般不应该暴露在公网的),都要设置密码(而且要定期或不定期的修改,最好是 DevOps 人员用一些密码管理工具来解决,比如 Vault,https://www.vaultproject.io/ )。。。开发,内部测试环境倒是可以偷懒一下。

Mongo 默认也没设置密码,同样应该如此。

MySQL 在公网要设置单个应用程序(你的项目)的用户 /密码进行连接(且仅允许连接你的应用的数据库,其他数据库禁止访问),root 要限制 IP 访问(针对公司固定 IP 可以访问或者直接禁用任何 IP,仅仅允许 SSH 登录上去用 Localhost 连接),禁止外部远程连接。

这应该算常识吧。
mritd
2018-01-26 23:48:48 +08:00
那个楼上大部分是喷的,我来具体说下常见 redis 被黑套路:

1、redis 以 root 权限运行
2、公网暴露端口不加认证
3、任意用户连接进入
4、黑阔执行 config 将自己的公钥持久化到 ~/.ssh/authorized_keys
5、黑阔直接 ssh 免密码使用私钥登录目标主机
6、rm -rf /
7、用户发现,嚎啕大哭
8、其他用户继续公网暴露不加权限......
mingyun
2018-01-26 23:49:31 +08:00
@hantsy
mritd
2018-01-26 23:50:30 +08:00
最后,兄台可口将你的服务器地址告诉我;我现在急缺一台 linux 测试机(别人的那种) 😂
shiyouming91
2018-01-27 08:04:09 +08:00
因为就算只打开 localhost 的端口,你本机任何用户下的进程仍然能访问这个端口。设想你有一个 uid 是 nobody 的进程被黑了,黑客本来是没有办法用 nobody 干什么坏事的,但是你有一个不配置 auth 的 redis 的话黑客就可以连接你的 redis 干坏事了。
yongjing
2018-01-27 08:59:24 +08:00
矿机好友~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/426220

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX