A API do namespace de montagem pode efetivamente ser redundante? Que obstáculos haveria?

0
  1. Você ainda pode acessar arquivos e diretórios em um namespace de montagem diferente, se tiver uma referência a eles. No entanto, atualmente você não pode manipular (ou mesmo listar) as montagens de um namespace de montagem, se não for o namespace em que você está executando.
  2. Montagens desmontadas ( umount -l ) são consideradas sem espaço de nomes de montagem e, portanto, você não tem permissão para manipulá-las (ou listar submontagens).

A limitação no ponto 1 (ou ponto 2) é essencial para a API de namespace, por exemplo, para segurança? É invocado pelo software existente?

Se não, seria difícil remover a limitação no ponto 2 (e no ponto 1) do código Linux? Ou seja, quais seriam os principais obstáculos para isso?

Motivação: se você pudesse criar árvores de montagem desanexadas, você poderia chroot nelas e acho que os namespaces de montagem seriam redundantes. Embora eles ainda forneçam alguma conveniência / uniformidade com outros tipos de namespace do Linux.

    
por sourcejedi 07.08.2018 / 13:31

1 resposta

0

If you could build a detached mount tree, you could chroot into it, and I think mount namespaces would be mostly redundant. Although they would still provide some convenience/uniformity with other types of Linux namespace.

Acho que há (pelo menos) um ponto importante que perdi.

Um dos recursos dos namespaces é que eles estão associados a um namespace de usuário. Um namespace de usuário isola os recursos de "superusuário", como CAP_SYS_ADMIN e CAP_NET_RAW. Por exemplo. CAP_NET_RAW pode permitir o acesso aos pacotes de rede brutos em dispositivos de rede - se eles forem de propriedade de um namespace de rede, que pertence aos seus usuários.

CAP_SYS_ADMIN está permitindo que você manipule o namespace de montagem que pertence aos seus usuários. O limite atual pode ser mais apertado do que estritamente precisa ser, mas você precisa de algum limite. Vincular árvores de montagem a um namespace é necessário para que os namespaces de usuários possam isolar CAP_MOUNT.

Eu acho que não há muito sentido em implementar alguma alternativa para montar namespaces, o que não funcionaria tão bem com namespaces de usuário.

    
por 07.08.2018 / 13:31