Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Оплата
Новости
Доставка
Загрузки
Форум
Настройка
    info@proxmox.su
    +7 (495) 320-70-49
    Заказать звонок
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Телефоны
    +7 (495) 320-70-49
    Заказать звонок
    0
    0
    0
    Аспро: ЛайтШоп
    • +7 (495) 320-70-49
      • Назад
      • Телефоны
      • +7 (495) 320-70-49
      • Заказать звонок
    • info@proxmox.su
    • Москва, Бакунинская улица, 69с1
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Proxmox Виртуальная Среда
    Proxmox VE 8 с файрволом в маршрутизируемой конфигурации. Netfilter POSTROUTING SNAT не работает

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Proxmox VE 8 с файрволом в маршрутизируемой конфигурации. Netfilter POSTROUTING SNAT не работает, Proxmox Виртуальная Среда
     
    Michi
    Guest
    #1
    0
    03.07.2023 08:55:00
    Привет! После перехода на Proxmox VE 8 Postrouting SNAT (к сожалению, мне всё же приходится использовать NAT) в сочетании с брандмауэром Proxmox больше не работает, даже если включены conntrack-зоны. В Proxmox VE 7 всё работало после добавления в /etc/network/interfaces следующих строк:  
    Code:  
    post-up iptables -t raw -I PREROUTING -i fwbr+ -j CT --zone 1  
    post-down iptables -t raw -D PREROUTING -i fwbr+ -j CT --zone 1  

    Вот как сейчас выглядит мой /etc/network/interfaces:  
    Code:  
    auto eno1  
    iface eno1 inet static  
           address <Main public IP>/26  
           gateway <Gateway IP>  

    auto vmbr0  
    iface vmbr0 inet static  
           address <Main public IP>/32  
           bridge-ports none  
           bridge-stp off  
           bridge-fd 0  
           # исправление для SNAT и VE Firewall  
           post-up iptables -t raw -I PREROUTING -i fwbr+ -j CT --zone 1  
           post-down iptables -t raw -D PREROUTING -i fwbr+ -j CT --zone 1  

           # SNAT для резервного копирования  
           post-up iptables -t nat -A POSTROUTING -s <internel IP Backup>/32 -o eno1 -j SNAT --to-source <Main public IP>  
           post-down iptables -t nat -D POSTROUTING -s <internel IP Backup>/32 -o eno1 -j SNAT --to-source <Main public IP>  

    Буду очень признателен за любые советы. С уважением!
     
     
     
    kemeris
    Guest
    #2
    0
    17.10.2023 19:09:00
    Та же проблема и у меня после обновления до Proxmox 8. Буду признателен за любую помощь.
     
     
     
    enlar
    Guest
    #3
    0
    02.08.2024 14:31:00
    Это работает у нас в Proxmox 8.2 с ядром 6.8.8-4.
     
     
     
    lethargos
    Guest
    #4
    0
    01.10.2024 14:44:00
    В моём случае это не работает на версии 8.2.7 с ядром 6.8.12-1. Я только что наткнулся на эту тему, пытаясь разобраться, что происходит. Очевидно, что хост просто игнорирует правило SNAT, когда включён фаервол на виртуальной машине (как на уровне интерфейса, так и на уровне самой ВМ), и пересылает пакет без изменения исходного IP-адреса. В tcpdump это чётко видно. Есть идеи, почему так происходит и как это можно исправить?
     
     
     
    lethargos
    Guest
    #5
    0
    02.10.2024 00:43:00
    Я заметил, что это правило: -A PREROUTING -i fwbr+ -j CT --zone 1 отсутствовало в raw-цепочке. После того как я его добавил — заработало. Пакетам нужна отдельная зона conntrack, чтобы SNAT работал, иначе их считают "известными" (то есть не новыми), и они больше не проходят через nat-цепочку (POSTROUTING). Позднее дополнение: только сейчас понял, что это вряд ли поможет, учитывая, что ты упоминал об этом с самого начала.
     
     
     
    pmickael
    Guest
    #6
    0
    07.11.2024 17:25:00
    У меня такая же проблема! По умолчанию в iptables есть правила, которые можно увидеть командой iptables -L FORWARD -v -n --line-numbers. Там, скорее всего, вы увидите пакет с правилом DROP, примерно вот так:  
    Код:  
    15     513 42597 LOG        0    --  *      *       0.0.0.0/0            0.0.0.0/0            limit: avg 1/sec burst 5 LOG flags 0 level 4 prefix "DROP UNMATCHED PASS-unknown:"  

    Чтобы исправить, просто сделайте (подстроив под вашу конфигурацию):  
    Код:  
    iptables -I FORWARD 1 -i vmbr9 -o vmbr0 -s 10.10.10.0/24 -j ACCEPT  
    iptables -I FORWARD 2 -i vmbr0 -o vmbr9 -d 10.10.10.0/24 -j ACCEPT
     
     
     
    lethargos
    Guest
    #7
    0
    07.11.2024 17:40:00
    Я не думаю, что это хороший совет. Межсетевой экран должен сам обрабатывать правила FORWARD, и как постоянное решение я бы этого не рекомендовал. Это подойдет только как тест для отладки, чтобы проверить, работает ли оно. В противном случае вы вмешиваетесь в логику файрвола. Если же файрвол не работает так, как должен (а меня это бы не удивило), то это нужно выделить и донести до разработчиков. Если посмотреть на второе правило в цепочке PVEFW-FORWARD, которая ссылается в цепочке FORWARD, то увидим:

    Code:  
    iptables -vnL PVEFW-FORWARD --line  
    Chain PVEFW-FORWARD (1 references)  
    num   pkts bytes target     prot opt in     out     source               destination  
    1    13664  710K DROP       0    --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID  
    2    1509M 1488G ACCEPT     0    --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED

    Второе правило отвечает за conntrack, так что нет никакой необходимости вмешиваться и принимать входящий и исходящий трафик независимо от состояния conntrack.
     
     
     
    pmickael
    Guest
    #8
    0
    18.12.2024 11:22:00
    Как я говорил в своём посте, нужно адаптироваться. Всё зависит от вашей стандартной цепочки FORWARD:
     
     
     
    lethargos
    Guest
    #9
    0
    18.12.2024 12:16:00
    Восьмое правило в том фрагменте, который ты только что вставил, противоречит тому, что ты написал в посте №8. Так что нет, тут речь не о какой-то адаптации. Твой совет означает, что ты вмешиваешься в логику фаервола, обходя первые правила (касающиеся всевозможных недопустимых пакетов, у тебя это с 1 по 7). Если трафик каким-то образом затрагивается этими правилами, тогда стоит попытаться разобраться, что происходит, вместо того чтобы просто игнорировать эту логику.
     
     
     
    pmickael
    Guest
    #10
    0
    18.12.2024 13:17:00
    Что ты имеешь в виду под «это не мешает»? Как я и говорил, нужно адаптировать правила, так что поставь их на позицию 10 во втором примере.
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

    Конфиденциальность Оферта
    © 2026 Proxmox.su
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры