С какой-то там версии 3.2.х bind нескольких ip в конфиге не позволяет стартануть серверу.
Поэтому вариант такой:
1. В /redis.conf меняем
bind 0.0.0.0 //открываем доступ к базе из вне
*опционально меням порт против типо этого zmap -p6379 -o omg.txt
очень рекомендовано прописать:
requirepass nl6Cq8mthJrrXbqlDqLaPgtFkeq12zqB7Sb5j5UJ
ну и очень рекомендовано отключить управление конфигом с командной строки:
rename-command CONFIG ""
После рестарта сервера, он по ip и порту должен смотреть наружу:
redis-cli -h ваш_ip -p ваш_порт
2. Прописываем правила для iptables
Важно! Все правила идут в строгом порядке, поэтому желательно обнулить все правила, перезаписать файл с листом начисто. И пройтись заново и в том месте, где открываются порты 80, для SSH и ряд других прописать:
iptables -A INPUT -p tcp -s y.y.y.y --dport хххх -j ACCEPT доступ с y.y.y.y ip на такой то порт
повторяем правило для ip всех микросервисов что будут стучаться к redis
открываем локальный интерфейс:
iptables -A INPUT -i lo -j ACCEPT
последним блокируем всё что не описано правилами и открываем исходящие пакеты:
После этого можно заблокировать все остальное и разрешить все исходящие соединения.
iptables -P OUTPUT ACCEPT
iptables -P INPUT DROP
После перезагрузки iptables и если всё правильно настроено порт должен быть только для нужных нам ip. А если следовать всем инструкциям, то даже если пакет и пролетит фаервол, он упрется в авторизацию и не сможет с командной строки сгенерировать ключ доступа к серверу.
P.S Если всё пошло не так, обнуляется iptables так:
iptables -F