Сейчас чтобы пользователь мог монтировать использующие fuse файловые системы нужно, чтобы администратор 1. при помощи control(8) разрешил использование fusermount; 2. добавил этого пользователя в группу fuse (по умолчанию в неё вроде бы никто не входит). Второе необходимо, так как $ ls -l /dev/fuse crw-rw---- 1 root fuse 10, 229 Мар 25 09:58 /dev/fuse Раз группа fuse уже есть, предлагаю: - создать вариант установки constrol fusermount, в котором /usr/bin/fusermount получит права -rws--x---, владельца естественно root, и группу fuse - использовать этот вариант по умолчанию.
Режим добавил в 2.8.7-alt2 (который этот баг не closes): +new_fmode fuseonly 4710 root fuse +new_help fuseonly "Only \"fuse\" group members can execute $BINARY" По умолчанию его пока ставить не стал -- тогда и права на бинарь надо ставить в пакете с добавлением SUID root, чего бы не хотелось (но в чём суть просьбы). Прошу ldv@ и релиз-менеджеров подумать и отозваться. Мне предложенный вариант кажется достаточно разумным именно в силу того, что без группы fuse бинарник будет всё так же не опасен, а для её участников заработают сразу все звенья. В сизиф отправлен работающий у меня task #67780 (2.8.7-alt1), для проверки заброшен тестовый (и тоже проверенный) task #67781 с 2.8.7-alt2.
Мне эта фича интересна.
RM: ping (Радик, извини -- ещё тормозил-тормозил, что не всех RM добавил...)
Я тут поспрашивал окружающих, и оказалось: - ни один из опрошенных не догадался сам до control fusermout <whatever>, многие просто сказали "это не работает" - у всех, кто хоть раз успешно воспользовался sshfs или smbnetfs сделано control fusermount public. Последнее довольно печально, так как означает, что на практике жесткие ограничения по умолчанию приводят к менее безопасным настройкам на пользовательских системах. Поэтому и control fusermount fuseonly нужен, так как в этой ситуации бинарник fusermount будет не доступен хотя бы псевдопользователям вроде nobody или _nginx. В общем, ping. Как я понял, все ждут, что скажет ldv@ по поводу ещё одного suid-ного бинарника по умолчанию. ldv@, не молчите, пожалуйста. Если всё таки так сделать нельзя, прошу RM'ов рассмотреть возможность включения режима fuseonly при установке в дистрибутивах, ориентированных на личное и домашнее использование.
fuseonly по умолчанию при установке пакета выглядит вполне естественно.
Предполагаю по приезде втащить 2.8.7-alt3 в t6 и предлагаю -- в p6.
fuse-2.8.7-alt3 -> sisyphus: * Sat May 05 2012 Michael Shigorin <mike@altlinux> 2.8.7-alt3 - enabled "fuseonly" mode by default (closes: #27117) - tightened up /lib/udev/devices/{c,f}use permissions - use control macros in package scripts - enhanced descriptions a bit * Sun Mar 25 2012 Michael Shigorin <mike@altlinux> 2.8.7-alt2 - added "fuseonly" mode, thanks iv@ (see also #27117)
> fuse-2.8.7-alt3 -> sisyphus: Спасибо! Есть только вопрос. Поставил в чистый hasher fuse-2.8.7-alt3, захожу туда hsh-shell --rooter, и вижу: [root@localhost .in]# control fusermount unknown [root@localhost .in]# ls -l /usr/bin/fusermount -rws--x--- 1 root root 31304 May 5 20:40 /usr/bin/fusermount Это только у меня так, или это проблема hasher, или что-то с пакетом?
Sorry for the noise, на "настоящей" системе всё ставится правильно.
(In reply to comment #9) > на "настоящей" системе всё ставится правильно. Аналогично -- так и проверял.
Немного перестарался с /etc/udev/rules.d/60-fuse.rules и всплыло это уже после перезагрузки в виде 0600,root,root на /dev/fuse (несмотря на указание прав в рулесах). До того, как получится выписать более развесистый control file (и по-хорошему бы ему называться не fusermount, а просто fuse; но это вряд ли буду делать) -- отчасти ослабляю права из коробки в 2.8.7-alt4 (были world writeable, сделал root only, делаю group writeable).