Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: чтение чужих файлов: не стоит патчить
On 26.11.2011 13:53, Maxim Dounin wrote:
Как уже неоднократно говорено, в том числе в этой рассылке,
варианты приблизительно такие:
1. Использовать mount -o nosymfollow.
это сломает механизм атомарных обновлений сайта,
- даже симлинки IfOwnerMatch тоже не будут работать.
фактически нужна была опция nosymfollow_if_owner_not_match
2. Сделать и использовать соответствующий флаг для open() в
операционной системе (a la O_NOFOLLOW_ALL).
здесь тоже будет более интерен флаг O_NOFOLLOW_ANY_IF_OWNER_NOT_MATCH
- нет смысла запрещать пользователю ходить по симлинкам на свои же файлы
внутри сайтов и CMS симлинки могут использоваться, это же POSIX стандарт
возможно имеет смысл попробовать этот вариант добавить в обе системы?
или хотя бы только более простой вариант
openat(O_NOFOLLOW_IF_OWNER_NOT_MATCH)
3. Использовать цепочку из openat(O_NOFOLLOW).
Вариант (3), в принципе, на большинстве операционных систем сейчас
реализуем.
это будет аналог апачевской директивы Options -FollowSymLinks
что может добавить проблем, если сайт/CMS использует симлинки.
можно ли сделать в nginx корректно работающий в 100% случаев
аналог апачевской директивы "Options SymLinksIfOwnerMatch" ?
такой вариант имхо будет самым корректным для shared hostind`а.
или для этого необходима поддержка в ядре
флага openat(O_NOFOLLOW_IF_OWNER_NOT_MATCH) ?
--
Best regards,
Gena
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|