Содержание

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents


Info
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



Warning
В статье описано незащищенное подключение к базе данных. Для защищённго подключения требуется доработка пакета.

Warning

Для настройки FreeIPA используется сторонний пакет, не входящий в Astra Linux: https://github.com/Turgon37/freeipa-plugin-dhcp


Введение

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

Warning
Внимание! Это не динамическое обновление DNS!!! Настройку динамического обновления DNS см. Динамическое обновление DNS клиентских машин FreeIPA.


Warning
Для успешной настройки все операции разрешения имен должны выполняться через 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-сервер, то его необходимо удалить:

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

И установить новый вариант сервера:

Command
sudo apt install isc-dhcp-server-ldap

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

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

Настройка сервера FreeIPA

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

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

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

  2. Исправить пакет, заменив в файле freeipa-plugin-dhcp/install.sh путь

    Code Block
    IPALIB_DEST=/usr/lib/python2.7/site-packages/ipaserver/plugins/

    на

    Code Block
    IPALIB_DEST=/usr/lib/python2.7/dist-packages/ipaserver/plugins/

    Команда для замены:

    Command
    sed -i "s~IPALIB_DEST=/usr/lib/python2.7/site-packages/ipaserver/plugins/~IPALIB_DEST=/usr/lib/python2.7/dist-packages/ipaserver/plugins/~" freeipa-plugin-dhcp/install.sh


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

    Command
    sudo freeipa-plugin-dhcp/install.sh


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

    Command
    firefox https://`hostname`



  5. В закладке "Сетевые службы"В закладке "Сетевые службы" выбрать службу DHCP;
    1. Выбрать пункт меню "Configuration";
      1. В Domain Name указать имя домена:

        Info
        ipadomain.ru


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

        Info
        10.0.2.10


    2. Выбрать пункт меню Subnets;
      1. Добавить подсеть, например:

        Info
        10.0.2.0/24


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

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

          Info
          range 10.0.2.11 10.0.2.99


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

          Info
          routers 10.0.2.1


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


Настройка сервера DHCP

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

      Code Block
      ...
      INTERFACESv4="eth0"
      #INTERFACESv6=""


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

    Info

    # 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-сервер будет получать от доменной службы каталогов.

  3. Для предотвращения запуска службы DHCP до запуска служб FreeIPA в файле /etc/systemd/system/multi-user.target.wants/ipa.service  в секции [Unit]:
    1. Если параметр Before уже есть (Astra Linux Special Edition), то дописать к уже существующим сервисам через пробел isc-dhcp-server.service:

      Code Block
      Before=parsec.service isc-dhcp-server.service


    2. Если параметр Before отсутсвует (Astra Linux Common Edition), то добавить строку:

      Code Block
      Before=isc-dhcp-server.service


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

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


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