Управление компьютерным классом
Утилита помогает настроить компьютерный класс на операционной системе МОС 12 в школе для управления через ssh и Veyon.
Перед использованием основных функций программы необходимо произвести настройку кабинета, выбрав вкладку "Настройка хостов". Для успешной работы все компьютеры в кабинете должны находиться в одной подсети.
Настройка
Сначала необходимо заполнить таблицу компьютеров. Для каждого компьютера необходимо указать название и адрес. Внимание: если указать адрес не в формате IP, к нему добавляется суффикс .local, необходимый для доступа к компьютеру в школьной сети. Если он не является необходимым, можно отредактировать файл /home/пользователь/.teacher_config/ccs.conf, вписав нужный суффикс или оставив пустой часть строки после знака =, что будет означать пустой суффикс.
Остальные поля в таблице не являются обязательными, но необходимы для работы большинства функций программы:
- Выбор - логическое значение, которое показывает, будет ли выполнено на компьютере указанное действие. Если нажать на заголовок столбца (надпись "Выбор"), можно выбрать или снять выбор со всех компьютеров.
- MAC-адрес: можно указать, но он определяется автоматически при установке Veyon.
- Логины и пароли ученика и админа: можно указать, но в случае, если они одинаковые, проще воспользоваться кнопками "Генерация админов" и "Генерация пользователей" в верхней части окна. Внимание: в целях безопасности вместо паролей в таблице отображаются звёздочки. Посмотреть пароль можно во всплывающей подсказке, наведя на него курсор мыши.
- Настроен: заполняется автоматически при копировании ключей SSH.
- Удалённый логин: заполняется автоматически при включении на хостах возможности удалённого входа в систему.
Также доступен импорт данных в таблицу:
- Из текстового файла: в файле должны быть в столбик перечислены адреса компьютеров, имена присваиваются автоматически. Например, если при импорте указать универсальное имя comp, то в таблице компьютерам будут даны имена comp1, comp2 и т.д.
- из JSON - импорт всех данных целиком. Импортируемый файл json должен быть создан данной программой при помощи экспорта. Внимание: если в таблице были хосты, не указанные в импортируемом файле JSON, они не удаляются, а остаются в таблице.
Действия на вкладке "Настройка хостов"
Сеть:
- Проверить ping. Проверяет, доступны ли отмеченные компьютеры.
- Скорость проводных подключений. Выводит текущую скорость проводных подключений на отмеченных хостах или информацию о том, что проводных подключений нет (в случае, когда хосты подключены только по wi-fi).
- Настроить доступ. Копирует ключи SSH с учительского компьютера на отмеченные компьютеры учеников. Перед копированием необходимо ответить на вопрос, создать ли новый ключ (возможно, с заменой) или использовать существующий на учительском компьютере. Также предлагается выбрать, добавить ли ключи к уже имеющимся на ученических компьютерах или заменить файл authorized_keys в папке /root/.ssh. При успешной настройке в столбце Настроен появится значение Да. Внимание: для настройки доступа по ssh в таблице должны быть заполнены логины и пароли админов на удалённых хостах. Админ - любой пользователь из группы wheel (учитель, администратор), но не root.
- Удалить ключи. Позволяет удалить ключи ssh с выбранных компьютеров учеников. Внимание: данная функция удаляет все ключи, а не только скопированные с компьютера учителя.
- Получить IP по MAC. Позволяет при заполненном MAC-адресе получить IP выбранных хостов и внести их в таблицу. Внимание: при выборе данной опции существующие имена хостов будут заменены на их IP.
- Получить MAC по IP. Позволяет при заполненном IP-адресе получить MAC-адреса выбранных хостов и внести их в таблицу.
- Сменить machine-id. Позволяет сгенерировать новый уникальный идентификатор для каждого отмеченного хоста.
- Групповое переименование хостов. Позволяет присвоить хостам локальные имена, отличающиеся только номерами. Может быть полезно при настройке отдельного кабинета.
Пользователи:
- Создать учётные записи учеников. Позволяет создать на выбранных компьютерах учётные записи учеников с указанными в таблице логинами и паролями. На Рабочем столе у созданных учеников также будут созданы папки Задания и Сдать работы.
- Удалить учётные записи учеников. Позволяет удалить на выбранных компьютерах учётные записи учеников вместе с их домашними папками.
- Включить и выключить автологин учеников - позволяет управлять автологином на выбранных компьютерах.
- Создать и копировать архив домашней папки с сервера - позволяет заархивировать домашнюю папку выбранного пользователя на сервере и скопировать на хосты для возможности последующего восстановления из архива.
- Копировать существующий архив /home с сервера - позволяет скопировать заранее созданный архив домашней папки с сервера на хосты для возможности последующего восстановления из архива.
- Копировать архив /home с хоста на сервер - позволяет создать и скопировать с выбранного хоста архив домашней папки пользователя для последующего его компирования на другие хосты.
Veyon:
- Установить Veyon - устанавливает veyon на компьютере учителя (если он уже был установлен, установка не производится) и veyon-core на компьютерах учеников. Внимание: на компьютерах учеников в трее может не появляться значок Veyon, что никак не влияет на его работоспособность.
- Настроить Veyon: позволяет создать кабинет для управления при помощи Veyon и добавить в него выбранные компьютеры. Внимание: если кабинет уже существует, будет предложено заменить его или добавить компьютеры в уже существующий; также если в текущем кабинете уже существуют указанные компьютеры, их тоже можно будет заменить, оставить или добавить копии. Внимание: для корректной работы Veyon пользователь на компьютере учителя должен входить в группу wheel. Также на компьютерах учеников должен быть запущен сеанс X11. Если Veyon установлен, настроен, но компьютеры отображаются как недоступные, вероятно, что проблема в типе сеанса (wayland). В таком случае нужно завершить сеанс и залогиниться заново, выбрав в нижней части экрана тип сеанса Plasma (X11).
- Удалить ключи с сервера/с хостов - удаляет все найденные ключи Veyon с сервера или с выбранных хостов.
- Копировать ключ на хосты- позволяет скопировать указанный ключ Veyon с сервера на хосты.
- Рестарт службы на сервере/на хостах - перезапускает службу Veyon на сервере или на хостах.
Выполнение команд:
- Выполнить команду от root: отправляет по SSH на выбранные компьютеры введённую команду, которая будет выполнена от root. Также есть возможность выбрать из списка распространённых команд:
- обновить и перезагрузить хосты;
- обновить и выключить хосты (с возможностью после этого выключить и сервер, а также вывести уведомление);
- перезагрузить хосты;
- выключить хосты;
- установить программы (будет предложено ввести названия программ в виде списка);
- добавить языки ввода;
- удалить программы (аналогично);
- выполнить команду из файла. Каждую из предложенных команд можно отправить на хосты как последовательно, так и параллельно (не рекомендуется при слабой сети).
- Установить или удалить программы: вызывает окно выполнения команды от root со вписанными командами. Программы выбираются при помощи чекбоксов или вводятся с клавиатуры.
- Скопировать файл - позволяет скопировать выранный файл с сервера на хосты, в том числе как скрипт автозагрузки или правила nftables.
- Скопировать /etc/skel - позволяет скопировать папку /etc/skel с сервера на хосты для их последующей настройки по умолчанию.
- Включить удалённый вход в систему - устанавливает необходимый пакет и включает на хостах возможность авторизации через mos.ru.
- Очистка конфигов пользователей - позволяет очистить конфиги программ пользователей на хостах при помощи утилиты configcleaner.
- Включение хостов - позволяет включить отмеченные хосты по wakeonlan.
Ограничения профиля:
-
Запретить/разрешить изменения рабочего стола - блокирует/снимает защиту от записи файла настроек рабочего стола у текущего пользователя. Внимание: данное действие не запрещает менять настройки рабочего стола, а восстанавливает их к предыдущему состоянию после перезагрузки.
-
Отключить/ограничить/включить интернет на хостах - запрет и разрешение ученикам использования протоколов http и https (ssh и veyon работают). Ограничения разрешают доступ к указанному белому списку IP.
-
Отключить/включить фаервол на хостах - позволяет отключить и включить фаервол на выбранных хостах.
-
Отключить/включить wi-fi на хостах - позволяет отключить и включить wi-fi на выбранных хостах. Внимание: если беспроводное соединение на хостах единственное, то после выключения ими будет невозможно управлять до снятия ограничений вручную.
-
Изменения сети на хостах - запрещает или снимает запрет на изменения сетевых настроек на хостах.
-
Устройства ввода на хостах - отключает и включает работиу устройств ввода на хостах.
-
Установка приложений из магазина - устанавливает правила, согласно которым приложения из магазина может устанавливать только администратор или все пользователи.
-
Защитить настройки паролем/снять защиту - установка пароля на данную вкладку программы на сервере.
-
Прервать выполнение команды: позволяет прервать текущую команду без перезагрузки приложения.
Действия на вкладке "Учителю"
Работа с таблицей:
- Выбрать всё - выбор всех компьютеров из таблицы
- Очистить выбор - снятие выбора со всех компьютеров Также можно выбирать компьютеры мышью при помощи клавиш Ctrl и Shift.
- Генерация пользователей - записывает в таблицу одинаковые для всех хостов введённые логин и пароль ученика.
- Сохранить, удалить или перейти к профилю - позволяет быстро сохранить (требуется только ввод названия), удалить или загрузить список хостов со всеми настройками. Опция предназначена для управления несколькими компьютерными кабинетами с одного сервера или для работы с несколькими классами в одном кабинете.
Работы и задания:
- Создать папку Сдать работы - создаёт на Рабочем столе ученика папку Сдать работы, из которой будет осуществляться автоматический сбор работ.
- Собрать работы - позволяет скопировать работы из папки Сдать работы с Рабочего стола учеников в папку Работы на Рабочем столе учителя, где создаются подпапки с указанным именем, а также текущей датой и временем в названии. Здесь и далее при обмене файлами ученик - это текущий пользователь на хосте, включая гостя и пользователя с учётной записью mos.ru.
- Очистить работы - очищает папку Сдать работы на Рабочем столе учеников на выбранных компьютерах.
- Вернуть на доработку - копирует выбранные файлы обратно на хосты в папку Сдать работы.
- Раздать задания - позволяет скопировать выбранные в файловом диалоге файлы с компьютера учителя в папку Задания на Рабочем столе учеников.
- Очистить задания - очищает папку Задания на Рабочем столе учеников на выбранных компьютерах.
Архивация и восстановление:
- Архивировать /home - создаёт архив домашней папки ученика на выбранных компьютерах.
- Восстановить /home - восстанавливает домашнюю папку ученика из архива в случае его наличия на выбранных компьютерах.
- Создать снимок /home - создаёт BTRFS снимок домашней папки ученика на хосте (при условии использования BTRFS).
- Копировать архив /home с сервера - создаёт архив выбранной учётной записи на сервере и копирует на хосты для последующего восстановления из архива.
Действия на хостах:
- Отобразить имя - отображает названия (как в таблице) выбранных компьютеров на их экранах.
- Поменять обои - меняет обои у учеников на выбранный учителем файл.
- Открыть браузер - открывает браузер Chromium с указанной на сервере страницей на выбранных компьютерах.
- Удалённая авторизация учеников - осуществляет вход в систему указанных в таблице пользователей.
- Удалённый выход из системы - осуществляет выход из системы на хостах c полным завершением сеанса.
- Регистрация на уроке - запускает на хостах программу регистрации. Введённые учениками данные передаются на сервер и сохраняются в файле, указанном учителем.
- Закрыть окна - закрывает все активные окна текущего пользователя.
- Перезагрузить - перезагружает выбранные компьютеры.
Действия на сервере:
- Открыть Проводник - открывает Домашнюю папку ученика на выбранном компьютере в Dolphin на сервере.
- Открыть папку Работы - открывает папку Работы с собранными работами учеников на сервере.
Консольная версия
В настоящее время программу можно запускать в консольной версии со следующими параметрами командной строки:
- registration - запуск регистрации на уроке;
- poweroff - выключить хосты;
- poweron - включить хосты (должен поддерживаться wakeonlan);
- reboot - перезагрузить хосты;
- end-session - завершить текущую сессию на хостах;
- lock-session - заблокировать текущую сессию на хостах;
- close-browsers - закрыть все браузеры на хостах;
- show-hostnames - отобразить имена хостов;
- get-works - собрать работы учеников;
- open-browser - открыть браузер на хостах (следующий параметр - адрес страницы для открытия);
- internet-off - выключить интернет на хостах;
- internet-on - включить интернет на хостах;
- input-off - выключить устройства ввода на хостах;
- input-on - включить устройства ввода на хостах.
Данные команды будут отправлены на отмеченные хосты на вкладке настройки хостов на компьютере учителя.
Лицензия
GPLv3
Авторы
Команда разработки МОС