Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Не работает ipset + netfilter-persistent  (Прочитано 2415 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн BAKT

  • Автор темы
  • Участник
  • *
  • Сообщений: 112
    • Просмотр профиля
Не работает ipset + netfilter-persistent
« : 13 Марта 2017, 16:33:47 »
Если в списке правил iptables есть правила от ipset, то при попытке восстановить правила через netfilter-persistent (вручную или при перезагрузке машины) я ловлю ошибку:

service netfilter-persistent start
Job for netfilter-persistent.service failed because the control process exited with error code. See "systemctl status netfilter-persistent.service" and "journalctl -xe" for details.

systemctl status netfilter-persistent.service
● netfilter-persistent.service - netfilter persistent configuration
   Loaded: loaded (/lib/systemd/system/netfilter-persistent.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Пн 2017-03-13 16:31:57 MSK; 29s ago
  Process: 831 ExecStart=/usr/sbin/netfilter-persistent start (code=exited, status=1/FAILURE)
 Main PID: 831 (code=exited, status=1/FAILURE)

мар 13 16:31:57 school371 systemd[1]: Starting netfilter persistent configuration...
мар 13 16:31:57 school371 netfilter-persistent[831]: run-parts: executing /usr/share/netfilter-persistent/plugins.d/15-ip4tables start
мар 13 16:31:57 school371 netfilter-persistent[831]: run-parts: /usr/share/netfilter-persistent/plugins.d/15-ip4tables exited with return code 2
мар 13 16:31:57 school371 systemd[1]: netfilter-persistent.service: Main process exited, code=exited, status=1/FAILURE
мар 13 16:31:57 school371 systemd[1]: Failed to start netfilter persistent configuration.
мар 13 16:31:57 school371 systemd[1]: netfilter-persistent.service: Unit entered failed state.
мар 13 16:31:57 school371 systemd[1]: netfilter-persistent.service: Failed with result 'exit-code'.

как только ipset убираешь из правил - всё нормально грузится.

Почему? Что я делаю не так?

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1751
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #1 : 13 Марта 2017, 17:30:51 »
bash -x /usr/share/netfilter-persistent/plugins.d/15-ip4tables start
?

Оффлайн BAKT

  • Автор темы
  • Участник
  • *
  • Сообщений: 112
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #2 : 13 Марта 2017, 17:47:45 »
bash -x /usr/share/netfilter-persistent/plugins.d/15-ip4tables start
+ set -e
+ rc=0
+ case "$1" in
+ load_rules
+ '[' '!' -f /etc/iptables/rules.v4 ']'
+ iptables-restore

И что это мне дало?

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1751
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #3 : 13 Марта 2017, 18:15:54 »
И что это мне дало?

в /etc/iptables/rules.v4 правила есть?

Оффлайн BAKT

  • Автор темы
  • Участник
  • *
  • Сообщений: 112
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #4 : 13 Марта 2017, 18:25:27 »
Есть. Но, как я уже говорил, до тех пор пока в них есть правила от ipset - восстановить их или вообще запустить netfilter-persistent не представляется возможным. Как только правила удаляешь - всё работает.

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1751
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #5 : 13 Марта 2017, 19:06:38 »
правила удаляешь - всё работает

может с правилами что-то не так...

Оффлайн BAKT

  • Автор темы
  • Участник
  • *
  • Сообщений: 112
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #6 : 13 Марта 2017, 20:01:50 »
iptables -nL
Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            /* ALLOW all LOOPBACK traffic by default */
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:22 state NEW,ESTABLISHED
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp spt:22 state ESTABLISHED
BAN        all  --  0.0.0.0/0            0.0.0.0/0            state NEW


Chain BAN (1 references)
target     prot opt source               destination         
DROP       all  --  0.0.0.0/0            0.0.0.0/0            match-set BAN src
C_FILTER   all  --  0.0.0.0/0            0.0.0.0/0            ! match-set BAN src
RETURN     all  --  0.0.0.0/0            0.0.0.0/0           

Chain C_FILTER (1 references)
target     prot opt source               destination         
WH_LIST    all  --  0.0.0.0/0            0.0.0.0/0            ! match-set C_FILTER src
RETURN     all  --  0.0.0.0/0            0.0.0.0/0            match-set C_FILTER src

Chain WH_LIST (1 references)
target     prot opt source               destination         
RETURN     all  --  0.0.0.0/0            0.0.0.0/0            match-set WH_LIST src
DROP       all  --  0.0.0.0/0            0.0.0.0/0            ! match-set WH_LIST src

Вот часть списка правил, которая относится к ipset.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #7 : 13 Марта 2017, 23:12:03 »
iptables-save показывайте.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн BAKT

  • Автор темы
  • Участник
  • *
  • Сообщений: 112
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #8 : 13 Марта 2017, 23:51:42 »
# Generated by iptables-save v1.6.0 on Mon Mar 13 23:49:07 2017
*filter
:INPUT DROP [16083:4490680]
:FORWARD DROP [0:0]
:OUTPUT DROP [594:179712]
:BAN - [0:0]
:C_FILTER - [0:0]
:ICMP_TBL - [0:0]
:TCP_TBL - [0:0]
:UDP_TBL - [0:0]
:WH_LIST - [0:0]
-A INPUT -i lo -m comment --comment "ALLOW all LOOPBACK traffic by default" -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -m state --state NEW -j BAN
-A INPUT -p tcp -m comment --comment "Redirect to TCP rules table" -j TCP_TBL
-A INPUT -p udp -m comment --comment "Redirect to UDP rules table" -j UDP_TBL
-A INPUT -p icmp -m comment --comment "Redirect to ICMP rules table" -j ICMP_TBL
-A OUTPUT -o lo -m comment --comment "ALLOW all LOOPBACK traffic by default" -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m comment --comment "Redirect to TCP rules table" -j TCP_TBL
-A OUTPUT -p udp -m comment --comment "Redirect to UDP rules table" -j UDP_TBL
-A OUTPUT -p icmp -m comment --comment "Redirect to ICMP rules table" -j ICMP_TBL
-A BAN -m set --match-set BAN src -j DROP
-A BAN -m set ! --match-set BAN src -j C_FILTER
-A BAN -j RETURN
-A C_FILTER -m set ! --match-set C_FILTER src -j WH_LIST
-A C_FILTER -m set --match-set C_FILTER src -j RETURN
-A ICMP_TBL -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A ICMP_TBL -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A ICMP_TBL -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A ICMP_TBL -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A TCP_TBL -i eth0 -p tcp -m tcp --dport 80 -m string --string "GET /w00tw00t" --algo bm --to 70 -m comment --comment "Logging web-bot" -j LOG --log-prefix "Web BOT #w00tw00t**" --log-level 6
-A TCP_TBL -i eth0 -p tcp -m tcp --dport 80 -m string --string "GET /w00tw00t" --algo bm --to 70 -m comment --comment "Blocking web-bot" -j DROP
-A TCP_TBL -i eth0 -p tcp -m multiport --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
-A TCP_TBL -o eth0 -p tcp -m multiport --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
-A TCP_TBL -o eth0 -p tcp -m multiport --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
-A TCP_TBL -i eth0 -p tcp -m multiport --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
-A TCP_TBL -i eth0 -p tcp -m multiport --dports 80,443 -m limit --limit 25/min --limit-burst 100 -j ACCEPT
-A TCP_TBL -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
-A TCP_TBL -i eth0 -p tcp -m tcp --sport 21 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
-A TCP_TBL -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 20 -m state --state NEW,ESTABLISHED -j ACCEPT
-A TCP_TBL -i eth0 -p tcp -m tcp --sport 20 --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A TCP_TBL -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A TCP_TBL -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A TCP_TBL -o eth0 -p tcp -m tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
-A TCP_TBL -i eth0 -p tcp -m tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT
-A UDP_TBL -o eth0 -p udp -m udp --dport 53 -j ACCEPT
-A UDP_TBL -i eth0 -p udp -m udp --sport 53 -j ACCEPT
-A WH_LIST -m set --match-set WH_LIST src -j RETURN
-A WH_LIST -m set ! --match-set WH_LIST src -j DROP
COMMIT
# Completed on Mon Mar 13 23:49:07 2017

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #9 : 13 Марта 2017, 23:55:44 »
:OUTPUT DROP [594:179712]
Это почти всегда ошибка.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн BAKT

  • Автор темы
  • Участник
  • *
  • Сообщений: 112
    • Просмотр профиля
Re: Не работает ipset + netfilter-persistent
« Ответ #10 : 14 Марта 2017, 00:01:14 »
Возможно. Однако, мне кажется, что оно не влияет на мой вопрос.  :)

 

Страница сгенерирована за 0.028 секунд. Запросов: 25.