Рейтинг:1

Почему ufw не блокирует трафик с 169.254.169.254:179?

флаг jp

Мой уфв включен и разрешает только ssh и wireguard:

# статус ufw
Статус: активен

К действию от
-- ------ ----
22/tcp РАЗРЕШИТЬ ВСЕГДА                  
51820/udp РАЗРЕШИТЬ ВСЕГДА             
22/tcp (v6) РАЗРЕШИТЬ везде (v6)             
51820/udp (v6) РАЗРЕШИТЬ ВСЕГДА (v6)             

# 

Я также общаюсь через хост 169.254.169.254 по BGP (порт 179). Это сообщение работает, хотя я нет разрешить это. Почему??

Это потому, что 169.254.169.254 - это локальный адрес ссылки? (Интересно, что интерфейс делает нет иметь определенный локальный адрес ссылки. Связь идет через шлюз по умолчанию. Это настройка на хостинге Vultr).

Заглянул в iptables, но не вижу, как будут приниматься эти пакеты: Цепочка ufw-not-local имеет ссылку на ЛОКАЛЬНЫЕ адреса:

# iptables -v -L ufw-не-локальный
Сеть ufw-not-local (1 ссылка)
 pkts bytes target prot opt ​​in out source target         
  508 30944 RETURN all -- любой любой где угодно ADDRTYPE соответствует dst-type LOCAL
    0 0 RETURN all -- любой любой где угодно ADDRTYPE соответствует dst-type MULTICAST
  125 6739 RETURN all -- любой любой где угодно ADDRTYPE соответствует dst-типу BROADCAST
    0 0 ufw-logging-deny all -- любой любой где угодно лимит: в среднем 3/мин пакет 10
    0 0 УДАЛИТЬ все -- любое любое в любом месте в любом месте      
#
  

Однако это ВОЗВРАТ, а не ПРИНЯТИЕ! ufw-not-local вызывается ufw-before-input, который возвращает INPUT. И INPUT имеет политику DROP.

РЕДАКТИРОВАТЬ: Полный iptables -xvnL вывод:

Цепочка INPUT (политика DROP 8 пакетов, 885 байт)
    pkts bytes target prot opt ​​in out source target         
       0 0 ПРИНЯТЬ TCP -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 TCP dpt:53
       0 0 ПРИНЯТЬ udp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53
       0 0 ПРИНЯТЬ TCP -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 TCP dpt:67
     750 227375 ПРИНЯТЬ udp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
  362606 147280078 ufw-before-log-input все -- * * 0.0.0.0/0 0.0.0.0/0           
  362606 147280078 ufw-до ввода все -- * * 0.0.0.0/0 0.0.0.0/0           
  333869 128555765 ufw-после ввода все -- * * 0.0.0.0/0 0.0.0.0/0           
  333212 128523819 ufw-после-регистрации-ввод все -- * * 0.0.0.0/0 0.0.0.0/0           
  333212 128523819 ufw-reject-input все -- * * 0.0.0.0/0 0.0.0.0/0           
  333212 128523819 ufw-track-input все -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка FORWARD (политика DROP 216 пакетов, 10004 байта)
    pkts bytes target prot opt ​​in out source target         
   22278 14578660 ПРИНЯТЬ все -- * lxcbr0 0.0.0.0/0 0.0.0.0/0           
    4853 256884 ПРИНЯТЬ все -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0           
 1080537 59537850 ufw-before-log-forward all -- * * 0.0.0.0/0 0.0.0.0/0           
 1080537 59537850 ufw-before-forward все -- * * 0.0.0.0/0 0.0.0.0/0           
 1079360 59452755 ufw-после-вперед все -- * * 0.0.0.0/0 0.0.0.0/0           
 1079360 59452755 ufw-after-log-forward all -- * * 0.0.0.0/0 0.0.0.0/0           
 1079360 59452755 ufw-reject-forward all -- * * 0.0.0.0/0 0.0.0.0/0           
 1079360 59452755 ufw-track-forward all -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка OUTPUT (политика ACCEPT 1 пакета, 52 байта)
    pkts bytes target prot opt ​​in out source target         
  424797 45621305 ufw-before-log-output all -- * * 0.0.0.0/0 0.0.0.0/0           
  424797 45621305 ufw-перед-выводом все -- * * 0.0.0.0/0 0.0.0.0/0           
  399178 42100854 ufw-после-вывода все -- * * 0.0.0.0/0 0.0.0.0/0           
  399178 42100854 ufw-after-log-output все -- * * 0.0.0.0/0 0.0.0.0/0           
  399178 42100854 ufw-reject-output all -- * * 0.0.0.0/0 0.0.0.0/0           
  399178 42100854 ufw-track-output все -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка ufw-before-log-input (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-before-log-output (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-before-log-forward (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-before-input (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
       0 0 ПРИНЯТЬ все -- lo * 0.0.0.0/0 0.0.0.0/0           
     142 17992 ПРИНЯТЬ все -- * * 0.0.0.0/0 0.0.0.0/0 ctstate СВЯЗАННО,УСТАНОВЛЕНО
       0 0 ufw-logging-deny all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
       0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
       0 0 ПРИНЯТЬ icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 3
       0 0 ПРИНЯТЬ icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 11
       0 0 ПРИНЯТЬ icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 12
       0 0 ПРИНЯТЬ icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8
       0 0 ПРИНЯТЬ udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:67 dpt:68
      16 1305 ufw-not-local все -- * * 0.0.0.0/0 0.0.0.0/0           
       0 0 ПРИНЯТЬ udp -- * * 0.0.0.0/0 224.0.0.251 udp dpt:5353
       0 0 ПРИНЯТЬ udp -- * * 0.0.0.0/0 239.255.255.250 udp dpt:1900
      16 1305 ufw-пользовательский ввод все -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка ufw-before-output (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
       0 0 ПРИНЯТЬ все -- * lo 0.0.0.0/0 0.0.0.0/0           
     150 18656 ПРИНЯТЬ все -- * * 0.0.0.0/0 0.0.0.0/0 ctstate СВЯЗАННО,УСТАНОВЛЕНО
       1 52 ufw-user-output все -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка ufw-before-forward (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
      11 1232 ПРИНЯТЬ все -- * * 0.0.0.0/0 0.0.0.0/0 ctstate СВЯЗАННО,УСТАНОВЛЕНО
       0 0 ПРИНЯТЬ icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 3
       0 0 ПРИНЯТЬ icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 11
       0 0 ПРИНЯТЬ icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 12
      13 1092 ПРИНЯТЬ icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8
     214 9920 ufw-user-forward all -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка ufw-after-input (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
       0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:137
       0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:138
       0 0 ufw-skip-to-policy-input TCP -- * * 0.0.0.0/0 0.0.0.0/0 TCP dpt:139
       0 0 ufw-skip-to-policy-input TCP -- * * 0.0.0.0/0 0.0.0.0/0 TCP dpt:445
       0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
       0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:68
       3 120 ufw-skip-to-policy-input all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE соответствует dst-type BROADCAST

Цепочка ufw-after-output (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-after-forward (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-after-log-input (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
       7 845 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 ограничение: в среднем 3 пакета в минуту 10 флагов LOG 0 префикс уровня 4 "[UFW BLOCK]"

Цепочка ufw-after-log-output (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-after-log-forward (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
      10 464 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 ограничение: в среднем 3 пакета в минуту 10 Флаги LOG 0 префикс уровня 4 "[UFW BLOCK]"

Цепочка ufw-reject-input (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-reject-output (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-reject-forward (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-track-input (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-track-output (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
       0 0 ПРИНЯТЬ TCP -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NEW
       0 0 ПРИНЯТЬ udp -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NEW

Цепочка ufw-track-forward (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-log-deny (2 упоминания)
    pkts bytes target prot opt ​​in out source target         
       0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate НЕВЕРНЫЙ предел: в среднем 3/мин пакет 10
       0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 ограничение: в среднем 3/мин пакет 10 флагов LOG 0 префикс уровня 4 "[UFW BLOCK]"

Цепочка ufw-log-allow (0 ссылок)
    pkts bytes target prot opt ​​in out source target         
       0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 ограничение: в среднем 3/мин пакет 10 флагов LOG 0 префикс уровня 4 "[UFW ALLOW]"

Цепочка ufw-skip-to-policy-input (7 ссылок)
    pkts bytes target prot opt ​​in out source target         
       3 120 УДАЛИТЬ все -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка ufw-skip-to-policy-output (0 ссылок)
    pkts bytes target prot opt ​​in out source target         
       0 0 ПРИНЯТЬ все -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка ufw-skip-to-policy-forward (0 ссылок)
    pkts bytes target prot opt ​​in out source target         
       0 0 УДАЛИТЬ все -- * * 0.0.0.0/0 0.0.0.0/0           

Сеть ufw-not-local (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
      12 1125 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE соответствует dst-type LOCAL
       0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE соответствует dst-типу MULTICAST
       4 180 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE соответствует dst-типу BROADCAST
       0 0 ufw-logging-deny all -- * * 0.0.0.0/0 0.0.0.0/0 предел: в среднем 3/мин пакет 10
       0 0 УДАЛИТЬ все -- * * 0.0.0.0/0 0.0.0.0/0           

Цепочка ufw-user-input (1 ссылка)
    pkts bytes target prot opt ​​in out source target         
       5 300 ПРИНЯТЬ TCP -- * * 0.0.0.0/0 0.0.0.0/0 TCP dpt:22
       0 0 ПРИНЯТЬ udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:51820      

Цепочка ufw-user-output (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-user-forward (1 ссылка)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-user-loging-input (0 ссылок)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-user-log-output (0 ссылок)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-user-loging-forward (0 ссылок)
    pkts bytes target prot opt ​​in out source target         

Цепочка ufw-user-limit (0 ссылок)
    pkts bytes target prot opt ​​in out source target         
       0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/min пакет 5 Флаги LOG 0 префикс уровня 4 "[UFW LIMIT BLOCK]"
       0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 отклонить-с icmp-порт-недоступен

Цепочка ufw-user-limit-accept (0 ссылок)
    pkts bytes target prot opt ​​in out source target         
       0 0 ПРИНЯТЬ все -- * * 0.0.0.0/0 0.0.0.0/0   

    
Doug Smythies avatar
флаг gn
Мы не можем ответить без полного набора правил iptables (даже несмотря на то, что наборы правил, сгенерированные ufw, трудно соблюдать). Пожалуйста, отредактируйте свой вопрос, добавив вывод из `sudo iptables -xvnL`
Doug Smythies avatar
флаг gn
Протокол пограничного шлюза (BGP), вероятно, выполняет некоторые перенаправления и изменения портов между задействованными маршрутизаторами. Я не знаю подробностей, и они действительно не связаны с Ubuntu.
флаг jp
@DougSmythies Добавлен полный вывод. Я не думаю, что BGP делает здесь какие-то странные изменения. Я вижу это в tcpdump на порту 179. Несмотря на это, довольно неожиданно, что этот трафик проходит, несмотря на то, что он явно не разрешен, следовательно, связан с ufw/Ubuntu.
Doug Smythies avatar
флаг gn
Я не знал, что у вас есть несколько виртуальных машин, работающих через lxcbr0, поэтому нам может понадобиться также увидеть `sudo iptables -t nat -xvnL`.Где работал tcpdump? на вашем локальном компьютере, на компьютере, размещенном на Vultr, или на виртуальной машине? Кроме того, для правил ufw они работают на вашем локальном компьютере или на компьютере, размещенном на Vultr? Найдите входящий путь ACCEPT через RELATED,ESTABLISHED, который вы создали через путь OUTPUT.
флаг jp
@DougSmythies Я перезапустил машину (которая должна уничтожить СВЯЗАННЫЕ, УСТАНОВЛЕННЫЕ), и пакеты ВСЕ ЕЩЕ проходят! Тем временем я обнаружил, что ipip (пакеты протокола IP) также проходят. Итак, мои вопросы остаются: ПОЧЕМУ ufw принимает пакеты без моего явного принятия? Я прошел правила iptables, но мой мозг взрывается. Я не эксперт в iptables, чтобы выяснить, где будет принят пакет. Но мое доверие к ufw в настоящее время крайне низкое.
Doug Smythies avatar
флаг gn
Я не знаю, как попытаться помочь вам без дополнительной и подробной информации.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.