ITalc

Материал из ALT Linux Wiki

iTALC — мощная программа для учителей работающих в компьютеризированных классах. Она позволяет различными способами контролировать компьютеры учащихся входящих в состав сети. iTALC поддерживает Linux и Windows 2000/XP/Vista, а также может использоваться в смешанных сетях.

Примечание: В репозитории p10 iTALC3 заменён на Veyon.


Данная инструкция подходит для iTALC3 (версия программы 3.0.3 доступна в репозитории p9) и iTALC2 (версия 2.0.2 — в репозитории p8). См. также порядок настройки класса с iTalc (P6/Centaurus).

Возможности

Функциональные возможности iTALC:

  • просмотр и запись происходящего на компьютерах обучающихся;
  • удалённое управление рабочим столом учащихся;
  • трансляция рабочего стола преподавателя на рабочие столы обучающихся (в окне и полноэкранная);
  • централизованная или адресная блокировка компьютеров обучающихся;
  • централизованная или адресная рассылка текстовых сообщений на компьютеры учащихся;
  • включение (при соответствующей поддержке сетевых интерфейсов и в пределах одного сегмента сети) и выключение компьютеров сети;
  • удаленный вход и выход и запуск команд и скриптов;
  • дистанционное обучение. iTALC работает не только в локальных сетях, с помощью соединений VPN можно организовать преподавание и в домашних условиях.

Различия в версиях

  • Названия пакетов:
    • в iTALC — italc, italc-master, italc-client
    • в iTALC2 пакеты имеют суффикс 2: italc2, italc2-master, italc2-client
    • В iTALC3 пакеты имеют суффикс 3: italc3, italc3-master, italc3-client
  • Программа настройки:
    • в iTALC — ica
    • в iTALC2 и iTALC3 — imc
  • Группа для учителя:
    • в iTALC — italcmaster
    • в iTALC2 и iTALC3 — italc-teachers

Установка

На компьютере учителя должны быть установлены пакеты italc3, italc3-master:

# apt-get install italc3 italc3-master

Учётная запись учителя должна быть добавлена в группу italc-teachers и italcmaster:

# gpasswd -a teacher italc-teachers
# gpasswd -a teacher italcmaster
Примечание: При установке дистрибутива Альт Образование, установка преподавательской части пакетов iTALC и настройка учётной записи учителя происходит автоматически, если при установке дистрибутива выбрать дополнительно «Программы для учителя».


На компьютерах учеников должны быть установлены пакеты italc3, italc3-client:

# apt-get install italc3 italc3-client
Примечание: При установке дистрибутива Альт Образование, установка клиентской части пакетов iTALC происходит автоматически.


Внимание! В p8 необходимо устанавливать соответственно пакеты: italc2, italc2-master, italc2-client


Настройка управления классом

iTALC — это пары VNC-клиент/VNC-сервер, запущенные на всех компьютерах (учительском и ученических), с особыми правами доступа к серверам со стороны клиентов. Управляется iTALC парами ключей для пользователей 4-х заранее определённых ролей: Администратор (admin), Учитель (teacher), Член службы поддержки (supporter), другой (other). В реальности используется две роли:

  1. Пользователь, имеющий доступ на чтение к секретным ключам (член группы italc-teachers в italc3 и italc2, italcmaster в italc).
  2. Все остальные пользователи, имеющие доступ на чтение только к открытым ключам.

Создание ключей

На компьютере учителя необходимо создать ключи доступа.

Примечание: При установке дистрибутива Альт Образование с установкой «Программ для учителя» ключи на компьютере учителя создаются автоматически и этот пункт можно пропустить.


В консоли

Для создания 4 пар ключей на компьютере учителя следует с правами администратора выполнить следующую команду:

# for d in admin other supporter teacher; do imc -createkeypair; for k in public private; do /bin/cp -p /etc/italc/keys/$k/teacher/key /etc/italc/keys/$k/$d/key; done; done
Внимание! Параметр imc -role не работает, как от него ожидается, поэтому просто 4 раза подряд генерируем учительские ключи и тут же перекладываем их в соответствующие подкаталоги.


В графическом интерфейсе

Запустить графический интерфейс настройки iTALC, выполнив команду:

# imc

В открывшемся окне, перейдите на вкладку «Аутентификация» и запустите помощник операций с ключом доступа, нажав соответствующую кнопку:

Консоль управления iTALC

В окне выбора режима работы помощника выберите пункт «Создать новые ключи доступа», в следующем окне укажите роль пользователя, для которой будет создаваться ключ. В следующем окне введите адрес для каталога, куда будет экспортирован открытый ключ и нажмите кнопку «Далее»:

Помощник операций с ключом доступа к iTALC

Произойдет создание пары ключей и экспорт публичной части ключа в текстовый файл /home/teacher/italc_public_key.key.txt.

Данные действия необходимо повторить для каждой роли (каждый раз выбирая новый каталог для экспорта открытого ключа).

Также в консоли управления, на вкладке «Аутентификация», необходимо снять отметки с пункта «Аутентификация с помощью списков доступа (ACL)»:

Консоль управления iTALC. Вкладка «Аутентификация»

Копирование ключей на управляемые компьютеры

Все открытые ключи (файлы "key" из каталогов /etc/italc/keys/public/*/) с компьютера учителя необходимо скопировать на компьютеры учащихся по тому же самому пути (перенести с помощью носителя информации, использовать общую папку, использовать команду scp).

После этого ОБЯЗАТЕЛЬНО перезапустить сеанс пользователя (иногда этого недостаточно, и программа начинает работать нормально только после перезагрузки системы).

В консоли

Для копирования ключей iTALC на компьютеры учеников проще всего воспользоваться командной строкой. В этом случае настройку управляемых компьютеров можно выполнить централизовано.

Для удобства переноса публичных частей ключей на ученические машины, можно настроить доступ по ssh с компьютера учителя на компьютеры учеников.

Далее все команды выполняются на компьютере учителя, под учетной записью учителя.

Генерация SSH-ключа:

$ ssh-keygen -t ed25519

Копируем публичную часть ключа на ученическую машину для пользователя:

$ ssh-copy-id -i /home/teacher/.ssh/id_ed25519.pub user@192.168.7.2

или сразу на все ученические машины в сети:

$ for i in `seq 2 15`; do ssh-copy-id user@192.168.7.$i; done

В результате работы получаем возможность работы с домашними каталогами пользователя user ученических машин — копировать к себе и от себя, удалять, редактировать и т.д.

Копируем публичную часть ключа на все ученические машины в сети для администратора. Для этого подключаемся к каждой ученической машине и под root копируем публичную часть ключа:

$ ssh user@192.168.7.2
user@comp2 $ su -
comp2 # cat /home/user/.ssh/authorized_keys >> /root/.ssh/authorized_keys
comp2 # exit
user@comp2 $ exit

Каталог /root/.ssh при этом должен существовать.

Теперь есть возможность удалённо выполнять команды на ученических компьютерах с привилегиями администратора.

Копируем публичные части ключей на ученическую машину:

$ scp -r /etc/italc/keys/public/* root@192.168.7.2:/etc/italc/keys/public/

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

$ ssh root@192.168.7.2 "sed -i s/LogonAuthenticationEnabled=1/LogonAuthenticationEnabled=0/ /etc/xdg/iTALC\ Solutions/iTALC.conf" 
$ ssh root@192.168.7.2 "sed -i s/PermissionRequiredWithKeyAuthentication=1/PermissionRequiredWithKeyAuthentication=0/ /etc/xdg/iTALC\ Solutions/iTALC.conf"
$ ssh root@192.168.7.2 "sed -i s/PermissionRequiredWithLogonAuthentication=1/PermissionRequiredWithLogonAuthentication=0/ /etc/xdg/iTALC\ Solutions/iTALC.conf"

Или настраиваем сразу все клиентские машины (копируем ключи и настраиваем подтверждение доступа):

$ ssh-add; for i in `seq 2 15`; do scp -r /etc/italc/keys/public/* root@192.168.7.$i:/etc/italc/keys/public/; done
$ ssh-add; for i in `seq 2 15`; do ssh root@192.168.7.$i ""sed -i s/LogonAuthenticationEnabled=1/LogonAuthenticationEnabled=0/ /etc/xdg/iTALC\ Solutions/iTALC.conf"; done
$ ssh-add; for i in `seq 2 15`; do ssh root@192.168.7.$i "sed -i s/PermissionRequiredWithKeyAuthentication=1/PermissionRequiredWithKeyAuthentication=0/ /etc/xdg/iTALC\ Solutions/iTALC.conf"; done
$ ssh-add; for i in `seq 2 15`; do ssh root@192.168.7.$i "sed -i s/PermissionRequiredWithLogonAuthentication=1/PermissionRequiredWithLogonAuthentication=0/ /etc/xdg/iTALC\ Solutions/iTALC.conf"; done
Внимание! После этого необходимо ОБЯЗАТЕЛЬНО на ученических машинах перезапустить сеанс пользователя.


В графическом интерфейсе

На компьютере ученика можно импортировать ключи из консоли управления iTALC. Для этого, необходимо от имени пользователя root запустить графическую утилиту настройки iTALC, выполнив команду:

# imc

В открывшемся окне, перейдите на вкладку «Аутентификация» и запустите помощник операций с ключом доступа:

Консоль управления iTALC

В окне выбора режима работы помощника выберите пункт «Импортировать открытый ключ», в следующем окне укажите роль пользователя, для которой будет импортироваться ключ. В следующем окне введите адрес импортируемого ключа и нажмите кнопку «Далее» («Next»):

Помощник операций с ключом доступа к iTALC. Импорт открытого ключа

Произойдет импорт ключа.

Данные действия необходимо повторить для каждой роли.

Также в консоли управления, на вкладке Аутентификация, необходимо снять отметки с пункта «Аутентификация с помощью списков доступа», в разделе «Методы аутентификации», и с обоих пунктов «Подтверждение доступа»:

Консоль управления iTALC. Вкладка «Аутентификация»

Внимание! После этого необходимо ОБЯЗАТЕЛЬНО на ученических машинах перезапустить сеанс пользователя.


Использование iTALC

На компьютере преподавателя запустите iTALC, выбрав «Меню запуска приложений» → «Образовательные» → «Управление рабочими столами учеников».

iTALC3

По верхнему и левому краям окна iTALC расположены панели, содержащие кнопки для настройки iTALC. Основная часть окна разделена по вертикали на две части. Левая часть служит для отображения производимых настроек, правая — для показа рабочих столов компьютеров учащихся.

Верхнее меню содержит следующие кнопки:

Переключить класс Переключить класс — меню, для выбора активной классной комнаты.

Режим обзора Режим обзора — обзор всех видимых компьютеров (режим по умолчанию).

Полноэкранное демо Полноэкранное демо — экран учителя будет отображаться на всех активных компьютерах. Действия пользователей при этом будут заблокированы.

Демо в окне Демо в окне — экран учителя будет отображаться на всех активных компьютерах. Пользователи при этом могут переключаться на другие окна.

Блокировать компьютеры Блокировать/разблокировать компьютеры — блокировка всех устройств ввода и на экране монитора появляется заставка.

Текстовое сообщение Текстовое сообщение — отправление текстового сообщения всем пользователям.

Включить компьютеры Включить компьютеры — включение всех видимых компьютеров.

Выключить компьютеры Включить компьютеры — выключение всех отображаемых компьютеров.

Поддержка Прямая поддержка — поддержка действий отдельного пользователя.

Подогнать/выровнять Подогнать/выровнять — подогнать окна под их размер (окна клиентов станут максимально возможного размера).

Авто вид Авто вид — автоматическая расстановка окон и подгонка размеров.

Добавление класса/компьютера

Откройте «Менеджер Классов», щелкнув по значку Менеджер Классов на левой панели окна iTALC.

В контекстном меню окна «Менеджера Классов» выберите пункт «Добавить класс». В появившемся окне введите имя класса, нажмите кнопку «OK».

В окне Менеджера Классов щелкните правой кнопкой мыши, в появившемся меню выберите «Добавить компьютер». В появившемся окне заполните поле «IP/имя компьютера». Поля «Имя» и «MAC-адрес» заполнять необязательно. Нажмите кнопку «OK»:

Добавить компьютер

В строке с именем класса щелкните по значку <, чтобы увидеть список компьютеров этого класса.

В основном окне iTALC при выполнении двойного щелчка мыши по компьютеру появляется предварительный просмотр рабочего стола ученика. При нажатии правой кнопкой по компьютеру или окну предварительного просмотра рабочего стола появляется контекстное меню с полным набором действий с этим компьютером.

Список действий

При нажатии правой кнопкой по названию класса появляется контекстное меню с полным набором действий для управления сразу всеми компьютерами в классе.

Основные действия

Просмотр и запись происходящего на компьютерах учеников

Просмотр и запись происходящего

По умолчанию на экране iTALC демонстрируется происходящее на всех активных компьютерах. Начать просмотр происходящего на экране одного компьютера можно выполнив двойной щелчок мыши по этому компьютеру.

Для записи текущего состояния ученического компьютера, необходимо в контекстном меню этого компьютера выбрать пункт «Сделать снимок экрана». Щелкнув по значку Снимки экрана на левой панели окна iTALC, можно просмотреть сохраненные записи.

Удалённый контроль и управление компьютерами учеников

Удалённое управление

Начать просмотр происходящего на экране одного компьютера можно, выполнив двойной щелчок мыши по этому компьютеру. Если в открывшемся окне нажать кнопку «Удалённое управление» появится возможность управлять данным компьютером (вводить команды, запускать программы и т.д.).

Начать удалённое управление также можно из контекстного меню машины (пункт «Удалённое управление»), или щелкнув на кнопку Поддержка в верхнем меню окна iTALC (потребуется ввести IP-адрес или имя машины).

Демонстрация учебных материалов

iTALC. Демонстрация учебных материалов

Демонстрация учебных материалов доступна в режиме полного экрана (действия пользователей при этом будут заблокированы) или в отдельном окне. Запуск данных режимов возможен из контекстного меню компьютера (запуск демонстрации на отдельном компьютере), класса (демонстрация на всех компьютерах класса), а так же с помощью кнопок Полноэкранное демо и Демо в окне верхнего меню окна iTALC.

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

Демонстрация материалов с компьютера учащегося

iTALC. Демонстрация материалов учеником

Для предоставления учащемуся возможности демонстрации производимых им действий на рабочие столы других учащихся необходимо в контекстном меню выбрать пункт «Разрешить учащемуся показать демо».

Блокирование рабочих станций

iTALC. Блокирование рабочих станций

Можно заблокировать как отдельную рабочую станцию, так и все станции в классе, вызвав соответствующее контекстное меню и выбрав пункт «Заблокированный дисплей». Заблокировать станции можно также нажав на кнопку Блокировать компьютеры в верхнем меню окна iTALC.

Вид рабочего стола учащегося:

Заблокированная рабочая станция

Пересылка текстовых сообщений учащимся

iTALC. Пересылка текстовых сообщений учащимся

Текстовое сообщение может быть отправлено как на отдельную рабочую станцию, так и на все станции в классе. Для этого необходимо вызвать соответствующее контекстное меню, выбрать пункт «Послать текстовое сообщение», в открывшемся окне ввести текст сообщения и нажать кнопку «OK». Также отправить сообщение можно, нажав на кнопку Текстовое сообщение в верхнем меню окна iTALC.

Запуск команд

iTALC. Запуск команд

Для выполнения команд на рабочей станции или на всех станциях в классе необходимо вызвать соответствующее контекстное меню, выбрать пункт «Команды для выполнения», в открывшемся окне ввести команды и нажать кнопку «OK».

Порядок настройки класса с iTALC (P6/Centaurus)

  1. Добавляем учителя в группу italcmaster:
    # gpasswd -a teacher italcmaster
  2. Генерируем 4 пары ключей.
    # for d in admin other supporter teacher; do ica -createkeypair; for k in public private; do /bin/cp -p /etc/italc/keys/$k/teacher/key /etc/italc/keys/$k/$d/key; done; done 
  3. Создаём архив с публичными ключами. Архив нужен для того, чтобы ключи после передачи на машину ученика принадлежали именно группе italcmaster, даже если у неё там по какой-то причине другой GID:
    # tar cvf /tmp/ita.tar /etc/italc/keys/public
  4. Этот архив надо любым доступным способом передать на каждую машину ученика и там разархивировать:
    # tar -C / -xvf ita.tar

Технические особенности

Настроенный iTalc-клиент анонсируется в Avahi, оттуда же iTalc-мастер берёт информацию о клиентах (при этом все 4 ключа должны быть анонсированы).

Внимание! Для идентификации клиента iTalc-мастер использует MAC-адреса, для чего запускает команду arp; эта команда должна быть установлена в системе (пакет net-tools) и доступна в $PATH учителя. Если она недоступна, проще всего сделать так:
$ mkdir -p ~/bin; ln -s /sbin/arp ~/bin/


Использование в дистрибутивах

Для автоматической генерации ключей используйте пакет installer-feature-init-italc, он поддерживает как italc, так и italc2 ( с версии 0.2.1-alt1 ). Пакет при установке генерирует ключи и добавляет группы italcmaster и italc-teachers в список групп по умолчанию.

Инструкции