Restringir o acesso de uma conta no linux?

0

Eu criei uma conta de serviço na minha máquina Redhat. O objetivo da conta é executar o script bash que eu criei.

O script básico basicamente verifica as propriedades do sistema como cpuinfo, ifconfig, status da rede, portas, processos, permissões de arquivos e status do dispositivo, etc.

Agora, como faço minha conta de serviço executar somente o script que eu criei, além de que essa conta não deve fazer nada, mesmo que alguém faça login no meu servidor com as credenciais da conta de serviço, elas não devem poder fazer isso? faça até os comandos básicos como ls, cp, mv, date etc. exceto a execução do script.

    
por vinu 27.04.2017 / 12:55

1 resposta

1

com base no assunto de como restringir o acesso de uma conta no linux ,

você criaria essa conta, bem como um novo grupo para ela, em que o nome do grupo poderia ser o mesmo que o nome da conta, por exemplo. O resultado seria que apenas essa conta de usuário estaria nesse novo grupo e seria completamente exclusiva, onde nada no sistema tem permissões de proprietário ou grupo relacionadas a esse novo nome de conta de serviço e grupo de contas de serviço. Em seguida, defina seu script bash como pertencente a essa conta de serviço e ao nome do grupo de serviços. Além disso, defina o shell de login para essa conta como /bin/false ou /bin/nologin .

Qual é a diferença entre / sbin / nologin e / bin / false

No entanto, lembre-se de que você acabou de criar uma nova conta com o único objetivo de criar um script VOCÊ criado. Do ponto de vista da segurança, você acabou de dar um passo extra que é de pouco valor, e agora qualquer um que não veja você, que vê essa nova conta de serviço funcionando sem saber, vai coçar a cabeça e se perguntar o que diabos é isso.

A melhor maneira é que ele é seu script, mantenha-o de sua propriedade - você é um usuário válido e todos reconhecerão sua conta quando vinculado a algum processo em execução - e use o setuid bit no seu script para dar a ele as permissões para executar as tarefas, pois a maioria do que você mencionou para verificar as propriedades do sistema requer privilégios de root

Eu mencionei tirar vantagem do SETUID e estava incorreto porque você está usando um script de shell , por razões que podem ser explicadas aqui: Permitir o setuid em scripts de shell

No entanto, se você escrever e compilar um programa para fazer as coisas que você precisa, cujo executável seria de sua propriedade, então você pode aproveitar o SETUID nesse executável:

Usando o bit setuid corretamente

    
por 27.04.2017 / 17:16