A pergunta foi respondida em uma lista de discussão do linux ; Eu postei uma resposta traduzida aqui para completar.
Solução
A solução não é usar as opções default_permissions
e allow_other
(que eu não tentei nos meus experimentos originais).
Explicação
O problema parece ser bem simples. Quando você dá a opção default_permissions
no fusermount, então o controle de permissão do fusível da montagem do fusível é tratado pelo kernel e não pelo fusível . Isso significa que o uid / gid de REMOTE_USER não está mapeado para o LOCAL_USER (sshfs.c IDMAP_NONE). Funciona da mesma forma que um simples nfs fs sem mapeamento.
Portanto, faz sentido proibir o acesso, se os números uid / gid não corresponderem.
Se você tiver a opção allow_other
, então este diretório é gravável apenas pelo usuário local com o uid 699, se existir.
Do homem do fusível:
'default_permissions'
By default FUSE doesn't check file access permissions, the
filesystem is free to implement its access policy or leave it to
the underlying file access mechanism (e.g. in case of network
filesystems). This option enables permission checking, restricting
access based on file mode. It is usually useful together with the
'allow_other' mount option.
'allow_other'
This option overrides the security measure restricting file access
to the user mounting the filesystem. This option is by default only
allowed to root, but this restriction can be removed with a
(userspace) configuration option.