открыть порт redis для удаленных подключений

Я могу пинг-понг redis на сервере

# redis-cli ping
PONG

но удаленно есть проблемы:

$ src/redis-cli -h REMOTE.IP ping
Could not connect to Redis at REMOTE.IP:6379: Connection refused

в config я получил стандартный порт:

# Accept connections on the specified port, default is 6379.
# If port 0 is specified Redis will not listen on a TCP socket.
port 6379

Так, может быть, я должен открыть порт 6379 на удаленной машине? Как это сделать?

5 ответов


вы установили опцию привязки, чтобы разрешить удаленный доступ на сервере redis?

перед (файл /etc/redis/redis.conf)

bind 127.0.0.1

после

bind 0.0.0.0

и работать sudo service redis-server restart перезапустить сервер. Если это не проблема, вы можете проверить любые брандмауэры, которые могут заблокировать доступ.

важно: если вы не используете брандмауэр (iptables, ufw..) чтобы контролировать, кто подключается к используемому порту, любой может подключиться к этому экземпляру Redis. Без использования Рэдис' AUTH это означает, что любой может получить доступ к/изменить/удалить данные. Будь осторожен!


для меня, мне нужно сделать следующее:

1 - закомментировать bind 127.0.0.1

2 - Изменение protected-mode to no

3-защитите мой сервер с iptables (https://www.digitalocean.com/community/tutorials/how-to-implement-a-basic-firewall-template-with-iptables-on-ubuntu-14-04)


быстрое примечание, что делать это без дополнительной защиты вашего сервера Redis не является хорошей идеей, так как это может оставить вас открытыми для атаки. Не забудьте также реализовать AUTH или иным образом защитить это. См.http://redis.io/topics/security для деталей.


1-прокомментировать bind 127.0.0.1

2-установить requirepass yourpassword

затем проверьте, заблокировал ли брандмауэр ваш порт

iptables-L-n

сервис iptables стоп


Шаг 1: Перейдите к местоположению: / etc / redis.conf

Шаг 2: команда out bind 127.0.0.1

Шаг 3: Перезапустить Redis:- sudo systemctl начать redis.сервис

Шаг 4: Отключить Firewalld systemctl отключить firewalld

Шаг 5: Остановить Firewalld systemctl остановить firewalld

Затем Попробовать.

redis-cli-h 192.168.0.2(ip) -a redis (имя пользователя)