Qual especificação do sudoer permite que os usuários montem compartilhamentos cifs?

4

Estou tentando criar uma linha em / etc / sudoers que permita que membros do grupo "usuários" montem compartilhamentos cifs em qualquer lugar dentro de seu próprio diretório pessoal. Na minha primeira tentativa, tentei:

%users ALL=/bin/mount -t cifs /home, /bin/umount /home

... que reconhecidamente não os restringe ao seu próprio diretório. Como usuário quando eu tento o comando:

sudo mount -t cifs ~/mount //hostname/sharename -o username=myuserid,domain=mydomain

... Eu recebo a senha e recebo o erro:

Sorry, user myuserid is not allowed to execute '...command...' as root on servername.

Existe alguma maneira de coagir sudoers para especificar o que eu quero?

    
por scott8035 14.01.2011 / 19:12

5 respostas

2

Eu descobri como fazer isso, menos a restrição que você tem em seu próprio diretório:

%users localhost, hostname = NOPASSWD: /bin/mount -t cifs //*/* /home/* -o username=*, /bin/umount /home/*

Alguém tem uma ideia de como restringir um usuário ao diretório home do hiw?

    
por 14.01.2011 / 22:17
1

Talvez seja melhor dar aos usuários a capacidade de usar o sistema de arquivos FUSE para montar seus compartilhamentos cifs.

    
por 14.01.2011 / 22:24
1

Vale a pena notar que algumas versões recentes do mount.cifs falham a menos que o ponto de montagem esteja em / etc / fstab, mesmo se eles estiverem instalados setuid, então eu esperaria que sua abordagem sudo falhasse com essas versões.

link

link

Como alternativa, você pode tentar um destes:

SMBNetFS

FuseSMB

    
por 15.01.2011 / 09:43
0

Não sei ao certo por que sua exigência deve permitir que os usuários montem os dispositivos em qualquer lugar de seu diretório pessoal. Segurança para manter o dispositivo privado para eles, suponho?

De qualquer forma, se você pode manipular pontos de montagem estáticos públicos, pode adicionar entradas ao / etc / fstab para os compartilhamentos cifs e adicionar o atributo "users" para permitir que os usuários os montem / desmontem.

A linha seria algo como isto:

//host/share /mount/point cifs users,rw,username=xxx,password=xxx 0 0

Veja o link

Sei que isso não resolve o problema exato que você apresentou, mas talvez isso lhe dê algumas ideias para um compromisso.

    
por 14.01.2011 / 19:53
0

Eu não posso deixar de pensar em pam_mount resolver metade do quebra-cabeça já dando aos usuários a capacidade de montar esses volumes em rede no início de uma sessão.

    
por 14.01.2011 / 22:44