Existe um equivalente de código aberto para as políticas de restrição de software do Windows para Linux?

1

Para uma apresentação que estou fazendo, estou tentando descobrir se existe um serviço whitelisting de aplicativo de código aberto baseado em Linux para Linux, semelhante a s políticas de restrição de software no Windows desde 2002. Parece que existem algumas comerciais (por exemplo, o controle de aplicativos da McAfee), mas meu googling até agora não conseguiu exibir um código-fonte aberto equivalente.

Eu sei que você pode conseguir algo parecido com o SE Linux, especialmente agora que os redhat e centos vêm com políticas decentes para serviços populares. Mas parece que não há nada que possa dizer, "esses usuários podem executar esses programas identificados por esses hashes" .

Estou errado?

    
por simon 24.09.2013 / 10:33

1 resposta

3

Essa não é a abordagem que o mundo Linux adota, pois isso é muito difícil de ser mantido. Uma versão atualizada do appX com um hash diferente exigiria o ajuste das políticas, e se você tiver que oferecer suporte a várias versões para diferentes usuários, isso aumentará o número de proporções. Isso é particularmente complicado em qualquer sistema baseado em Unix, porque o sistema operacional depende muito de ser capaz de executar uma tonelada de pequenos utilitários, como os encontrados em / usr / bin - manter o controle de todos esses hashes simplesmente não vale a pena. A abordagem geral do Linux é proteger cada processo o suficiente para que ele não cause muito dano, mesmo que seja mal-intencionado - tanto por meio das proteções do kernel quanto por meio de ferramentas como o SELinux, AppArmour e gr_security.

No SELinux, a maioria dos softwares não genéricos instalados recebe seu próprio tipo de domínio, para que você possa escrever políticas de usuários para restringir quais domínios os usuários podem executar. Se você quiser um exemplo, aqui está uma política que permite que um usuário efetue login, execute as ferramentas de linha de comando mais genéricas (ls, find, etc) e execute um cliente de IRC. Mas, por exemplo, não é possível iniciar a interface gráfica, enviar e-mails nem fazer muitas outras coisas:

policy_module(ircuser, 1.0.0)
role ircuser_r;
irc_role(ircuser_r, ircuser_t)
userdom_restricted_user_template(ircuser)
gen_user(ircuser_u, user, ircuser_r, s0, s0)

Então você só precisa compilar, instalar e atribuir ao usuário que deseja restringir.

    
por 24.09.2013 / 16:14