Задание №1: Импорт пользователей в домен au-team.irpo
В данном задании на контроллере домена (BR-SRV) выполняется автоматизированный импорт пользователей из файла Users.csv, находящегося на подключаемом компакт-диске Additional.iso.
Скрипт формирует логины пользователей в формате фамилия.первая_буква_имени в нижнем регистре (например, ivanov.i), задаёт пароль P@ssw0rd1, заполняет атрибуты учетных записей (имя, фамилия, должность, телефон), автоматически создаёт подразделения (OU) и перемещает пользователей в соответствующие подразделения.
Где выполнять
- BR-SRV — монтирование диска, подготовка CSV-файла, создание и запуск скрипта импорта
import.sh. - HQ-CLI — проверка входа через графический интерфейс (GUI) под любым импортированным пользователем.
1. Пошаговое выполнение на сервере BR-SRV
Выполните команды под пользователем root на сервере BR-SRV:
Шаг 1. Монтирование диска Additional.iso и проверка содержимого
Монтируем CD/DVD-диск в каталог /mnt/:
mount -o loop /dev/sr0 /mnt/ -vПроверяем список файлов на смонтированном диске:
ls -l /mnt/Шаг 2. Очистка и нормализация кодировки файла Users.csv
Файл Users.csv может содержать скрытые нечитаемые символы или BOM. Нормализуем кодировку UTF-8 с игнорированием некорректных байтов и сохраняем очищенный файл в /root/users_fix.csv:
iconv -f UTF-8 -t UTF-8//IGNORE /mnt/Users.csv > /root/users_fix.csvШаг 3. Создание скрипта автоматического импорта import.sh
Создаём скрипт импорта пользователей:
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 /root/import.shШаг 5. Проверка импортированных пользователей
Просматриваем общий список всех пользователей домена:
bashsamba-tool user listПросматриваем подробные атрибуты любого созданного пользователя (замените
имя_пользователяна реальный логин из списка, напримерivanov.i):bashsamba-tool user show имя_пользователя
2. Проверка входа на клиентской машине HQ-CLI
Переходим на рабочую станцию HQ-CLI:
- В окне входа в графическую среду (GUI) переключаемся на ручной ввод пользователя (или выбираем из списка).
- Вводим учетные данные любого импортированного пользователя:
- Логин: любой из созданных (например,
ivanov.iилиpetrov.p) - Пароль:
P@ssw0rd1
- Логин: любой из созданных (например,
- Убеждаемся, что вход в графическую систему проходит успешно, рабочий стол загружается без ошибок.
