Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Оплата
Новости
Доставка
Загрузки
Форум
Настройка
    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 Виртуальная Среда
    Включение брандмауэра дата-центра блокирует исходящий трафик DNS и Ping.

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Включение брандмауэра дата-центра блокирует исходящий трафик DNS и Ping., Proxmox Виртуальная Среда
     
    reetp
    Guest
    #1
    0
    07.07.2024 15:40:00
    У меня есть сервер Proxmox на online.net. На нём запущено несколько ВМ с Linux-серверами. Решил попробовать настроить файрвол — конкретно, чтобы блокировать или разрешать определённые IP-адреса для всех ВМ сразу, а не настраивать это по отдельности. В датацентре есть 3 группы безопасности:

    - remotemanagement — разрешает доступ по ping, ssh, https и т.д.
    - vm-generalports — даёт доступ ко всем ВМ по http/https/ssh/mail и прочему
    - clusterblocklist — блокирует некоторые IP через IPSet blacklist

    Идея такая: сам сервер proxmox использует remotemanagement + clusterblocklist, а отдельные ВМ — vm-generalports + clusterblocklist.

    Политика по умолчанию для исходящего трафика стоит на ALLOW на уровне датацентра и ВМ, но почему-то нет такой опции на уровне самого Proxmox-сервера?

    Что бы я ни делал, при включённом файрволе могу заходить на сервисы ВМ — https, ping, почту и пр. Но сами ВМ не могут пинговать или делать dig. Уже несколько дней схожу с ума!

    Обратил внимание: несмотря на установленную политику output ALLOW, в cluster.fw показывается только "policy_in: DROP", а "policy_out: ALLOW" нет. Может, у кого есть идеи?

    Похоже на баг, но может разработчики сейчас больше сосредоточены на nftables? Было бы здорово иметь встроенную блокировку по geoip в Proxmox, чтобы не настраивать это на каждой ВМ. Это бы сильно снизило нагрузку.

    Proxmox v8.2.2, запатчен, с лицензией. Режим Standalone.

    cat /etc/network/interfaces:

    source /etc/network/interfaces.d/*

    auto lo  
    iface lo inet loopback  

    iface eno1 inet manual  
    # Внешний IP  

    iface eno2 inet manual  
    # Внутренний IP  

    auto vmbr0  
    iface vmbr0 inet static  
       address x.x.x.x/24  
       gateway x.x.x.x  
       bridge-ports eno1  
       bridge-stp off  
       bridge-fd 0  

    auto vmbr1  
    iface vmbr1 inet manual  
       bridge-ports none  
       bridge-stp off  
       bridge-fd 0  
    # Для фиктивных SME портов  

    auto vmbr3  
    iface vmbr3 inet static  
       address 10.90.44.13/26  
       bridge-ports eno2  
       bridge-stp off  
       bridge-fd 0  
    # Внутренний IP  

    cat cluster.fw:

    [OPTIONS]

    enable: 0  
    policy_in: DROP  

    [IPSET clusterblacklist] # ClusterBlacklist

    103.145.253.0/24  
    183.129.178.0/24  

    [RULES]

    GROUP clusterblocklist  
    GROUP vm-generalports  
    GROUP remotemanagement  

    [group clusterblocklist] # uses DC/ClusterBlacklist

    IN DROP -source +dc/clusterblacklist -log info  

    [group remotemanagement] # Remote Management

    IN ACCEPT -p tcp -dport 3128 -log nolog # Порт 3128  
    IN ACCEPT -p tcp -dport 8006 -log nolog # Prox HTTPS  
    IN ACCEPT -p tcp -dport 2222 -log nolog # SSH  
    IN Ping(ACCEPT) -source 1.2.3.4 -log nolog # Удалённый Ping  
    IN Ping(ACCEPT) -source 5.6.7.8 -log nolog # Удалённый Ping  

    [group vm-generalports] # http https imap smtp ssh и т.д.

    OUT DNS(ACCEPT) -log info # Отчаянные попытки  
    OUT Ping(ACCEPT) -log info # Отчаянные попытки  
    IN ACCEPT -p tcp -dport 2229 -log nolog # SSH 2229  
    IN Ping(ACCEPT) -log nolog  
    IN OpenVPN(ACCEPT) -log nolog  
    IN Mail(ACCEPT) -log nolog  
    IN HKP(ACCEPT) -log nolog  
    IN IPsecah(ACCEPT) -log nolog  
    IN IPsecnat(ACCEPT) -log nolog  
    IN IPsec(ACCEPT) -log nolog  
    IN IMAPS(ACCEPT) -log nolog  
    IN ACCEPT -p tcp -dport 993 -log nolog # IMAPS вручную  
    IN SMTPS(ACCEPT) -log nolog  
    IN SMTP(ACCEPT) -log nolog  
    IN HTTPS(ACCEPT) -log nolog  
    IN DNS(ACCEPT) -log nolog  
    IN HTTP(ACCEPT) -log nolog  
    |IN DROP -source 0.0.0.0/0 -log nolog # Отключено для теста  

    cat 101.fw:

    [OPTIONS]

    enable: 1  
    log_level_in: nolog  
    ipfilter: 1  
    log_level_out: info  

    [RULES]

    GROUP vm-generalports -i net0
     
     
     
    reetp
    Guest
    #2
    0
    22.07.2024 14:28:00
    Интересно, не наделал ли я здесь глупостей — меня это бы не удивило — но ничего совсем уж вопиющего не вижу. Буду признателен за любые советы.
     
     
     
    shanreich
    Guest
    #3
    0
    22.07.2024 14:40:00
    В ваших правилах файрвола вы используете --icmp-type 8 и для входящего, и для исходящего трафика. ICMP код 8 — это echo request (запрос эха). Код ICMP для echo reply (ответа эха) — 0, поэтому, думаю, вы блокируете echo reply из-за этого правила в файрволе. Я проверю макрос ping, но кажется, это сделано специально. Исправление: забейте, conntrack должен это обрабатывать, конечно — я посмотрю дальше.
     
     
     
    shanreich
    Guest
    #4
    0
    22.07.2024 14:49:00
    У вас активирован IP-фильтр, но я не вижу настроенного IPFilter в конфигурации файрвола виртуальной машины. Помогает ли отключение IP-фильтра?
     
     
     
    reetp
    Guest
    #5
    0
    23.07.2024 17:12:00
    Хорошо, копаюсь в поисках подсказок. Понял, что на это влияют настройки фаервола для виртуальной машины следующим образом:  
    101 Ошибка — фаервол включен: 1 ipfilter: 1  
    102 Ошибка — фаервол включен: 1 ipfilter: 1  
    103 ОК — фаервол включен: 0 ipfilter: 1  
    120 ОК — фаервол включен: 0 ipfilter: 1  
    160 ОК — фаервол включен: 0 ipfilter: 1  
    200 Ошибка — фаервол включен: 1 ipfilter: 1  

    На уровне дата-центра у меня есть IPSet clusterblacklist, который должен заблокировать 2 IP по всему кластеру для всех виртуальных машин. Но это же только для входящего трафика?
     
     
     
    shanreich
    Guest
    #6
    0
    23.07.2024 17:17:00
    Настройка ipfilter означает, что файрвол будет искать IPSet с именем ipfilter-net<id> в конфигурации файрвола ВМ. Исходящие соединения на интерфейсе <id> будут разрешены только с IP-адреса из этого IPSet в качестве адреса источника. Если такой набор не существует, он будет создан автоматически [1]. Судя по вашей конфигурации 101.fw, у вас явно не настроен такой IPSet ipfilter. Поэтому исходящие соединения блокируются. Вы можете проверить это, отключив настройку ipfilter и посмотрев, будут ли тогда работать исходящие соединения. [1] https://pve.proxmox.com/wiki/Firewall#pve_firewall_vm_container_configuration
     
     
     
    reetp
    Guest
    #7
    0
    24.07.2024 15:05:00
    Хорошо, похоже, что это решило проблему. Большое спасибо! Мое понимание IP Sets пока не совсем четкое — документация не так ясна, как хотелось бы :-( Теперь я вижу, что для виртуальной машины можно: создать IP Set "Test", добавить правило: Set Source или Destination > IP Set "Test", указать направление, действие и так далее. Но я думал, что это значит: Datacenter App IPSet 'clusterblocklist', добавить в Security group датацентра, затем для ВМ вставить Security Group 'clusterblocklist' IPSet и включить (потому что... это IPSet!). Полагаю, IPSet на уровне виртуальной машины используют только если у этой ВМ есть свой IPSet? Все еще сбивает с толку то, что на уровне ВМ можно либо: добавить Source/Destination IPSet 'clusterblocklist', либо вставить Security Group 'clusterblocklist'. Наверное, пользователю не стоит разрешать устанавливать IP Filter, если в IPSet нет данных? Мне также было непонятно, что политика по умолчанию для исходящего трафика — ALLOW, ведь я вроде ничего не настраивал на блокировку! Еще раз большое спасибо.
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

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