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

правила iptables для drbd

У меня дефолт DROP политика в отношении INPUT и OUTPUT цепочка настроена для iptables, и я пытаюсь настроить правильные правила iptables для двух серверов, которые зеркалируют данные через drbd.

Конфигурация ресурса:

resource data {
    on data001 {
        device /dev/drbd0;
        disk /dev/mapper/vg--system-data;
        meta-disk internal;
        address 10.0.0.10:7788;
    }
    on data002 {
        device /dev/drbd0;
        disk /dev/mapper/vg--system-data;
        meta-disk internal;
        address 10.0.0.11:7788;
    }
}

Для iptables на обоих узлах drbd установлены следующие правила:

-A INPUT -p tcp -s 10.0.0.10 --sport 7788 -j ACCEPT
-A OUTPUT -p tcp -d 10.0.0.10 --dport 7788 -j ACCEPT
-A INPUT -p tcp -s 10.0.0.11 --sport 7788 -j ACCEPT
-A OUTPUT -p tcp -d 10.0.0.11 --dport 7788 -j ACCEPT

Однако drbd не может правильно установить соединение между хостами. Обновление политик по умолчанию на обоих хостах до ACCEPT работает как положено.

Вы должны разрешить ESTABLISHED соединения для INPUT и OUTPUT. В дополнение к настройке соединения вам необходимо разрешить пакеты с портом назначения 7788, как исходящие, так и входящие.

редактировать

-A INPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT
-A INPUT -p tcp -s 10.0.0.10 --dport 7788 -j ACCEPT
-A INPUT -p tcp -s 10.0.0.11 --dport 7788 -j ACCEPT
-A OUTPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -d 10.0.0.10 --dport 7788 -j ACCEPT
-A OUTPUT -p tcp -d 10.0.0.11 --dport 7788 -j ACCEPT