Como negar um acesso de usuário específico a um aplicativo?

0

Para o propósito desta questão, vamos tentar negar ao usuário n a capacidade de jogar The Battle for Wesnoth (ainda permitindo que os usuários m e p o façam). / p>

Uma maneira óbvia de tentar fazer isso é definir permissões de arquivos relevantes ( /usr/games/wesnoth* e o diretório /usr/share/games/wesnoth ) para que o usuário n não possa executá-las nem lê-las, enquanto outros usuários podem.

A partir de agora, as permissões desses arquivos parecem estar definidas da seguinte forma:

$ ls -l /usr/games/wesnoth-1.12
-rwxr-xr-x 1 root root 18325576 May 22  2016 /usr/games/wesnoth-1.12

Bem, eu suponho que mudar a propriedade do usuário root para outra pessoa não seria uma boa ideia, então parece que eu vou ter que mexer com a propriedade do grupo ...

Eu tenho basicamente duas ideias:

"Lista negra" : forneça ao grupo de arquivos do jogo noplay e proíba qualquer pessoa com o grupo noplay de usá-los:

sudo addgroup noplay
sudo adduser n noplay
sudo chown :noplay /usr/games/wesnoth* /usr/share/games/wesnoth
sudo chmod g-rx /usr/games/wesnoth* /usr/share/games/wesnoth

"Whitelisting" : forneça ao grupo de arquivos do jogo play e proíba que outras pessoas usem o grupo:

sudo addgroup play
sudo adduser m play
sudo adduser p play
sudo chown :play /usr/games/wesnoth* /usr/share/games/wesnoth
sudo chmod o-rx /usr/games/wesnoth* /urs/share/games/wesnoth

Algum dos itens acima é uma boa ideia? A alteração da propriedade do grupo de arquivos de root para qualquer outra coisa tornará as coisas estranhas no futuro? E se o jogo for atualizado pelo gerenciador de pacotes - ele falhará devido a permissões parafusadas ou redefinirá as permissões de volta ao original, permitindo que todos os usuários joguem o jogo?

Se isso importa, é o Linux Mint aqui.

    
por gaazkam 05.01.2017 / 14:56

1 resposta

1

O Linux Mint, sendo baseado no Debian, provavelmente tem as sobreposições de estatísticas característica. dpkg-statoverride permite que você configure o gerenciador de pacotes para ajustar as permissões do sistema de arquivos quando um pacote cria arquivos com um determinado caminho. Por exemplo, você pode configurá-lo para definir permissões em / usr / share / games / wesnoth . O benefício de usar dpkg-statoverride sobre a configuração manual das permissões é que o gerenciador de pacotes manterá a política quando você atualizar ou reinstalar o pacote. Você pode ler mais sobre permissões de pacotes aqui , na seção 10.9 .

Se você lista negra ou branca é com você; escolha o que você predizer que melhor corresponda ao seu caso de uso. Mas, em suma, assumindo a lista de permissões, você pode fazer algo assim:

dpkg-statoverride --add m play [mode] /usr/share/games/wesnoth

A parte complicada é que você precisará usar a representação octal para o modo. Portanto, você não pode usar a sintaxe o-rx mais amigável.

Em seguida, reinstale o aplicativo para que as permissões sejam aplicadas.

    
por 05.01.2017 / 15:34