我最近开始在docker容器中使用redis 6.0,突然遇到了以下问题:我在日志中看到redis容器开始尝试写入/var/spool/cron目录。
这是我第二次面对这个问题,第一次发生在今晚(发射后几个小时内)。如果我重新启动容器,一切又会好起来。
我发现了一个link,上面说是这样的,因为redis容器被黑客攻击了:link
这是真的吗?我怎样才能解决这个问题?
我的dockerfile:
FROM redis:6.0-alpine
WORKDIR /usr/src/app
RUN apk add --no-cache tzdata
ENV TZ=Europe/Moscow
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
COPY redis.conf /usr/local/etc/redis/redis.conf
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ]
RUN chmod 0755 /usr/src/app/
RUN chmod 0755 /etc/crontabs/
RUN chmod 0755 /data/
redis配置要点:
# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
protected-mode no # I thought that if I have user protected-mode works by default
port 6379
dbfilename dump.rdb
dir ./
user someusername allcommands allkeys on >somelongpassword
我按以下方式运行docker conatainer:
docker run -p 6379:6379 -v myvol:/usr/src/app --name redis -d --network mynet redis
我贴上了终端窗口的打印屏幕。
1条答案
按热度按时间omtl5h9j1#
永远不要将未受保护的redis暴露在互联网上!
在您的例子中,虽然您为someusername设置了acl,但没有禁用默认用户。当protectedmode设置为no时,您将向所有人公开您的redis示例。
您需要将“保护模式”设置为“是”。您还可以使用以下配置禁用默认用户: