Como imperdir usuário de acessar o Terminal?

Bom dia pessoal , me chamo juliano e estou precisando de uma ajudar trabalho em um laboratório de informatica em uma instituição educacional e aqui utilizam linux mint 20.3. O que ocorre que estou tentando a dias bloquear o usuário aluno para não fazer nenhuma mudança na maquina através do terminal alguém pode me ajudar. Gostaria que esse usuário não acessasse o terminal por nada apenas esse usuário os demais poderia acessar normalmente.

1 curtida

Opa, o ideal seria criar um outro tópico só com a sua dúvida para ficar mais organizado aqui no fórum e podermos te ajudar.

Reforço a sugestão de criar 1 tópico específico.

Vc passou a senha de root a esse usuário?

1 curtida

@thespation ou @eddiecsilva, vigilantes da ordem nesta sala de bate-papo do UOL (não, pera…), podem organizar esta bagunça?

Quanto a limitar o uso de terminal, não sei se é possível e/ou eficiente, já que pode até limitar o acesso ao emulador de terminal, mas acho que ao TTY não. Contudo, se a conta não tem privilégios de adm, sem a senha não terá como rodar comandos sudo e fazer algum estrago mais sério

2 curtidas

Dá pra limitar se deixar o bash como false, no diretório responsável pelo console desse usuário, ou criar um usuário com "sudo adduser aluno01 --shell=/bin/false" (ou usar o gerenciador de usuários do Mint) em tese, deve ser o suficiente pra bloquear o acesso ao terminal, ou simplesmente não dar a senha de root para os alunos haha

2 curtidas

Sobre limitar usuários comuns de realizar login diretamente ao TTY, você pode adicionar em  /etc/security/access.conf   :

-:ALL EXCEPT root

*Isso limitaria à somente ao root realizar login.


Agora sobre impedir que um usuário normal não altere configurações, você pode alterar os atributos, como por exemplo impedir que o mesmo altere algo presente no diretório  ~/.config   (este diretório é o responsavel por armazenar as configurações do usuário) basta alterar como root ou usuário administrador, com:

sudo chattr +i /home/<USUARIO>/.config

Se quiser evitar o uso de algum emulador de terminal à usuários não autorizados, você pode criar um grupo e então alterar o proprietário e o grupo à qual poderá executar este terminal. Ex.:

  1. Criar Grupo
sudo groupadd <NOME-DO-GRUPO>
  1. Alterar donos e grupos deste emulador de terminal
sudo chmod root:<NOME-DO-GRUPO> $(which <EMULADOR-TERMINAL>)
  1. Permitir à execução para o proprietário e o grupo. Negar para outros
sudo chmod 750 $(which <EMULADOR-TERMINAL>)

*Obs.: Existem outras abordagens para isso.

3 curtidas

@julianoamaral1 fale mais sobre essa instituição.

1 curtida

Sinceramente eu não acho que seja essa a melhor abordagem, qualquer solução que a gente der, um Actions simples no GitHub já basta pra burlar ou mesmo um Shell Script pode fazer isso em cenários simples, eu sugiro algo mais simples:

  1. Crie o usuário (certificando que ele não está no grupo sudo)

  2. Defina a /home dele para /dev/shm

  3. Crie um script que rode ao fazer login que apague o conteúdo de /dev/shm

O /dev/shm é uma partição na RAM se seu /etc/skel não for muito gordo isso funciona como uma conta convidado personalizada, no máximo nosso amigo troll conseguira persistir as modificações de um login pro outro, reiniciou já era

3 curtidas

Verdade, acho que pro caso do nosso amigo, só se fosse uma distro educacional que tivesse essas limitações por padrão de projeto.

Fora isso, só dá pra por esses paliativos.