Como você controla a propriedade do arquivo de um soquete gerenciado pelo launchd

1

Estou trabalhando para escrever um daemon que converse com outros daemons no mesmo projeto sobre sockets UNIX. Por motivos de segurança, é fundamental que esses daemons falem entre si (e não possam, por exemplo, estar conectados a outros processos).

Eu estava planejando limitar esse acesso por meio da propriedade e dos modos de arquivo padrão do UNIX. Mas não consigo encontrar em nenhum lugar na documentação do launchd.plist como controlá-los!

Olhando para os serviços existentes, você pode especificar uma chave SockPathMode , que leva um modo decimal; ótimo. Mas como especifico o usuário e o grupo reais do soquete criado? Percebo que alguns dos soquetes gerenciados pelo launchd no meu sistema são de propriedade de root:daemon , alguns de root:wheel e alguns (por exemplo, ssh-agent), por stouset:wheel . E, no entanto, não posso, para minha vida, determinar como e onde essas propriedades são especificadas.

    
por Stephen Touset 29.06.2014 / 21:10

1 resposta

1

Aqui está a pergunta relacionada a esta: link Se um daemon for executado como um usuário dedicado, todos os descritores e soquetes de arquivos pertencerão a esse usuário. Em seguida, basta adicionar permissões de acesso restritivas a esses descritores.

    
por 30.06.2014 / 11:18