Restringir funcionalidades para conta aluno.

13. Re: Restringir funcionalidades para conta aluno.

Marcelo Caldeira
mccaldeira

(usa Linux Mint)

Enviado em 15/04/2023 - 22:49h


Minions escreveu:

mccaldeira escreveu:

Olá, trabalho numa escola que possuí um laboratório com 17 computadores com o LE5 (Linux Educacional 5) e outros novos 17 computadores com Linux Mint 19 que acabaram de serem instalados via SEEMG (Secretaria de Educação do Estado de MG).
Vamos ao problema: criei uma conta Aluno, mas preciso que ela se comporte como acontece no LE5, isto é, toda vez que o aluno loga a conta é "resetada", inclusive os navegadores.
@alexabolada ou alguém aí do Fórum, pode me ajudar?


TESTE EM UMA MAQUINA SEPARADA

A conta do usuário comum deve se aluno




No cron coloca:


# crontab -e

@reboot root rsync -a --chown aluno:aluno --delete /.backup/ /home/aluno 




Pode usar o cron ou a pasta ~/.config/autostart/ para copiar o conteúdo de /.backup/ para /home/aluno

rsync -a /.backup/ /home/aluno



Cria o arquivo cria-snapshot.sh em /usr/local/bin/


#!/bin/bash

which rsync || exit 1
which crontab || exit 2

if [ $UID -ne 0 ]; then echo "Execute este script como Root ou via sudo."; exit 3; fi

sudo rm -rf /.backup
sudo mkdir -p /.backup

who | grep aluno

if [ $? == 0 ]; then
echo "Usuário \"aluno\" logado."
echo "Faça logoff daquele usuário para criar novo snapshot."

else
rsync -a --chown nobody:nogroup /home/aluno/ /.backup/
fi

exit 0





Programas para congelar a conta do usuário:

* deeplock
* Dafturn Ofris => https://sourceforge.net/projects/ofrises/


Seria bom vc usar o Epoptes para complementa essa tarefa.


Assim que eu puder eu vou testar isso. Por hora agradeço muito a contribuição de todos.
ps: a @alexabolada endoidou depois que eu citei o nome do ChatGpt.


  


14. Re: Restringir funcionalidades para conta aluno.

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 15/04/2023 - 22:49h

Neste caso podemos sugerir a utilização dos programas deeplock e Ofrisis, além da ferramenta Epoptes para complementar a tarefa. Estes programas permitem congelar a conta do usuário, resetando os navegadores e permitindo guardar o conteúdo em um local seguro, como uma pasta no diretório /.backup. Além disso, pode-se criar um script, cria-snapshot.sh, para executar o procedimento, como mostrado na mensagem.


15. Re: Restringir funcionalidades para conta aluno.

Marcelo Caldeira
mccaldeira

(usa Linux Mint)

Enviado em 16/04/2023 - 17:35h

Minions escreveu:

mccaldeira escreveu:

Olá, trabalho numa escola que possuí um laboratório com 17 computadores com o LE5 (Linux Educacional 5) e outros novos 17 computadores com Linux Mint 19 que acabaram de serem instalados via SEEMG (Secretaria de Educação do Estado de MG).
Vamos ao problema: criei uma conta Aluno, mas preciso que ela se comporte como acontece no LE5, isto é, toda vez que o aluno loga a conta é "resetada", inclusive os navegadores.
@alexabolada ou alguém aí do Fórum, pode me ajudar?


TESTE EM UMA MAQUINA SEPARADA

A conta do usuário comum deve se aluno


No cron coloca:


# crontab -e

@reboot root rsync -a --chown aluno:aluno --delete /.backup/ /home/aluno 




Pode usar o cron ou a pasta ~/.config/autostart/ para copiar o conteúdo de /.backup/ para /home/aluno

rsync -a /.backup/ /home/aluno



Cria o arquivo cria-snapshot.sh em /usr/local/bin/


#!/bin/bash

which rsync || exit 1
which crontab || exit 2

if [ $UID -ne 0 ]; then echo "Execute este script como Root ou via sudo."; exit 3; fi

sudo rm -rf /.backup
sudo mkdir -p /.backup

who | grep aluno

if [ $? == 0 ]; then
echo "Usuário \"aluno\" logado."
echo "Faça logoff daquele usuário para criar novo snapshot."

else
rsync -a --chown nobody:nogroup /home/aluno/ /.backup/
fi

exit 0





Programas para congelar a conta do usuário:

* deeplock
* Dafturn Ofris => https://sourceforge.net/projects/ofrises/




Seria bom vc usar o Epoptes para complementa essa tarefa.

Infelizmente o DeepLock não baixa e vi relatos que não estava funcionando no Mint.



16. Re: Restringir funcionalidades para conta aluno.

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 16/04/2023 - 17:35h

Uma maneira rápida e eficaz de criar reset automático para as contas de usuários no Linux é usar o DeepLock. O DeepLock é um programa que foi criado para gerenciar contas no Linux travando e destravando todas as contas de forma automática. Você pode personalizar como a conta se comporta e como ela é resetada ao entrar, todos os dias, horário específico, etc. Além disso, você também pode usar o OfRise ou o Dafturn OfRise para congelar a conta do usuário. Ambos são programas para monitorar antes de congelar a conta do usuário. Para isso, basta criar um arquivo chamado cria-snapshot.sh em /usr/local/bin usando códigos fornecidos para executar o rsync -a para copiar todos os dados da pasta ~/.config/autostart/ para a pasta home. Uma vez que isso está feito, Você pode usar um gerenciador de tarefas, como cron para executar essa tarefa para resetar a conta de um usuário toda vez que ele fizer login. Além disso, você pode assistir a este vídeo no YouTube para conhecer mais sobre como recriar snapshot em sistemas Linux: https://www.youtube.com/watch?v=sSRpkaMlflM&feature=youtu.be. Por fim, a ferramenta Epoptes pode ser útil para complementar essa tarefa de resetar contas de forma automática.


17. Re: Restringir funcionalidades para conta aluno.

Marcelo Caldeira
mccaldeira

(usa Linux Mint)

Enviado em 16/04/2023 - 17:42h

Descobri que existem várias maneiras de fazer o que eu quero, ou então que tem um monte de jeito de não dar certo. Não testei todas. A alternativa do DeepLock me pareceu ser interessante por eu ser leigo, mas não consegui sequer fazer o download. Vou continuar testando, mas antes queria compartilhar essa daqui que o chat openai.com me passou:

https://chat.openai.com/

Certamente! Aqui está um exemplo de script que você pode usar para atender aos requisitos
mencionados para a sessão do aluno no Linux Mint 19:

Etapa 1: criar um backup
Antes de fazer qualquer alteração no sistema, é sempre uma boa prática criar um backup dos dados
importantes para garantir que você possa restaurá-los em caso de problemas.

Etapa 2: criar uma nova conta de usuário
Crie uma nova conta de usuário para a sessão do aluno. Você pode usar o seguinte comando para
criar um novo usuário chamado "aluno":
sudo adduser aluno
Isso solicitará que você defina uma senha para a conta do aluno.

Etapa 3: configurar as permissões do usuário
Defina as permissões necessárias para a conta do aluno para restringir as alterações na área de
trabalho e apagar os dados salvos em cada login. Crie um arquivo chamado "student.sh" com o
seguinte conteúdo:

#!/bin/bash
# Defina a sessão do aluno para sempre começar com uma área de trabalho limpa
cp -R /etc/skel/ /home/aluno/
chown -R aluno:aluno /home/aluno/
chmod -R 700 /home/aluno/

# Defina a sessão do aluno para apagar os dados salvos em cada login
rm -rf /home/aluno/Documentos/*
rm -rf /home/aluno/Downloads/*
rm -rf /home/aluno/Imagens/*rm -rf /casa/aluno/Música/*
rm -rf /home/aluno/vídeos/*
rm -rf /home/student/Desktop/*

Salve o arquivo e dê a ele permissões executáveis com o seguinte comando:
sudo chmod +x aluno.sh

Etapa 4: iniciar automaticamente o script
Configure o script "aluno.sh" para ser executado automaticamente em cada login na sessão do
aluno. Crie um arquivo chamado "aluno.desktop" no diretório "/etc/xdg/autostart/" com o seguinte
conteúdo:
[Desktop Entry]
Type=Application
Name=aluno Session
Exec=/path/to/aluno.sh
Terminal=false

Substitua "/path/to/aluno.sh" pelo caminho real para o script "aluno.sh" que você criou na Etapa 3.

Etapa 5: implantar o script em outros computadores

Para implantar o script em outros computadores, você pode usar vários métodos, como copiar o
script por meio de uma unidade USB ou usar um método de transferência de arquivo de rede, como
scp ou rsync. Depois que o script for copiado para os outros computadores, certifique-se de definir
as permissões de arquivo corretas usando "chmod +x aluno.sh" e configure o arquivo de
inicialização automática "aluno.desktop" com o caminho de arquivo correto.

É importante testar completamente o script em um ambiente controlado antes de implementá-lo em
todas as máquinas em um ambiente de produção.

Observação: certifique-se de ter as permissões necessárias e fazer backup de dados importantes
antes de fazer qualquer alteração no sistema. O script acima é fornecido como exemplo e pode
precisar ser ajustado com base em seus requisitos específicos e na configuração do sistema.
* Traduzido pelo Google Tradutor com algumas modificações.



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts