Автор Тема: CHMOD ?  (Прочитано 6866 раз)

0 Пользователей и 1 Гость просматривают эту тему.

  • Гость
CHMOD ?
« : 29 Июня 2002, 02:04:03 »
Люди добрые, мы сами не местные!

Объясните на пальцах, кто толком знает, что такое Владелец, Группа, Остальные. Если я управляю своим файлами на расстоянии, а не на локальном сервере, то я владелец или остальные. Я на Hypermart\'е выставил для перловского файла, где храню настройки, разрешение 0644 , т.е. для группы и всех остальных только чтение. Пишу туда другим перловским файлом из той же директории - пишет. Так ведь тогда любой может туда писать. Для кого же это тогда установлено "только чтение"? Или владелец тот,  когда местные файлы пытаются друг друга изменить, а скажем из другой директории - уже "остальные"? Что-то я запутался. Юниксы, помогите разобраться!

Может это для Hypermart\'а так сделано? Я на каком-то хостинге читал, что "можете устанавливать на все максимальное разрешение". Как же тогда с безопасностью?

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
CHMOD ?
« Ответ #1 : 29 Июня 2002, 10:19:43 »
Тема интересная :) . Я вот почитал кой чего и в голове полный бардак. Но из практики кое что понял. Кады ты приходишь на сайт (пусть даже и твой собственный) и броузером пытаешся запустить скрипт - ты "все остальное". Ежели для этого скрипта стоят "чмоды" "запускать разрешено всем" , то скрипт запустится. Если нет - отдыхай , с безопасностью у тебя все Ok. Правда ничего не работает, потому, что низя :).
Ну допустим, можно всем и скрипт запустился. Он теперь король :), но только локальный, в пределах своих владений - рядом и ниже по дереву вложенных каталогов . Т.е. он - типа "владелец" и может делать все, что разрешено владельцу. Поэтому у тебя и пишет скрипт в другой файл.
 Насчет "выше" , очевидно только до того каталога который закреплен за владельцем сайта.
Каталоги многих сайтов объединяются в группы (пользователей) . Свою группу можно узнать у администратора. Соответственно, если кто свои файлы разрешает писать группе, тот может от группы и получить запись в свой файл :)
Да простят меня профи этого дела, я собрал в одну кучу сайты и каталоги. Сайты здесь вторичны, наверно.
Если оторваться от сайтов и переключится на *никсы. Они , помнится, изначально придумывались для многопользовательской работы и безопасность ставилась во главу угла. Все пользователи разбиты на группы . Для файлов одной группы , пользователи из другой группы это те самые "все остальные". Внутри одной группы пользователи имеют свое "место" . Каждый пользователь внутри своего места - "владелец". В принципе, он может поделиться файлами со своей группой, установив соответствующие права для "группы" на каждый свой файл (читать,писать,запускать). Так же он может поделиться файлами и с владельцами других групп , т.е. со "всеми остальными", установив соответствующие права на нужные файлы.  

Насчет "можете устанавливать на все максимальное разрешение". Думаю, что все же не стоит так делать, дураков и просто любопытных всегда хватало и хватать будет.

Примерно так. Сам не юниксоид, поэтому могу гдето и ошибиться, пусть меня поправят.
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
CHMOD ?
« Ответ #2 : 29 Июня 2002, 15:23:33 »
Значи так.
Под unix есть пользователи. Когда по FTP заходишь и вводишь login/pass тем самым сообщаешь кто ты.
Каждый из пользователей может входить одну или более групп (по умолчанию есть группа с одним пользователем в ней - тобой, но иногда делают группу www-users - для всех кто хостится)
У каждого файла есть принадлежность 1) к user-у 2) к группе
Все, кто не входя в 1) + 2) - other

Каждая запущенная unix программа принадлежит одному пользователю. Следовательно может читать файлы принадлежащие ему лично и группам, в которые он входит.
web-server = unix программа
Обычно она принадлежит системному пользователю nobody или www или www-data.

Следовательно для нее (а также всех скриптов perl/php ею порожденных) твои файлы являются чужими - оно other.
Но на некоторых хостах оно входит в группу www-users и уже не other а group.

Т/е ты своими скриптами можешь читать/писать и свои и чужие файлы на этом хостинге, это не хорошо и с этим брются
Например есть варианты, когда сам веб сервер от root зпужен (главный user ), а все порожденные процессы от имени тех пользователей, кому они принадлежат - т,е тогда никаких chmod-ов не надо.

И еще - если откроешь каталог для записив сем, то скрипт там создаст файлы принадлежащие _не тебе_. И ты не сможешь их редактировать - только копировать и стирать (или писать скрипт для их модификации или chmod-a)

unixoid
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

  • Гость
CHMOD ?
« Ответ #3 : 30 Июня 2002, 03:06:26 »
Oak, здуреть можно - ничего не понял.
Может кто на человеческий язык переведет это?

Оффлайн YA

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 597
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
CHMOD ?
« Ответ #4 : 30 Июня 2002, 11:57:35 »
Unregistered1
Издеваешься? Oak тебе все разжевал. Почитай что-нибудь по Unix, в сети полно доступных описаний.
Литературный перевод с русского и английского на Perl. Дорого!

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
CHMOD ?
« Ответ #5 : 30 Июня 2002, 13:37:32 »
Попробую попроще.
В ОС Unix (и иже с ним) существует такая вещь, как разграничение доступа. Это значит, что в Юниксе четко указано кто, что и с чем может сделать.
Начну с первого: кто. Каждый юниксовый пользователь имеет помимо своего логина и пароля (с этим, я думаю, ты уже сталкивался) персональный идентификатор (уникальное число). Помимо этого, пользователи могут объединяться в группы (скажем, работники одного отдела или, как отметил Oak, все пользователи хостящиеся на данном хостинге). Каждая группа также имеет свой уникальный идентификатор (число). И, наконец, все, кто не входит в данную группу и не является данным пользователем, образуют группу допуска other (или world).
Теперь второй пункт: что. Любой пользователь в ОС потенциально может сделать с тем или иным ресурсом (которые, кстати, в Unix\'e организованы как файлы - даже принтеры) три вещи: прочитать (read), изменить (write), запустить (execute). Кстати, последнее действие имеет смысл не для всех данных (скажем, для нескриптовых текстовых файлов оно параллельно).
И, наконец, третье: с чем. Каждый ресурс (скрипты, файлы данных, каталоги, принтеры и т.д. и т.п) содержит метку, которая говорит что и кто может с ним сделать. Эти метки разбиваются на три группы: для хозяина, для группы, для остальных.
Скажем, ты решил создать в своем домашнем каталоге архив mp3 музыки. Для этого ты используешь какие-то утилиты для кодирования, сохранения и т.д., которые, естественно, ты не станешь разрешать запускать другим. Для таких вещей ты разрешаешь чтение, изменение и выполнение только для хозяина. Далее, ты захотел, чтобы некоторые твои друзья имели доступ к каким-то эксклюзивным записям. Для этого ты организуешь их в группу и разрешаешь этой группе, скажем, чтение каталога. И, наконец, все остальные могут просто послушать остальные твои мелодии. Для этого ты разрешаешь доступ к таким мелодям для other (или world).
TANSTAAFL

  • Гость
CHMOD ?
« Ответ #6 : 01 Июля 2002, 05:16:32 »
Цитировать
в сети полно доступных описаний


Например...

А вообще-то мне фиолетово, что там стоит - Unix или нет (ну по большому счету, хотя бы). Мне нужно решить эту задачу с безопасностью, и все. Я сайты делаю, и не собираюсь сисадмином становиться, других проблем выше крыши. Не сочтите за грубость, просто хочу ситуацию прояснить.

Есть юниксоиды и "остальные". Oak может и понятно для уников рассказывает, но они и так это знают. А остальным такое изложение - абракадабра. Вопрос в терминологии - что конкретно имеется в виду под Владелец, Группа, Остальные, если хозяин работает со своим сайтом удаленно. И можно ли оптимально решить вопрос с безопасностью в таком случае?  Давайте определимся в терминах. А то ощущение такое, что их придумали филологи, а не инженеры.

Оффлайн YA

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 597
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
CHMOD ?
« Ответ #7 : 01 Июля 2002, 08:58:44 »
Цитировать
Например...
http://www.freebsd.org.ua/handbook/basics.html - там есть параграф про права доступа
Еще рекомендую http://www.google.com/ http://ya.ru/
Цитировать
А вообще-то мне фиолетово, что там стоит - Unix или нет
А вот это зря!
Цитировать
Мне нужно решить эту задачу с безопасностью, и все. Я сайты делаю
Сам себе противоречишь. Как же ты будешь решать "задачу с безопасностью", если не знаешь, что там стоит? Это невозможно :)
Цитировать
Есть юниксоиды и "остальные". Oak может и понятно для уников рассказывает
Я, к сожалению, не "юниксоид", но Oak и мне понятно рассказывает :)
Литературный перевод с русского и английского на Perl. Дорого!

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
CHMOD ?
« Ответ #8 : 01 Июля 2002, 13:31:30 »
Цитировать

Мне нужно решить эту задачу с безопасностью, и все.

Она не решается. Покрайней мере это следует из того, что ты написал.

Единственный кто ее может решить - админ сервера, вот его и пинай, чтобы получить результат.
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
CHMOD ?
« Ответ #9 : 01 Июля 2002, 15:46:30 »
А если конкретно о твоей проблеме, то тут все просто: когда ты создаешь файл, он наследует твою группу и пользователя - вне зависимости, где на сервере он лежит. Поэтому, любой скрипт на твоем сервере может прочитать содержимое любого файла там-же.
Защита на хостинге останавливается на том, чтобы не дать посторонним (т.е other) читать то, что им не позволено
TANSTAAFL

  • Гость
CHMOD ?
« Ответ #10 : 03 Июля 2002, 02:55:08 »
Цитировать
решить эту задачу с безопасностью -
- Она не решается. Покрайней мере это следует из того, что ты написал. Единственный кто ее может решить - админ сервера, вот его и пинай, чтобы получить результат.


Ну вот. Если я всегда свои сайты размещаю не на "офисном сервере-компе", а далеко-далеко - иногда сам не знаю, в каком он городе даже, то безопасности, хоть относительной, не добиться? Тогда в чем преимущество серверов на Unixe. Я думал, как раз в этом, в безопасности и надежности то бишь. Да в том, что файлы запирать flock можно (вообще непонятно, как с этим Windows управляется, когда несколько пользователей из Сети к одному файлу обращаются - кто-то знает? - ведь полно в нете таких серверов).

Цитировать

А вообще-то мне фиолетово, что там стоит - Unix или нет
А вот это зря!


А если безопасности на Unixe не дают, то остается разве что его бесплатность (напару с дорогим, в смыле денег, сисадмином).  И это все преимущества? Негусто. А я всегда нос воротил от хостинга, если он на Windows. Может зря? Тока честно, уникумы.


 Maniac, я правильно понял? Что если я ставлю чмо файла в 0644, то теми скриптами, что в этой директории, я смогу туда писать, а из поддиректории уже не смогу. И никто ниоткуда туда писать не смогет?

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
CHMOD ?
« Ответ #11 : 03 Июля 2002, 10:29:22 »
Цитировать
я правильно понял? Что если я ставлю чмо файла в 0644, то теми скриптами, что в этой директории, я смогу туда писать, а из поддиректории уже не смогу. И никто ниоткуда туда писать не смогет?


Вот как раз писать и смогет (ты же сам на запись флажок выставил :) )
В общем, читай здесь
TANSTAAFL

Оффлайн YA

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 597
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
CHMOD ?
« Ответ #12 : 04 Июля 2002, 02:43:53 »
Цитировать
А я всегда нос воротил от хостинга, если он на Windows. Может зря?

Нет, не зря!!!
Но только, если ты не хочешь изучать Unix, тебе крайне сложно будет понять, чем он в данном случае лучше. Не делай поспешных выводов.
Литературный перевод с русского и английского на Perl. Дорого!

  • Гость
CHMOD ?
« Ответ #13 : 05 Июля 2002, 02:45:21 »
Цитировать
тебе крайне сложно будет понять, чем он в данном случае лучше


Опять туман... У вас что, дар речи отняли. Или это мистика какая-то - лучше, а почему, сформулировать не могу... Вы мне, юниксоиду,  просто верьте, я-то знаю, что лучше, но не скажу - вера - это главное, нафиг знания?

  • Гость
CHMOD ?
« Ответ #14 : 05 Июля 2002, 03:00:49 »
Maniac ,

Вот Вы меня послали... почитать про линукс, а на фига?
Вот какие перлы я там вычитал:
Вы - Владелец файла
Группа - Группа, к которой вы принадлежите
Остальные - Любой в системе, кто не является владельцем либо членом группы
- академический бред, как на лекции в совковом ВУЗе.

Что это? И кому это что-то говорит: "Вы - Владелец файла". Да знаю я, что владелец. Меня интересует, насколько - когда у меня нет физического доступа к своему серверу, как и у миллионов сайтов. Возможно ли хоть как-то обезопасить свой сайт дистанционно.  Может здесь Unix хоть чем-то помочь?
Не знаете, как толком объяснить - не замусоривайте форум словесами. Тут технари есть, или сплошные филологи?

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28