LINUX.ORG.RU
 

Управление компьютерами в учебных классах


0

6

Управление компьютерами в учебных классах

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

Программы добавляются через desktop-файлы с расширенным синтаксисом. В них содержится информация о том, какой пакет ставить и у каких файлов убрать RX-права, когда программа запрещена. Desktop-файлы помещаются на сервер, откуда компьютеры в аудиториях их скачивают по команде с панели управления и, в случае необходимости, устанавливают пакеты через apt-get.

Панель управления - это web-интерфейс. Можно заходить с любого компьютера, если знать логин и пароль, для преподавателей в классах работает single sign on.

Из дополнительных возможностей:

  • Просмотр/Управление рабочим столом студента (через TurboVNC).
  • Показ выбранного рабочего стола всем в классе (через TurboVNC).
  • Разрешение доступа только к отдельным сайтам (на каждой машине установлен tinyproxy).
  • Разрешение доступа к Интернету.
  • Разрешение использовать “флешки”.
  • Блокировка компьютера (с красивой анимацией замка).
  • При выходе всё, что в /home/student сжимается и отправляется на сервер (чере rsync), а содержимое папки стирается.
  • Наверняка, что-то еще полезное о чем я забыл.

На клиентах:

  • Сильно доделанная и обрезанная Kubuntu, от KDE остался Kwin и несколько программ (прошлая версия была на OpenBox, но было много проблем в основном с Lazarus).
  • Клиент для связи с сервером на Python. Дополнительные программы общаются c ним по DBus.
  • Рабочий стол и диалог входа на Qt/С++.
  • Панель tint2.
  • Много shell-скриптов.

На сервере:

  • FreeBSD (так исторически сложилось).
  • Сервер на Python, передающий команды от web-интерфейса клиентам и собственно этот web-интерфейс предоставляющий. Этот же сервер авторизует клиентов.
  • Nginx.
  • Rsync для сохранения данных пользователей.
  • MySql, который там совсем не нужен, но никак не уберу.

За кадром: Установщик на базе SystemRescueCd для лаборантов. Нужно только вставить диск или флешку, перегрузиться и ввести номер рабочего места и аудитории, далее всё настроится автоматически: на жёсткий диск через FSArchiver развернется образ с Samba и в нужные файлы впишутся правильные цифры. Весь процесс займёт 5-7 минут. На этом же диске/флешке в меню есть пункт для настройки сервера сетевой загрузки на случай необходимости установить новый класс.

Под управлением этой штуки 4 класса в среднем по 30 машин в каждом.

>>> Просмотр (2560x2020, 412 Kb)


[#]  
Novell-ch

круто конечно, были бы исходики - было бы еще круче.

*** ()
[#]  
kitar

А какое "железо'' на клиентах и сервере?

* ()
[#] Ответ на: комментарий от kitar 24.01.2012 21:18:50  

Сервер на 2-х Xeon и много памяти, но на нем еще много чего крутится в jail. Эта программка его не сильно напрягает.

Клиенты разные но в основном Celeron какой то память от 512 гб до 1 гб, видеокарты intel 945 KWin крутится со спец эффектами.

()
[#] Ответ на: комментарий от Novell-ch 24.01.2012 21:18:14  

Исходники будут! Как только совсем отвяжу все от инфраструктуры и напишу инструкцию как это развернуть, а пока просто хвастаюсь :)

()
[#]  
firsttimeuser

зачот, да. Код открыть желания не возникало?

***** ()
[#] Ответ на: комментарий от firsttimeuser 24.01.2012 23:25:33  

Отвечал выше. Возникало.

()
[#]  
ollowtf

Очень интересно, но первый скрин навевает параноидальные мысли о тотальном контроле ;)

* ()
[#] Ответ на: комментарий от ollowtf 24.01.2012 23:53:57  

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

Тотальный контроль был одной из целей, только больше не за студентами, а за компьютерами, потому что дети и вирусы убивали окошки на раз. А хотелось, что бы все всегда просто работало

()
[#] Ответ на: комментарий от dik123 25.01.2012 0:11:00  
ice2heart

тоже интересно глянуть в исходники, на чем реализованно?

* ()
[#] Ответ на: комментарий от dik123 25.01.2012 0:11:00  
ice2heart

а все вопрос отпал, невнимательно топик читал

* ()
[#] Ответ на: комментарий от dik123 25.01.2012 0:11:00  

А какие альтернативы рассматривались перед созданием собственного проекта?

* ()
[#] Ответ на: комментарий от omegatype 25.01.2012 10:06:10  

netop school - не устроил потому, что win only, не понятно за что такие деньги и он широковещалкой ещет компьютеры, чем несколько раз нам сильно мешал.

ITALC - не устроил потому, что мне очень хотелось web-интерфей, что бы преподаватель не зависил от одного компьютера.

И никто из них не поддерживает установку программ из заранее подготовленного каталога.

()
[#]  
kovrik

Очень круто! А, главное, полезно.

** ()
[#]  

Молодец! Очень рекомендую к публикации исходников добавить окружение для сборки deb-пакетов.
SSO делается керберосом?

*** ()
[#]  

Я бы за "значки на рабочем столе" руки поотрывал.

**** ()
[#] Ответ на: комментарий от markevichus 25.01.2012 12:43:52  

Для sso на сервере генерится однаразовый url инвайт. Со значка панели управления на рабочем столе идет комана через dbus клиенту, клиент посылает на сервер запрос там проверяется что есть нужные права и назад посылается команда открыть браузер по соответствующей ссылке.

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

()
[#] Ответ на: комментарий от Eddy_Em 25.01.2012 12:45:49  

там кроме "рабочего стола" ничего и нет, или формулировка не нравится?

()
[#] Ответ на: комментарий от dik123 25.01.2012 12:59:28  

Зачем "рабочий стол"? Поставить полноэкранный terminal или konsole в автозагрузку - и хватит.

**** ()
[#]  
masz

отличная работа, где-то можно следить за процессом разработки?

()
[#]  
snefjyent

ПО отличное, шрифты убогие.

()
[#] Ответ на: комментарий от masz 25.01.2012 13:36:44  
>>-----Цитата---->>

где-то можно следить за процессом разработки?

<<-----Цитата----<<

Пока ни куда не выложу - увы нет.

()
[#] Ответ на: комментарий от snefjyent 25.01.2012 13:43:09  
>>-----Цитата---->>

шрифты убогие.

<<-----Цитата----<<

Ну наконец то! А то уж думал ни кто не заметит :)

()
[#] Ответ на: комментарий от snefjyent 25.01.2012 13:43:09  
HerrWeigel

Джипег же. Так что реквесттруем пнг

* ()
[#]  
JJackFLASH

FreeBSD (так исторически сложилось).

Это почему? Сожалеете о том, что на вашем сервере живет FreeBSD?

* ()
[#] Ответ на: FreeBSD (так исторически сложилось). от JJackFLASH 25.01.2012 15:42:13  

В целом нет jail и zfs вещи приятные. Но иногда, когда нужно было собрать что-то типа pdftk 64 битного то немножко жалею.

Так исторически сложилась, это ответ на вопрос почему не linux :)

()
[#]  

Возможны правовые последствия... если не в этой стране, то в, допустим Германии, точно.

Я например не вижу причин для мониторинга. Как минимум такой мониторинг должен осуществляться только с согласия студента.

* ()
[#]  
geekless

Молодцы.

** ()
[#]  
abraziv_whiskey

Неплохо подойдет и для интернет-кафе, если таковые еще существуют. Заодно и локаль можно менять, если в туристическом месте.

***** ()
[#]  
lazyklimm

круто, зачёт

**** ()
[#] Ответ на: комментарий от invy 25.01.2012 16:15:29  
>>-----Цитата---->>

Возможны правовые последствия... если не в этой стране, то в, допустим Германии, точно.

<<-----Цитата----<<

Студенты предупреждены. При входе в систему им сообщается о "слежке". Надо будет еще таблички повесить: на вас смотрит скрытый преподаватель!

()
[#] Ответ на: комментарий от invy 25.01.2012 16:15:29  
>>-----Цитата---->>

Я например не вижу причин для мониторинга. Как минимум такой мониторинг должен осуществляться только с согласия студента.

<<-----Цитата----<<

Причина проста: преподаватель не хочет все время ходить по классу, а в классе 30 машин. Да студенты согласны, что бы преподаватель помагал им выполнять здание и проверял работу не в слепую. (хотя насчет проверял не вслепую возможно некоторые студенты возрозят:)

()
[#]  

Весьма годно. Покажите консольку что ли...

* ()
[#] Ответ на: комментарий от invy 25.01.2012 16:15:29  

И химичка в лаборатории следить не должна. Нарушает права. Не путайте работу на школьном оборудовании и пользование личными вещами или там уборными.

* ()
[#] Ответ на: комментарий от dik123 25.01.2012 17:04:27  

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

* ()
[#] Ответ на: комментарий от LMD 25.01.2012 17:14:37  

А я и не путаю. Путаете пожалуй вы.

Во-первых при чём тут химия? Бороться с кулхацкерами надо ограничением прав.

Во-вторых, допустим у меня в универе есть e-mail ящик, и я могу управлять всеми моими регистрациями на экзамены через сеть.
Часто прямо из лаборатории регистировался или отправлял письма (по учёбе) кому надо. Но даже письма по учёбе являются конфиденциальной информацией. Я могу смотреть свои оценки (и не хочу чтобы преподаватель видел по каким предметам что там у меня стоит).
Более того, я могу опять же оплатить следующий семестр через сайт универа (и с компьютера универа), ввести номер моего банковского счёта и уполномочив университет снять нужную сумму. (преподу опять таки это знать не положено)
Зачастую, опять таки, студент ищет что-то в интернете, там он может вводить какую-то конфиденциальную информацию.

Это всё не подпадает под "частное пользование".

Судя по описанию, в котором фигурируют слова "студент" и "преподаватель" речь идёт не о школе, а о ВУЗе.

Я-то как бы ничего против автора и его задумок не имею - хорошо сделано. Но правовые аспекты я бы тоже учитывал :)

Я думаю опция "отключать слежку" устроила бы всех :)
Хочет студент помощи, отметит галку.

* ()
[#] Ответ на: комментарий от invy 25.01.2012 18:47:04  

*"включить слежку" :) ну вы поняли да :)

* ()
[#] Ответ на: комментарий от invy 25.01.2012 18:47:04  
gray
>>-----Цитата---->>

Зачастую, опять таки, студент ищет что-то в интернете, там он может вводить какую-то конфиденциальную информацию.

<<-----Цитата----<<

Это на общественном то компьютере?

* ()
[#] Ответ на: комментарий от gray 25.01.2012 19:36:19  

А что такого-то? У него же свой аккаунт? С его личным паролем его личным хоумом, который ему предоставляет универ.

* ()
[#] Ответ на: комментарий от invy 25.01.2012 18:47:04  
Orfeo

Во время учебы учиться надо, задания выполнять, которые задали, а не оплачивать учебу, и писульки писать или оценки смотреть. Так что твои претензии странны, как минимум.

* ()
[#] Ответ на: комментарий от Orfeo 25.01.2012 20:02:21  

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

* ()
[#]  

А вместо иконок на рабочем столе - wbar как в лучших MacOS X.)) Очень впечатляет - хорошая работа)

()
[#] Ответ на: комментарий от frozenix 25.01.2012 18:29:55  

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

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

()
[#] Ответ на: комментарий от invy 25.01.2012 20:27:27  
>>-----Цитата---->>

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

<<-----Цитата----<<

Ну не можете же!

Когда студент входит в систему он может только: выключить компьютер, выйти из своей учетной записи, и заблокоровать экран. Всё. Больше ничего. У студента нет возможности запустить браузер если преподаватель в панели управления не поставит галочку и нет возможности прочитать файлы с флешки или диска если нет галочки. А даже если браузер и дан, то обычно разрешаются только сайты по программе обучения, но не весь интернет. Если хочешь сделать, что-то сверх задания, в другой программе, проси преподавателей разрешения, они практически всегда идут навстречу (надо же кого-то на олимпиады отправлять).

Совсем не идеальная схема, но в данном конкретном заведении позволяет удерживать внимание студентов на работе. Это не ВУЗ, а колледж.

И это совсем не личное дело. Заведение несет ответственноть за все, что сделано с помощью его оборудования.

()
[#] Ответ на: комментарий от dik123 25.01.2012 20:49:19  
>>-----Цитата---->>

Совсем не идеальная схема, но в данном конкретном заведении позволяет удерживать внимание студентов на работе. Это не ВУЗ, а колледж.

<<-----Цитата----<<

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

>>-----Цитата---->>

Заведение несет ответственноть за все, что сделано с помощью его оборудования.

<<-----Цитата----<<

Это не повод для тотального контроля.

В Германии не прокатит.

* ()
[#] Ответ на: комментарий от xor2003 25.01.2012 20:28:06  
>>-----Цитата---->>

А вместо иконок на рабочем столе - wbar как в лучших MacOS X.))

<<-----Цитата----<<

Не знал о нем, не уверен, что буду использовать в этом проекте, но для себя возможно пригодится. Спасибо.

()
[#] Ответ на: комментарий от dik123 24.01.2012 22:19:16  
I-Love-Microsoft

> Исходники будут! Как только совсем отвяжу все от инфраструктуры и напишу инструкцию как это развернуть, а пока просто хвастаюсь :)

ооо, тогда респект! только очень прошу, не надо "как обычно", а обычно это нечто хитрозакрученное которое надо долго курить маны, настраивать сотню параметров, вручную прописывать то и се, а в итоге оно не работает - там какая-то системная политика и права доступа блокирует молча и ты потратил месяц и только потом нашлась причина почему не работало

просьба обратить на это внимание, 80% разработчиков опенсорса разработали крутой софт, а то что его тяжко настроить и поднять - их не волнует, и что по какой то причине не работающий сервис не дает работать - это никак не сообщается

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

самое страшное это когда софт молча не работает или на половину, и только dmesg скажет почему софт не смог сделать тото и это...

на правах крика души :) 100% ИМХО

**** ()
[#]  

Круть.

* ()
[#] Ответ на: комментарий от invy 25.01.2012 20:27:27  
Orfeo

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

* ()
[#] Ответ на: комментарий от invy 25.01.2012 21:59:25  
densss
>>-----Цитата---->>

В Германии не прокатит.

<<-----Цитата----<<

Мсье, вы задолбали своей Германией - это раз.

Эти компьютеры являются собственностью ВУЗа и ВУЗ вправе требовать от студентов, чтобы его оборудование использовалось по назначению - это два.

Как вам уже выше писали: система разработана для ПОМОЩИ студентам во время занятий и для облегчения труда преподавателя, студенты предупреждены и мониторинг ведётся с их согласия - это три.

В ВУЗе надо учиться, а не прон с флешки смотреть на уроках - это четыре.

Вы по-сути своей не различаете скрытое наблюдение за частной личной жизнью и открытым мониторингом рабочего процесса. Это совсем не мониторинг скрытой камерой душевых в студенческом общежитии.

Кстати, во многих крупных фирмах при приёме на работу заранее оговаривается объём полномочий нового сотрудника, в частности и в использовании компьютера и использование систем мониторинга там тоже(сюрприз-сюрприз) упоминается. В Германии такого нет?

()
[#]  
densss

По теме: отличная работа!

()