Método apropriado para desabilitar o polkit.service no CentOS 7

3

Por quê?

Meus serviços são iniciados por meio de arquivos unitários apropriados ou scripts de inicialização. Não tenho necessidade de usuários comuns fazerem nada de especial em meus servidores além de su . Eu estou procurando especificamente uma maneira de desligar completamente o polkit sem que ele inicie sozinho quando outros serviços forem reiniciados.

Eu prevejo um problema explicando isso aos auditores em nosso ambiente PCI também. Temos que descrever o propósito de cada serviço. Nós não temos um caso de uso legítimo para o polkit em um ambiente PCI.

Nota adicional: Eu não instalei o polkit. Estes servidores têm uma instalação muito mínima em torno de 670MB em / Foi uma atualização do systemd que parece ter instalado o polkit e a especificação aparentemente tem dependências para todos os serviços gerenciados systemd. Uma vez instalado, eu tenho que reconstruir a máquina para removê-lo, assim como tentar remover nss depois de instalá-lo. Minha preocupação é que, se eu forçar o unstall, pode ter saído arquivos que desarmarão o systemd que assume que está lá.

O que tentei:

Crie /etc/polkit-1/rules.d/99-deny-all.rules com

polkit.addRule(function(action, subject) {
    return polkit.Result.YES;
});

Então

systemctl daemon-reload && systemctl daemon-reexec

Isto não faz nada, /usr/lib/polkit-1/polkitd --no-debug continua a iniciar quando outros serviços em systemd são reiniciados.

[Update] Como Alexander mencionou, a reinicialização do polkit irá aplicar as configurações para o polkit em si e isso é bom, mas estou procurando uma maneira de dizer ao polkit para não iniciar que não quebre outros serviços.

[update 2] Isso pode impedir que alguns serviços sejam reiniciados corretamente.

Mascare ou desative o serviço:

Isso faz com que outros serviços travem na inicialização e desligamento, esperando pelo polkit.

Edite o /usr/share/dbus-1/sstem-services/org.freedesktop.PolicyKit1.service com:

[snip]
Exec=/bin/false
[snip]

Então

systemctl daemon-reload && systemctl daemon-reexec

Isto não faz nada, /usr/lib/polkit-1/polkitd --no-debug continua a iniciar quando outros serviços em systemd são reiniciados.

Eu li as man pages algumas vezes. É provavelmente algo realmente simples que estou perdendo. Minha preferência seria por um método que persista após as atualizações do pacote do systemd.

O objetivo final que estou procurando é que o polkit.service não inicie quando outros daemons forem reiniciados, como unbound, bind, dhcp, etc.

    
por Aaron 01.07.2017 / 03:31

1 resposta

1

Depois de adicionar regras a /etc/polkit-1/rules.d/99-deny-all.rules , você deve reiniciar o serviço polkit em systemctl restart polkit . Depois disso, o systemctl executaria quaisquer solicitações de usuários não privilegiados.

    
por 01.07.2017 / 22:35