Skip to content

Задание №1: Импорт пользователей в домен au-team.irpo ​

В данном задании на контроллере домена (BR-SRV) выполняется автоматизированный импорт пользователей из файла Users.csv, находящегося на подключаемом компакт-диске Additional.iso.

Скрипт формирует логины пользователей в формате фамилия.первая_буква_имени в нижнем регистре (например, ivanov.i), задаёт пароль P@ssw0rd1, заполняет атрибуты учетных записей (имя, фамилия, должность, телефон), автоматически создаёт подразделения (OU) и перемещает пользователей в соответствующие подразделения.

Где выполнять

  1. BR-SRV — монтирование диска, подготовка CSV-файла, создание и запуск скрипта импорта import.sh.
  2. HQ-CLI — проверка входа через графический интерфейс (GUI) под любым импортированным пользователем.

1. Пошаговое выполнение на сервере BR-SRV ​

Выполните команды под пользователем root на сервере BR-SRV:

Шаг 1. Монтирование диска Additional.iso и проверка содержимого ​

Монтируем CD/DVD-диск в каталог /mnt/:

bash
mount -o loop /dev/sr0 /mnt/ -v

Проверяем список файлов на смонтированном диске:

bash
ls -l /mnt/

Шаг 2. Очистка и нормализация кодировки файла Users.csv ​

Файл Users.csv может содержать скрытые нечитаемые символы или BOM. Нормализуем кодировку UTF-8 с игнорированием некорректных байтов и сохраняем очищенный файл в /root/users_fix.csv:

bash
iconv -f UTF-8 -t UTF-8//IGNORE /mnt/Users.csv > /root/users_fix.csv

Шаг 3. Создание скрипта автоматического импорта import.sh ​

Создаём скрипт импорта пользователей:

bash
cat << "EOF" > /root/import.sh
#!/bin/bash
#
while IFS=';' read -r name fam role phone ou street zip city country pass; do
username="$fam"."${name:0:1}"
samba-tool user create "${username,,}" "P@ssw0rd1" --given-name="$fam" --surname="$name" --job-title="$role" --telephone-number="$phone"
[[ -n "$ou" ]] && samba-tool ou create "OU=$ou" 2>/dev/null
[[ -n "$ou" ]] && samba-tool user move "${username,,}" "OU=$ou" 2>/dev/null
done < /root/users_fix.csv
EOF

Разбор работы скрипта

  • IFS=';' — задаёт точку с запятой в качестве разделителя колонок в CSV-файле.
  • username="$fam"."${name:0:1}" — формирует имя пользователя из фамилии и первой буквы имени (например, ivanov.i).
  • ${username,,} — переводит имя пользователя строго в нижний регистр.
  • P@ssw0rd1 — единый пароль для всех создаваемых пользователей.
  • samba-tool ou create — автоматически создаёт организационную единицу (OU), если поле ou заполнено.
  • samba-tool user move — перемещает созданного пользователя в его подразделение OU=$ou.

Шаг 4. Запуск скрипта импорта ​

Запускаем скрипт:

bash
bash /root/import.sh

Шаг 5. Проверка импортированных пользователей ​

  1. Просматриваем общий список всех пользователей домена:

    bash
    samba-tool user list
  2. Просматриваем подробные атрибуты любого созданного пользователя (замените имя_пользователя на реальный логин из списка, например ivanov.i):

    bash
    samba-tool user show имя_пользователя

2. Проверка входа на клиентской машине HQ-CLI ​

Переходим на рабочую станцию HQ-CLI:

  1. В окне входа в графическую среду (GUI) переключаемся на ручной ввод пользователя (или выбираем из списка).
  2. Вводим учетные данные любого импортированного пользователя:
    • Логин: любой из созданных (например, ivanov.i или petrov.p)
    • Пароль: P@ssw0rd1
  3. Убеждаемся, что вход в графическую систему проходит успешно, рабочий стол загружается без ошибок.

Работает на VitePress • Быстрый и удобный движок для документации