Работа с samba-gpupdate

Скрипт samba-gpupdate (полный путь после установки — /app/inno-samba/sbin/samba-gpupdate) отвечает за применение и отмену применения групповых политик.

Общие сведения

Групповые политики обеспечивают централизованное управление настройками операционных систем, приложений и пользователей в домене. Набор настроек, назначенный администратором определенной группе компьютеров и пользователей, объединяется в объект групповой политики (Group Policy Object, GPO).

Инфраструктура управления и применения GPO в домене состоит из двух уровней:

  • серверные расширения (Server Side Extensions, SSE) — отвечают за работу с GPO на контроллере домена, позволяя администраторам задавать и применять настройки к определенным компьютерам и пользователям в домене;

  • клиентские расширения (Client Side Extensions, CSE) — модули на клиентских машинах, обеспечивающие установку и применение определенных политик (в случае Эллес клиентское расширение представляет собой файл на Python).

При запуске скрипт samba-gpupdate сверяет локальный лог примененных ранее GPO (/app/inno-samba/var/cache/gpo.tdb) с текущим списком GPO в каталоге sysvol (/app/inno-samba/var/locks/sysvol/<domain-name>/Policies/), сортируя их по контейнерам. При обнаружении различий содержимое sysvol трактуется как новые/измененные GPO и импортируется/применяется.

Для настройки и редактирования групповых политик могут использоваться:

Настройка автоматического запуска

Для включения автоматического запуска скрипта samba-gpupdate на контроллере домена Эллес или участнике, введенном в домен с помощью Winbind:

  1. Добавьте в раздел [global] в конфигурационном файле smb.conf следующий параметр:

    apply group policies = yes
  2. При необходимости задайте также интервал запуска скрипта не более 120 минут (по умолчанию скрипт запускается с интервалом 90–120 минут) в разделе [global] в конфигурационном файле smb.conf в следующем формате:

    apply group policies : period = <num>

    В параметре num соответствует количеству минут не более 120. При значении 0 используется интервал по умолчанию.

Формат вызова

Общий формат вызова скрипта:

samba-gpupdate [options]

В результате выполнения скрипта к локальной машине или указанному пользователю применяются групповые политики, которые ранее к ним не применялись или в которые с момента последнего применения были внесены изменения.

Параметры

Параметры вызова:

  • --force — повторное применение всех объектов GPO, включая те, которые ранее уже применялись;

  • --rsop — получение информации о доступных групповых политиках (объекты GPO и реализующие их клиентские расширения);

  • --target:

    • --target=Computer — применение или отмена применения групповых политик к локальной учетной записи (по умолчанию); если не задан параметр -U <username>, то будет использована машинная учетная запись;

    • --target=User -U <username> — применение или отмена применения групповых политик к учетной записи пользователя домена с указанным username;

  • -X|--unapply — отмена применения всех объектов GPO.

    Для выполнения скрипта с этой опцией требуются права суперпользователя.

Общие параметры:

  • -d DEBUGLEVEL|--debuglevel=DEBUGLEVEL — уровень логирования (целое число от 0 до 10);

  • --option="OPTION=NEWVALUE" — переопределение параметра в конфигурационном файле smb.conf;

  • --realm=REALM — имя домена;

    Переданное в параметре значение переопределяет значение аналогичного параметра в файле smb.conf.
  • -s FILE|--configfile=FILE — путь к конфигурационному файлу smb.conf (если отличается от пути по умолчанию).

Параметры аутентификации:

  • --ipaddress=IPADDRESS — IP-адрес сервера;

  • -k KERBEROS|--kerberos=KERBEROS — необходимость аутентификации с использованием Kerberos;

  • -N|--no-pass — указывает на отсутствие необходимости запрашивать у пользователя пароль;

  • -P|--machine-pass — использовать сохраненный пароль учетной записи компьютера;

  • --password — пароль для передачи в командной строке;

  • --simple-bind-dn=DN — уникальное имя для использования скрипта при простом удаленном подключении;

  • -U USERNAME|--username=USERNAME — имя пользователя либо имя пользователя и пароль;

  • -W WORKGROUP|--workgroup=WORKGROUP — домен, к которому относится переданное имя пользователя.

Примеры

Примеры использования скрипта на локальной машине:

  • применение новых и измененных GPO:

    samba-gpupdate
  • повторное применение всех GPO:

    samba-gpupdate --force
    samba-gpupdate --force --target=Computer
    samba-gpupdate --force --target=User -U "User Name"
  • отмена применения всех GPO:

    samba-gpupdate --unapply
    samba-gpupdate --unapply --target=Computer
    samba-gpupdate --unapply --target=User -U "User Name"
  • получение информации о всех GPO, доступных для применения:

    samba-gpupdate --rsop
    Resultant Set of Policy
    Computer Policy
    
    GPO: Default Domain Policy
    =================================================================
      CSE: gp_access_ext
      -----------------------------------------------------------
        Policy Type: System Access
        -----------------------------------------------------------
        [ MinimumPasswordAge ] = 1
        [ MaximumPasswordAge ] = 60
        [ MinimumPasswordLength ] = 12
        [ PasswordComplexity ] = 1
        [ LockoutDuration ] = 0
        [ ResetLockoutCount ] = 50
        [ LockoutBadCount ] = 10
        -----------------------------------------------------------
      -----------------------------------------------------------
      CSE: gp_krb_ext
      -----------------------------------------------------------
        Policy Type: Kerberos Policy
        -----------------------------------------------------------
        [ MaxTicketAge ] = 10
        [ MaxRenewAge ] = 7
        [ MaxServiceAge ] = 600
        -----------------------------------------------------------
      -----------------------------------------------------------
    =================================================================
    samba-gpupdate --rsop --target=Computer
    samba-gpupdate --rsop --target=User -U "User Name"