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

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Шифрование VXLAN, Proxmox Виртуальная Среда
     
    mdenadal
    Guest
    #1
    0
    29.07.2020 11:52:00
    Я управляю кластером Proxmox из 4 узлов. Узлы расположены в двух разных дата-центрах и соединены через публичную сеть. До появления SDN не было общей L2-сети между приватными (то есть только для хоста) сетями узлов. Используя SDN (например, зоны vxlan), можно развернуть связанные мосты, что даёт целый ряд действительно классных возможностей. Проблема в том, что vxlan на данный момент не поддерживает никакое шифрование. Очевидно, что использовать публичную сеть без шифрования — это не вариант. Spirit сказал, что MACsec скоро появится (возможно, ещё в этом году), но сейчас, думаю, самый простой способ — использовать ipsec для соединений vxlan. Настройка очень простая. Допустим, у вас кластер из 3 узлов, первым делом нужно установить strongswan на каждый Proxmox-бокс:  
    Код:  
    root@node1 /etc # apt install strongswan  

    Хотя это не обязательно, я советую добавить адреса узлов в файл hosts. Вот пример:  
    Код:  
    root@node1 / # cat /etc/hosts  
    127.0.0.1        localhost.localdomain localhost  
    173.x.y.z        node1  
    167.x.y.z        node2  
    80.x.y.z         node3  

    # Следующие строки рекомендуются для хостов с поддержкой IPv6  

    ::1     ip6-localhost ip6-loopback  
    fe00::0 ip6-localnet  
    ff00::0 ip6-mcastprefix  
    ff02::1 ip6-allnodes  
    ff02::2 ip6-allrouters  
    ff02::3 ip6-allhosts  

    Далее нужно настроить ipsec-туннели. Отредактируйте /etc/ipsec.conf (так быстрее, но можно использовать и файлы в /etc/ipsec.d/ — это даже лучше):  
    Код:  
    root@node1 / # cat /etc/ipsec.conf  
    conn common  
       authby=secret  
       auto=start  
       ike=aes256-sha1-modp1024!  # на моих тестах эти шифры показали себя самыми быстрыми (но при этом достаточно безопасными) на современном оборудовании  
       esp=aes256-sha1!  
       leftfirewall=yes           # нужно, если применяются правила файрвола Proxmox  
       left=node1  
       leftsubnet=node1[udp/4789] # шифруем только vxlan-трафик

    conn node1-to-node2            # идея — сделать полносвязную сеть между узлами  
       also=common  
       right=node2  
       rightsubnet=node2[udp/4789]

    conn node1-to-node3  
       also=common  
       right=node3  
       rightsubnet=node3[udp/4789]

    Добавьте предварительно расшаренные ключи, отредактировав /etc/ipsec.secrets:  
    Код:  
    root@node1 / # cat /etc/ipsec.secrets  
    node1 node2 : PSK "superstrongpassword"  
    node1 node3 : PSK "superstrongpassword"  

    Естественно, ipsec.conf и ipsec.secrets нужно правильно отредактировать на каждом узле. В конце запускаем strongswan на каждом узле:  
    Код:  
    root@node1 / # ipsec restart  

    И проверяем, что всё работает нормально:  
    Код:  
    root@node1 / # ipsec statusall  

    Чтобы шифрование запускалось при загрузке:  
    Код:  
    root@node1 / # systemctl enable ipsec  

    Вот такие мои два цента. Всем успехов! Массимо
     
     
     
    mdenadal
    Guest
    #2
    0
    06.01.2021 14:50:00
    Привет, Spirit! По моему скромному мнению, Wireguard — это однозначно лучший выбор. Гораздо проще настраивается и обеспечивает очень стабильное соединение даже в условиях слабых сетей. А пока что моя «грязная» настройка ipsec работает с июля.
     
     
     
    spirit
    Guest
    #3
    0
    08.01.2021 13:34:00
    Жду официальной поддержки WireGuard в новом ядре. Спасибо за подсказки про IPsec.
     
     
     
    spirit
    Guest
    #4
    0
    06.01.2021 10:35:00
    Привет, я смотрел на macsec, но его будет слишком сложно внедрить, потому что нужно динамически добавлять MAC-адреса всех виртуальных машин на macsec интерфейсы (как это сделано внутри vxlan). Поэтому, думаю, буду реализовывать ipsec (в транспортном режиме, так как у нас уже есть туннель vxlan). Пока не решил, буду ли использовать strongswan с ike для ротации ключей или напрямую iproute2 с статическими ключами. Также в будущем посмотрю в сторону wireguard. Твой конфиг strongswan я еще не тестировал, он нормально работает?
     
     
     
    spirit
    Guest
    #5
    0
    08.01.2021 16:34:00
    Вот более простая конфигурация для любого количества хостов, только для UDP 4789. Для трафика между любыми хостами на этом порту. С этой настройкой нет нужды что-то менять при добавлении новых узлов. Код:  
    conn %default  
       ike=aes256-sha1-modp1024!  # в моих тестах эти шифры оказались самыми быстрыми (но при этом достаточно безопасными) на относительно современной железке  
       esp=aes256-sha1!  
       leftfirewall=yes           # обязательно, если используешь правила файрвола в Proxmox  

    conn output  
       rightsubnet=%dynamic[udp/4789]
       right=%any  
       type=transport  
       authby=psk  
       auto=route  

    conn input  
       leftsubnet=%dynamic[udp/4789]
       type=transport  
       authby=psk  
       auto=route  

    с файлом ipsec.secrets (один и тот же PSK для всех) Код:  
    : PSK 0sv+NkxY9LLZvwj4qCC2o/gGrWDF2d21jL
     
     
     
    spirit
    Guest
    #6
    0
    08.01.2021 17:00:00
    Про MTU: если использовать режим транспортного шифрования вместо туннельного, то размер уменьшается примерно на 20 байт. Но всё равно, IPsec в транспортном режиме + AES + SHA1 — это около 60 байт в IPv4 и около 80 байт в IPv6. Я нашёл несколько статей, где расчёты немного отличаются:

    https://www.fortinetguru.com/2019/06/ipsec-vpn-concepts-3/5/  
    https://packetpushers.net/ipsec-bandwidth-overhead-using-aes/  
    https://hamwan.org/Standards/Network Engineering/IPsec.html  

    С учётом 50 байт для VXLAN и MTU по умолчанию 1500, итоговое значение должно уменьшиться примерно до 1370–1390.
     
     
     
    sharky69
    Guest
    #7
    0
    21.03.2022 15:40:00
    Привет! Для информации, в кластере из 4 узлов, чтобы поддерживать соединения, мне пришлось добавить следующие параметры в /etc/ipsec.conf:  
    Код:  
    config setup  
      uniqueids=no  
    Без этого параметра у меня постоянно происходили разрывы с таким сообщением:  
    Код:  
    [IKE] schedule delete of duplicate IKE_SA for peer xx.xx.xx.xx due to uniqueness policy and suspected reauthentication
     
     
     
    spirit
    Guest
    #8
    0
    21.03.2022 15:56:00
    Спасибо за информацию!
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

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