/ permissões de / etc / crontab

5

O arquivo /etc/crontab tem as permissões:

-rw-r--r--

Eu entendo que esse arquivo é para o sistema cron jobs e outros usuários não devem ter permissão para modificá-lo. As permissões atuais permitem que todos os usuários acessem o arquivo, permitindo que visualizem o conteúdo.

É necessário que todos os usuários possam ler /etc/crontab ? Eu acredito que todos os usuários não devem conhecer alguns comandos administrativos, então não seria melhor mudar as permissões para -rw-r----- ?

Eu usei a string de permissão do CentOS e não testei em outras distros.

    
por Sam 18.05.2012 / 19:49

2 respostas

5

Isso seria segurança pela obscuridade. Não há benefício real ao impedir que usuários normais leiam /etc/crontab . Mesmo que um usuário não possa ler o arquivo, ainda é possível reunir o comando executado apenas capturando regularmente a lista de processos com ps ou lendo /proc .

Não deve haver nenhuma necessidade de ocultar alguns comandos administrativos, exceto quando você coloca credenciais na linha de comando. Mas você nunca deve colocar credenciais na linha de comando, de qualquer forma, como um usuário normal pode ler a linha de comando, então nenhum benefício real.

Existe uma opção de montagem / patch de kernel para procfs prevenindo o vazamento de PID, assim como alguns módulos de kernel como grsec que evitam vazamentos de PID.

O benefício de ter o sistema de arquivos legível é que você pode ter uma aparência / depuração do sistema como um usuário não-root. Você não precisa alternar para o usuário root apenas para verificar os crontabs do sistema.

    
por 18.05.2012 / 19:56
2

/etc/crontab é o principal - crontab - resposible para acionar o cron.daily, semanalmente, ...

Portanto, se um usuário quiser saber quando diariamente / semanalmente e assim por diante estão sendo executados, ele / ela deve poder verificar isso (tempo fixo no CentOS, tempo relativo da inicialização do sistema no SLES).

Mas os trabalhos raiz reais devem ser colocados em /etc/cron.d/specialtime_user , /etc/cron.daily/* e assim por diante, ou serão colocados em /var/spool/cron/root . O primeiro é às vezes um pouco estranho - em relação aos direitos de acesso (eu estudei através dele no SLES, onde tentei definir direitos mais restritivos em um arquivo lá) - o último deve ser legível apenas pelo root.

    
por 18.05.2012 / 21:59