Назад | Перейти на главную страницу

Как установить правила брандмауэра, принимающие порт 11211 в интрасети для memcached (Fedora)?

Я новичок в Fedora и backend. И недавно у меня появилась работа по созданию игрового сервера через линод. Текущая установка - 2 линода + 1 узел балансировки, у меня есть сервер memcached на каждом линоде, и у меня есть установка memAdmin для контроля memcached.

Мой вопрос: как создать правила брандмауэра, разрешающие S1 (memAdmin) подключаться к telnet S2 11211? Поскольку мой memAdmin находится в S1, и ему нужно разрешение на доступ к S2 memcached. Я попробовал несколько правил, например:

iptables -P INPUT DROP
iptables -A INPUT -p tcp -s (S1's ip) --dport 23 -j ACCEPT
iptables -A INPUT -p tcp -s (S1's ip) --dport 11211 -j ACCEPT

Я даже пробовал использовать IP-адрес интрасети, например 192.168.0.0/24 для -s, но он все равно не работает. Я установил OPTION в / etc / sysconfig / memcached на "-l 0.0.0.0", служба memcached прослушивает IP 0.0.0.0, но я все еще не могу telnet S2 11211 из S1.

Я пытался остановить службу iptables. И я могу подключиться по telnet к S2 через мой компьютер, но я все еще не могу подключиться по telnet с S1 на S2.

Я новичок, помогите пожалуйста.

Вывод iptables -L INPUT -vn:

Chain INPUT (policy DROP 225 packets, 13464 bytes)                                                                 
 pkts bytes target     prot opt in     out     source               destination                                    
    0     0 ACCEPT     tcp  --  *      *       S1's IP              0.0.0.0/0            tcp dpt:23                
    7   420 ACCEPT     tcp  --  *      *       S1's IP              0.0.0.0/0            tcp dpt:11211             
   24  1314 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0

Наконец я нашел решение. Мне не хватало правил для S1 и S2: iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT Добавление этого правила в конец цепочки INPUT у меня работает. Еще раз спасибо за все ваши ответы.

Сервер и клиент находятся в одной подсети или нет? Сначала проверьте, прослушивает ли ваш memcached все IP: netstat -pntle | grep 11211. В 4-м столбце вы увидите «0.0.0.0:11211». Если нет, проверьте свою конфигурацию, перезапустите сервер. Добавьте строку iptables -A INPUT -j LOG иметь журнал отклоненных подключений.