Программа предназначана для удаленного управления классом с рабочего места учителя.
Вот оригинальная инструкция:
Спойлер
INSTALLING AND SETTING UP iTALC FOR USE
=========================================
Please note that all instructions in this file apply to the Linux version of
iTALC. Users of the win32 version of iTALC should run the installer which will
guide you through the installation. Afterwards the graphical iTALC Management
Console helps to set up iTALC.
For further information you can also take a look at iTALC-Wiki:
http://italc.sf.net/wiki/
Building iTALC
----------------
If you have ready to use packages (RPMs, DEBs etc.), you can skip this section
and continue with "Install iTALC".
Requirements:
- libqt4-dev and qt4-dev-tools (Debian-based distributions) or qt4-devel
(Fedora etc.)
- xorg-dev or similiar
- libxtst-dev
- libjpeg62-dev/libjpeg-devel
- zlib1g-dev/zlib-devel
- libssl-dev/openssl-devel
Of course GCC/G++ must not be missing...
Building:
mkdir build
cd build
cmake ..
If some requirements are not fullfilled, CMake will inform you about it and
you will have to install the missing software before continuing.
After CMake ran successfully you can run
make install
Make sure you're issuing the "make install" as root! This will install iTALC
directly on the computer.
Read the next section on how to setup iTALC.
Installing iTALC
-------------------
Requirements:
Of course you should have some computers, connected via TCP/IP network...
First you should download the neccessary packages depending on your
Linux distribution. If there're no packages for your distribution,
try to build iTALC yourself. See previous section for details.
If there're unfulfilled requirements, your package management system (dpkg,
RPM etc.) will complain about it.
Installing:
First you have to install the neccessary packages on your computer(s).
On clients you only have to install the packages italc:
on DPKG-based systems:
apt-get install italc-client
on RPM-based systems:
rpm -i italc...rpm
On the master computer you additionally need italc-master.
apt-get install italc-master
or
rpm -i italc-master...rpm
Setup an iTALC client
----------------------
On clients you have to make sure that the iTALC Client Application (ICA),
is being started when either X is started or a user logs on.
There're several methods to achieve this (this is why it's not done
automatically when installing the package):
1. Add the appropriate command ("ica &") to /etc/X11/xinit/xinitrc or
add an according desktop file to /etc/xdg/autostart.
This method isn't recommend, because ICA then runs with the user's
privileges -> the user is able to kill ICA and get out of teacher's
control.
2. add "ica &" to /etc/X11/xdm/Xsetup. On some systems, this
doesn't take effect, so either edit /etc/kde4/kdm/Xsetup or
/etc/X11/gdm/Xsetup
You can easily test whether all is fine by running telnet on port 11100 of the
according compter.
example:
telnet 192.168.1.2 11100
You should see something like "RFB 003.008".
Setup iTALC authentication
----------------------------
iTALC uses a sophisticated authentication concept to make sure only
authorized persons are able to access computers using iTALC.
The security is achieved by data signing and -verification using a public and
a private key. Thus you have to create a key pair by invoking
imc -role teacher -createkeypair
which will create a key pair in /etc/italc/keys.
Now copy the directory /etc/italc/keys/public to each client. Make sure the
whole directory including subdirectories and files are readable but not
writable to normal users. If you have network shares (AFS, NFS, Samba etc.) it's
recommended to copy this directory to a network share, set the according
permissions and link it on each client to /etc/italc/keys. This way it's no
problem to generate a new key pair (e.g. if the private key was compromised)
Then (the most important thing!) make sure only the users which should be
allowed to use iTALC have (only!) read access to /etc/italc/keys/private
including subdirectories and files. In most cases you would have to create a
group "teacher", add all teachers etc. to it and set permissions, so that only
this group has read permissions.
Setup clients and classrooms (i.e. client groups)
-------------------------------------------------
Before using iTALC, you need tell iTALC which clients to access and how they're
grouped. For doing so iTALC has an easy to use client manager. After starting
iTALC, you can open it by clicking on the according button on iTALC's sidebar.
Now you can add clients and client groups using the context menu.
For installing the client configuration you made for other users, copy the
XML files in $HOME/.italc/ into directory .italc in every iTALC user's home.
You can also link the file 'GlobalConfig.xml' to one global client
configuration in a public network directory, so that you can change every
user's client config at once, if something in your network has changed (e.g. a
client was exchanged -> different MAC address).
Спойлер
Установка iTALC
-------------------
Требования:
Конечно, вы должны иметь компьютеры, соединенные между собой с помощью TCP/IP сети ...
Сначала вы должны загрузить необходимые пакеты в зависимости от вашего
дистрибутива Linux. Если там нет пакетов для вашего дистрибутива,
попытаться построить iTALC себя.
Если в Вашей системе отсутствуют необходимые зависимости, ваша система управления пакетами (Dpkg,
RPM и т.д.) будет жаловаться на это.
Установка:
Сначала вы должны установить, какие пакеты требует Ваша система на Вашем компьютере(ах).
На клиентах Вам нужно установить только пакеты italc:
на системах Dpkg основе:
apt-get install italc-client
на системах RPM на базе:
rpm -i italc...rpm
На компьютере учителя дополнительно нужно установить italc-master.
apt-get install italc-master
или
rpm -i italc-master...rpm
Настройка клиента iTALC
Убедиться, что служба iTALC Client Application (ICA),
в настоящее время запущена и работает, когда запускается Х-сервер или при входе пользователя в систему.
Для достижения этой цели существует несколько методов (потому, что это не сделано
автоматически при установке пакета):
1 Добавить соответствующую команду ("ica &") чтобы /etc/X11/xinit/xinitrc или
добавить в соответствии настольный файл /etc/xdg/autostart.
Этот метод не рекомендуется, потому что ICA запускается с пользовательскими
привилегиями, соответственно пользователь может убить ICA и выйти из под учительского
контроля.
2 добавить "ica &" to /etc/X11/xdm/Xsetup. На некоторых системах, это
не вступили в силу, так как редактирование /etc/kde4/kdm/Xsetup или
/etc/X11/gdm/Xsetup
Вы можете легко проверить, все ли в порядке, выполнив Telnet на порту 11100 от
по Compter.
пример:
Telnet 192.168.1.2 11100
Вы должны увидеть нечто вроде "RFB 003.008".
Настройка проверки подлинности iTALC
----------------------------
iTALC использует сложный концепцию аутентификации, чтобы убедиться, что только
уполномоченные лица получают доступ к компьютерам, используя iTALC.
Безопасность достигается путем подписания данных -verification помощью общественности и
закрытого ключа. Таким образом, вы должны создать пару ключей, вызывая команду
imc -role teacher -createkeypair
которая создаст пару ключей в /etc/italc/keys.
Теперь скопируйте каталог /etc/italc/keys/public к каждому клиенту. Убедитесь, что
Весь каталог включая подкаталоги и файлы доступны для чтения, но не
на запись, чтобы обычные пользователи не смогли редактировать или удалить. Если у вас есть общие сетевые ресурсы (AFS, NFS, Samba etc.) эти
Рекомендуется скопировать этот каталог на сетевом ресурсе, установить в соответствии
разрешения и связать их на каждом клиенте в /etc/italc/keys. Таким образом, не
проблема генерировать новую пару ключей (например, если закрытый ключ был скомпрометирован)
Тогда (самое главное!), Чтобы только пользователи, которым разрешено
использовать iTALC (только!) установить доступ на чтение к /etc/italc/keys/private
включая подкаталоги и файлы. В большинстве случаев вам придется создавать
группу "учитель", добавить всех учителей и т.д. к нему и установкой прав, так что только
эта группа имеет разрешения на чтение.
Клиенты и классы по установке (то есть клиентские группы)
Перед использованием iTALC, вам нужно указать iTALC клиентов для доступа и как они
сгруппированы. Для этого iTALC имеет простой в использовании менеджер клиента. После запуска
iTALC, вы можете открыть его, нажав на по кнопке на боковой панели iTALC в меню.
Теперь вы можете добавить клиентов и клиентские группы с помощью контекстного меню.
Для установки настройки клиента вы сделали для других пользователей, копировать
XML файлы в $HOME/.italc/ в папку .italc в домашнюю папку каждого пользователя iTALC.
Вы также можете присоединить файл "GlobalConfig.xml" в один глобальный клиента
Конфигурация в каталоге сети общего пользования, так что вы можете изменить каждый
клиент конфигурации пользователя сразу, если что-то в сети изменилось (например,
обменивался клиент -> разные MAC-адрес).
Спойлер
1. Установить (я устанавливал из http://ftp.debian.org/debian/pool/main/i/italc/ или можно из репозитория, там тоже уже вторая версия имеется).
2. Отредактировать пару файлов
2.1. Отредактировать
sudo pluma /etc/mdm/Init/Default
вместо pluma вписать свой текстовый редактор по-умолчанию.
и в самом начале, сразу после коментариев (в начале строки стоит знак # ) в открывшемся файле вставить
ica &
Сохраняем, закрываем...
2.2. Отредактировать
sudo pluma /etc/mdm/PreSession/Default
и в самом начале, сразу после коментариев (в начале строки стоит знак # ) в открывшемся файле вставить
ica &
Сохраняем, закрываем...
3. Создаем ключи аутентификации (в принципе они уже созданы, но перестрахуемся):
sudo mkdir -p /etc/italc/keys/public/teacher/ /etc/italc/keys/private/teacher/
sudo imc -role teacher -createkeypair
4. Создаем группу italc и добавляем пользователя teacher (если пользователь teacher , а иначе вписываем своего - petia, vasia, usver..., в общем понятно) в нее
sudo addgroup italc
добавляем пользователя teacher (если пользователь teacher , а иначе вписываем своего - petia, vasia, usver..., в общем понятно) в нее:
sudo adduser teacher italc
4.1. Делаем ключ доступным для чтения пользователю на учительском компьтере:
sudo chgrp -R italc /etc/italc/keys/private/teacher/key
4.2. Делаем ключ доступным для чтения всем пользователям:
sudo chmod a+r /etc/italc/keys/public/teacher/key
5. Копируем на флешку /etc/italc/keys/public/teacher/ файл key
6. Проделываем на ученических машинах шаги 1, 2.
7. На ученических машинах создаем папку
sudo mkdir -p /etc/italc/keys/public/teacher/ (можно, конечно и мышкой это проделать, с правами администратора)
8. Копируем теперь в эту папку /etc/italc/keys/public/teacher/ ключ key с флешки (после копирования обратите внимание на права, должны быть root).
9. Отредактировать файл:
sudo pluma /etc/xdg/iTALC Solutions/iTALC.conf
найти там строчку
PermissionRequiredWithKeyAuthentication=1 и меняем значение на 0
иначе при каждом подсоединении к клиенту будет запрашивать разрешение у ученика, подсоединится учителю к компьютеру или нет. :)
10. Перегружаемся.
Пока я не вижу необходимости переходить с Epoptes на iTALC, который по функционалу не уступает, а иногда и превосходит iTALC.
Установка и настройка Epoptes.
Программа предназначана для удаленного управления классом с рабочего места учителя.
(мне понравилась больше, нежели iTALC)
Вот алгоритм действий, который у меня заработал (у меня LinuxMint 17 MATE):
Спойлер
На компьютере учителя:
в терминале
sudo apt-get install epoptes epoptes-client
(или через Synaptic, epoptes-client нужно устанавливать потому, что он тянетнебольшую кучку всего необходимого для корректной работы программы на компьютере учителя)
далее добавляем пользователя в группу epoptes
sudo adduser teacher epoptes
вместо teacher меняем на имя Вашего пользователя
перезагрузить
На компьютерах учеников
для нормальной работы нужно устанавливать сначала серверную часть (на компьютере учителя), перегрузить и потом устанавливать клиентскую на компьютеры учеников при запущенной серверной части Меню - Интернет - EPOPTES
В терминале вводим
sudo pluma /etc/hosts
в открывшемся редакторе добавляем строчку, выделено жирным
127.0.0.1 localhost
127.0.1.1 student
192.168.1.2 SERVER
где прописываете Ваш IP адрес компьютера учителя, закрываем с сохранением.
Дальнейшие действия производим в терминале
apt-get install epoptes-client
sudo pluma /usr/sbin/epoptes-client
почти в самом конце находим строки которые отображены ниже и, то что почеркнуто - комментируем #, в нашем случае это уже сделано, а то что выделено жирным - добавляем.
=== modified file 'epoptes-client/epoptes-client'
--- epoptes-client/epoptes-client 2012-09-27 13:34:27 +0000
+++ epoptes-client/epoptes-client 2013-03-13 11:58:25 +0000
@@ -228,9 +228,21 @@
# Connect to the server, or keep retrying until the server gets online
# (for standalone workstations booted before the server).
if [ -s /etc/epoptes/server.crt ] || [ "$cert_param" = "verify=0" ]; then
# exec socat openssl-connect:$SERVER:$PORT,$cert_param,interval=60,forever EXEC:"$cmdline"
if [ "$TYPE" = "standalone" ]; then
while socat openssl-connect:$SERVER:$PORT,$cert_param,interval=60,forever EXEC:"$cmdline"; do
log_begin_msg "Connection lost. Epoptes-client reconnecting to $SERVER:$PORT..."
done
else
exec socat openssl-connect:$SERVER:$PORT,$cert_param,interval=60,forever EXEC:"$cmdline"
fi
elif [ -f /etc/epoptes/server.crt ]; then
# exec socat tcp:$SERVER:$PORT,interval=60,forever EXEC:"$cmdline",nofork
if [ "$TYPE" = "standalone" ]; then
while socat tcp:$SERVER:$PORT,interval=60,forever EXEC:"$cmdline",nofork; do
log_begin_msg "Connection lost. Epoptes-client reconnecting to $SERVER:$PORT..."
done
else
exec socat tcp:$SERVER:$PORT,interval=60,forever EXEC:"$cmdline",nofork
fi
else
die "
The epoptes certificate file, /etc/epoptes/server.crt, doesn't exist.
Закрываем с сохранением.
(источник: https://code.launchpad.net/~oiteam/epoptes/auto-reconnect (ОГРОМНЕЙШЕЕ СПАСИБО ТОВАРИЩУ))
Не знаю почему, но не сохраняются отступы, copy - paste можно взять отсюда http://forum.ubuntu.ru/index.php?topic=206483.msg1664979#msg1664979
Теперь компьютеры клиентов будут опрашивать соединение с сервером каждые 60 секунд и совершенно неважно, учитель перегрузил свою машину после сбоя или загрузился после ученических ПК. (у себя я установил интервал на 30 сек., меньше не нужно, будет сильно грузить сеть)
Далее в терминале запускаем
sudo epoptes-client -c
Перегружаем
в терминале
sudo apt-get install epoptes epoptes-client
(или через Synaptic, epoptes-client нужно устанавливать потому, что он тянетнебольшую кучку всего необходимого для корректной работы программы на компьютере учителя)
далее добавляем пользователя в группу epoptes
sudo adduser teacher epoptes
вместо teacher меняем на имя Вашего пользователя
перезагрузить
На компьютерах учеников
для нормальной работы нужно устанавливать сначала серверную часть (на компьютере учителя), перегрузить и потом устанавливать клиентскую на компьютеры учеников при запущенной серверной части Меню - Интернет - EPOPTES
В терминале вводим
sudo pluma /etc/hosts
в открывшемся редакторе добавляем строчку, выделено жирным
127.0.0.1 localhost
127.0.1.1 student
192.168.1.2 SERVER
где прописываете Ваш IP адрес компьютера учителя, закрываем с сохранением.
Дальнейшие действия производим в терминале
apt-get install epoptes-client
sudo pluma /usr/sbin/epoptes-client
почти в самом конце находим строки которые отображены ниже и, то что почеркнуто - комментируем #, в нашем случае это уже сделано, а то что выделено жирным - добавляем.
=== modified file 'epoptes-client/epoptes-client'
--- epoptes-client/epoptes-client 2012-09-27 13:34:27 +0000
+++ epoptes-client/epoptes-client 2013-03-13 11:58:25 +0000
@@ -228,9 +228,21 @@
# Connect to the server, or keep retrying until the server gets online
# (for standalone workstations booted before the server).
if [ -s /etc/epoptes/server.crt ] || [ "$cert_param" = "verify=0" ]; then
# exec socat openssl-connect:$SERVER:$PORT,$cert_param,interval=60,forever EXEC:"$cmdline"
if [ "$TYPE" = "standalone" ]; then
while socat openssl-connect:$SERVER:$PORT,$cert_param,interval=60,forever EXEC:"$cmdline"; do
log_begin_msg "Connection lost. Epoptes-client reconnecting to $SERVER:$PORT..."
done
else
exec socat openssl-connect:$SERVER:$PORT,$cert_param,interval=60,forever EXEC:"$cmdline"
fi
elif [ -f /etc/epoptes/server.crt ]; then
# exec socat tcp:$SERVER:$PORT,interval=60,forever EXEC:"$cmdline",nofork
if [ "$TYPE" = "standalone" ]; then
while socat tcp:$SERVER:$PORT,interval=60,forever EXEC:"$cmdline",nofork; do
log_begin_msg "Connection lost. Epoptes-client reconnecting to $SERVER:$PORT..."
done
else
exec socat tcp:$SERVER:$PORT,interval=60,forever EXEC:"$cmdline",nofork
fi
else
die "
The epoptes certificate file, /etc/epoptes/server.crt, doesn't exist.
Закрываем с сохранением.
(источник: https://code.launchpad.net/~oiteam/epoptes/auto-reconnect (ОГРОМНЕЙШЕЕ СПАСИБО ТОВАРИЩУ))
Не знаю почему, но не сохраняются отступы, copy - paste можно взять отсюда http://forum.ubuntu.ru/index.php?topic=206483.msg1664979#msg1664979
Теперь компьютеры клиентов будут опрашивать соединение с сервером каждые 60 секунд и совершенно неважно, учитель перегрузил свою машину после сбоя или загрузился после ученических ПК. (у себя я установил интервал на 30 сек., меньше не нужно, будет сильно грузить сеть)
Далее в терминале запускаем
sudo epoptes-client -c
Перегружаем
Спойлер
Ошибка, не хочет коннектится и все тут. На клиенте запускаем в терминале:
epoptes-client -c
вывод:
3077654728:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:177:
epoptes-client ERROR: Failed to fetch certificate from server:789
вылечилось командой на сервере (источник: http://www.epoptes.org/installation )
sudo openssl req -batch -x509 -nodes -newkey rsa:1024 -days 1826 -keyout /etc/epoptes/server.key -out /etc/epoptes/server.crt
epoptes-client -c
вывод:
3077654728:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:177:
epoptes-client ERROR: Failed to fetch certificate from server:789
вылечилось командой на сервере (источник: http://www.epoptes.org/installation )
sudo openssl req -batch -x509 -nodes -newkey rsa:1024 -days 1826 -keyout /etc/epoptes/server.key -out /etc/epoptes/server.crt