Как организовать управление группой ПК: различия между версиями

Материал из IT в школе
Перейти к навигацииПерейти к поиску
нет описания правки
Строка 1: Строка 1:




Строка 13: Строка 14:


Скачиваем, запускаем comp_kab_setup.py
Скачиваем, запускаем comp_kab_setup.py
Альтернатиыный вариант для MOS12<syntaxhighlight lang="bash">
#!/bin/bash
#настройка veyon запуск от root
# в каталоге root должен быть файл hosts.txt со списком имен компов c расширением local вида
# m648-2-119-1.local
#все компы должны быть в сети
#название кабинета
CAB=41
#пользователь с правами на sudo
USER=admin
#пароль пользователя с правами на sudo
USERPASS=""
config_teacher()
{
if [ ! -f ${HOME}/.ssh/id_ed25519.pub ]; then
ssh-keygen -f ${HOME}/.ssh/id_ed25519 -q -t ed25519 -N ""
fi
rm ${HOME}/myconfig.json
rm ${HOME}/teacher_public_key.pem
dnf -y install veyon sshpass
veyon-cli authkeys delete teacher/private;
veyon-cli authkeys delete teacher/public;
veyon-cli authkeys create teacher;
veyon-cli authkeys setaccessgroup teacher/private teacher;
veyon-cli authkeys export teacher/public ${HOME}/teacher_public_key.pem;
veyon-cli config set Authentication/Method 1
veyon-cli config set NetworkObjectDirectory/Plugin {14bacaaa-ebe5-449c-b881-5b382f952571}
veyon-cli networkobjects clear
veyon-cli networkobjects add location ${CAB};
for i in $(cat ${HOME}/hosts.txt);
do
ping -c 1 $i > /dev/null
MAC=`arp $i | grep -v dress  | awk '{print $3}'`
veyon-cli networkobjects add computer $i $i ${MAC} ${CAB};
done;
veyon-cli config export ${HOME}/myconfig.json;
veyon-cli service restart
}
config_student()
{
echo IP ${IP}
SSHKEY=`cat ${HOME}/.ssh/id_ed25519.pub`
ANS=`sshpass -p 1 ssh -l root ${IP} echo accessok`
if [ -z "${ANS}" ]; then
(sleep 1;echo "${USERPASS}";sleep 1; echo "echo \"${SSHKEY}\" >> ${HOME}/.ssh/authorized_keys " ; echo exit; sleep 1; echo exit) | sshpass -p ${USERPASS} ssh -tt -oStrictHostKeyChecking=no ${USER}@${IP} sudo su
fi
scp ${HOME}/teacher_public_key.pem root@${IP}:${HOME}/
scp ${HOME}/myconfig.json root@${IP}:${HOME}/
ssh -l root ${IP} dnf -y install veyon-core
ssh -l root ${IP} veyon-cli authkeys delete teacher/public;
ssh -l root ${IP} veyon-cli authkeys import teacher/public ${HOME}/teacher_public_key.pem
ssh -l root ${IP} veyon-cli config import ${HOME}/myconfig.json
ssh -l root ${IP} veyon-cli service restart
}
config_teacher
for i in $(cat ${HOME}/hosts.txt);
do
IP=${i}
config_student
done;
</syntaxhighlight>
=== Найти Linux ПК в сети ===
=== Найти Linux ПК в сети ===


Навигация