Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление


Информация
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)

  • Astra Linux Special Edition РУСБ.10015-16 исп. 1 и исп. 2

  • Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)

  • Astra Linux Common Edition 2.12



Предупреждение
  1. Для настройки FreeIPA используется сторонний пакет, не входящий в Astra Linux: https://github.com/Turgon37/freeipa-plugin-dhcp. Техническая поддержка этого пакета не осуществляется,  доработки и сопровождение пакета не планируются.
    Рекомендуемым вариантом интеграции служб является использование ALD Pro.
    См. также:
  2. Использование стороннего программного обеспечения в аттестованных информационных системах, функционирующих под управлением Astra Linux Special Edition очередное обновление x.7;
  3. Использование стороннего программного обеспечения в аттестованных информационных системах, функционирующих под управлением Astra Linux Special Edition;
  4. Если в сети уже имеется настроенная служба  DHCP, то запуск новой службы  DHCP должен быть согласован с администраторами сети;
  5. В статье описано незащищенное подключение к базе данных. Для защищенного подключения требуется доработка пакета;
  6. Это не динамическое обновление DNS!!! Настройку динамического обновления DNS см. Динамическое обновление DNS клиентских машин FreeIPA.


Введение

При стандартной установке службы DHCP настройки я этой службы хранятся в локальном конфигурационном файле /etc/dhcp/dhcpd.conf. При сложной конфигурации сети удобнее хранить конфигурации служб централизованно, в единой базе данных. В качестве такой базы данных можно использовать службу каталогов FreeIPA. Далее описывается установка и настройка  службы DHCP для работы с конфигурациями, хранящимися в службе каталогов FreeIPA. Данные настройки могут применяться как для размещения службы DHCP непосредственно на сервере FreeIPA, так и для размещения на отдельном сервере.

Предупреждение
Для успешной настройки все операции разрешения имен должны выполняться через DNS-сервер контроллера домена, т.е. в файле /etc/resolv.conf должна быть только одна запись nameserver, указывающая IP-адрес контроллера домена.


Параметры стенда

  • Сеть 10.0.2.0/24;
  • Адрес маршрутизатора (шлюза) сети 10.0.2.1;
  • Имя домена FreeIPA ipadomain.ru;
  • Имя сервера FreeIPA ipaserver.ipadomain.ru;
  • IP-адрес сервера FreeIPA 10.0.2.10
  • IP-адрес сервера DNS 10.0.2.10 (совпадает с адресом сервера FreeIPA так как функции сервера DNS выполняет сервер FreeIPA).

Установка версии пакета DHCP, поддерживающей работу с LDAP

Для работы с доменными службами нужен вариант пакета DHCP, собранный для работы со службой каталогов (LDAP). Если ранее был установлен обычный DHCP-сервер (пакет isc-dhcp-server), то его необходимо удалить:

Command
dpkg -s isc-dhcp-server && sudo apt purge isc-dhcp-server

И установить вариант сервера, поддерживающий работу со службой каталогов (пакет isc-dhcp-server-ldap):

Предупреждение

В Astra Linux Special Edition x.7 пакет isc-dhcp-server-ldap доступен в базовом репозитории (см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования).
В обновлениях Astra Linux Special Edition, выпущенных ранее очередного обновления x.7, пакет isc-dhcp-server-ldap доступен на диске со средствами разработки.


Command
sudo apt install isc-dhcp-server-ldap

Если служба DHCP размещается на отдельном компьютере, то:

  1. Назначить этому компьютеру статический IP-адрес;
  2. Ввести компьютер в домен FreeIPA;

Установка плагина

Сценарий для быстрой установки: freeipa-dhcp-plugin-install-v2.sh.

Установка по шагам:

  1. Скачать пакет для регистрации службы (предварительно должен быть установлен пакет git):

    Command
    sudo apt install git
    git clone https://github.com/Turgon37/freeipa-plugin-dhcp.git

    Пакет будет сохранен в текущем каталоге в подкаталоге freeipa-plugin-dhcp.

  2. Исправить пакет:

    1. Заменить в файле freeipa-plugin-dhcp/install.sh путь

      Блок кода
      IPALIB_DEST=/usr/lib/python2.7/site-packages/ipaserver/plugins/

      на путь:

      1. Для Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.7:

        Блок кода
        IPALIB_DEST=/usr/lib/python3/dist-packages/ipaserver/plugins/


      2. Для Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.6:

        Блок кода
        IPALIB_DEST=/usr/lib/python2.7/dist-packages/ipaserver/plugins/



    2. Только для Для Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.7 изменить в файле freeipa-plugin-dhcp/ipaserver/dhcp.py строку

      Command

      except AttributeError, ValueError:

      на строку:

      Блок кода
      except (AttributeError, ValueError):


  3. Выполнить установку:

    Command
    sudo freeipa-plugin-dhcp/install.sh

    Предупреждение "Update failed: Server is unwilling to perform: Unknown attribute nsslapd-enable-upgrade-hash will be ignored" можно игнорировать;

Настройка службы DHCP

  1. Открыть WEB-интерфейс FreeIPA:

    Command
    firefox https://`hostname`


    Информация
    Более подробную информацию по настройке службы DHCP см. в статье DHCP-сервер ISC-DHCP


  2. В закладке "Сетевые службы" выбрать службу DHCP;

    Информация
    Работа с комментариями в записях DHCP не поддерживается.


    1. Выбрать пункт меню "Configuration";
      1. В Domain Name указать имя домена, например:

        Информация
        ipadomain.ru


      2. В Domain Name Servers указать IP-адрес DNS-сервера, например:

        Информация
        10.0.2.10


    2. Для нормальной работы службы DHCP в настройках службы должен быть задан хотя бы один диапазон назначаемых адресов. Этот диапазон должна находиться внутри сети, в которой работает служба. Для задания диапазона:
      1. Выбрать пункт меню Subnets;
      2. Добавить подсеть, например:

        Информация
        10.0.2.0/24


      3. Перейти в форму добавленной подсети;

        1. В характеристиках подсети в поле "DHCP Statements" добавить опцию диапазон адресов, например:

          Информация
          range 10.0.2.11 10.0.2.99


        2. В характеристиках подсети в поле "DHCP Options" добавить маршрутизатор сети, например:

          Информация
          routers 10.0.2.1


    3. Выбрать пункт меню Servers;
      1. Выбрать компьютер из выпадающего списка (чтобы компьютер появился в этом списке он должен быть введен в домен) и нажать кнопку "Добавить";

  3. Выполнить настройку сетевых подключений службы DHCP (подробнее см.статью DHCP), для чего в конфигурационном файле /etc/default/isc-dhcp-server указать сетевые интерфейсы, с которыми будет работать сервер, например:

    Блок кода
    ...
    INTERFACESv4="eth0"
    #INTERFACESv6=""


  4. В конфигурационном файле /etc/dhcp/dhcpd.conf указать параметры домена и параметры подключения к службе каталогов. Минимальная рабочая конфигурация выглядит так:

    Информация

    # dhcpd.conf
    # Sample configuration file for ISC dhcpd
    # option definitions common to all supported networks...
    option domain-name "ipadomain.ru";
    option domain-name-servers 10.0.2.10;
    default-lease-time 600;
    max-lease-time 7200;
    ldap-server "ipaserver.ipadomain.ru";
    ldap-port 389;
    ldap-username "cn=Directory Manager"; ldap-password "12345678";
    ldap-base-dn "dc=ipadomain,dc=ru";
    ldap-method dynamic;
    ldap-debug-file "/var/log/dhcp-ldap-startup.log";
    # The ddns-updates-style parameter controls whether or not the server will attempt to do a DNS update when a lease is confirmed. We default to the behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.)
    ddns-update-style none;
    # If this DHCP server is the official DHCP server for the local network, the authoritative directive should be uncommented.
    authoritative;

    Остальные параметры DHCP-сервер будет получать от доменной службы каталогов.

  5. Для предотвращения запуска службы DHCP до запуска служб FreeIPA:
    1. выполнить команду:

      Command
      sudo systemctl edit isc-dhcp-server.service


    2. Ввести следующие данные:

      Блок кода
      [Unit]
      After=ipa.service


    3. Сохранить изменения (при использовании редактора nano - Ctrl-X - Y - Enter);

  6. Перезапустить службу DHCP. Лучше двумя командами stop-start, а не одной restart:

    Command
    sudo systemctl stop isc-dhcp-server
    sudo systemctl start isc-dhcp-server