Зачем ставить chmod (764)?

Тема в разделе "PHP", создана пользователем dandandan, 22 апр 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    975
    Симпатии:
    255
    Что такое chmod (для веб сервера) я понимаю. Это установка прав для админа, скрипта и для юзеров. Однако вот вопрос. Почему советуют для юзеров ставить прова 4 а для админа 7? Ведь в любом случае админ свои права сможет повысить, а юзер работает из под рнр скрипта у которого прова 6... Разъясните пожалуйста этот момент.
     
  2. Виллен

    Виллен

    Регистр.:
    12 мар 2009
    Сообщения:
    236
    Симпатии:
    60
    на лицо не понимание, как устроена система прав доступа в unix
    почитай это:
    http://ru.wikipedia.org/wiki/Chmod

    Права на доступ может менять не только админ (root) но и владелец файла.
    Какие права у конкретного скрипта зависят от кого исполняется это скрипт и в какую группу входит.
     
  3. ref.

    ref. Создатель

    Регистр.:
    17 окт 2008
    Сообщения:
    10
    Симпатии:
    1
    Не правильно понимаешь )

    Если лень читать википедию, то в двух словах:

    764 - 7 - владелец(юзер), 6 - группа, 4 - все остальные.
     
  4. Darkmind

    Darkmind SNMP maniac

    Регистр.:
    31 май 2006
    Сообщения:
    182
    Симпатии:
    74
    Chmod - это права на доступ к файлам и директориям. Вызывая скрипт, мы запускаем его с правами веб-сервера (именно поэтому веб-сервер не стоит запускать с правами root'а).
    Чтение - 4, запись - 2, выполнение - 1. Суммируя эти цифры получаем различные комбинации прав. Обычно закачивая файл на вебсервер ему присваиваются права 644, т.е. все могут прочитать, а писать в него может владелец.
    Права 777 на файлы ставить нет нужды, а вот на директории таки бывает необходимо. Например, если в нее будет складываться кэш, сессии или пользователи сайта будут закачивать туда свои аватарки.

    Старая присказка админов: обычно у девушек CHMOD 764. У порядочных - 744. У тусовщиц - 774. У динамщиц - 664, а про 777 мы говорить не будем.
     
  5. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    975
    Симпатии:
    255
    Если я покупаю у компании хостинг, то права root'a я же не могу сменить?

    Если у нас есть три пользователя:
    владелец(юзер), группа, все остальные.
    И, как я понял, скрипт запускается от имени владельца, то зачем на группу и все остальные ставить какие-то права ? (считаем, что у нас работают только php скрипты, нету картинок и всего прочего).
     
  6. Виллен

    Виллен

    Регистр.:
    12 мар 2009
    Сообщения:
    236
    Симпатии:
    60
    dandandan:
    Совсем не обязательно.
    Если ты купил нормальный хостинг, то у тебя скорее всего:
    user будет dandandan
    group будет dandandan-group
    Cкрипт будет запускаться от имени dandandan/dandandan-group
    И что б тебя не слили через соседей, ставь права 660 для изменяемых файлов , это например загружаемые картинки (ака аватары), кеш
    и 440 для постоянных файлов.
     
    dandandan нравится это.
  7. Darkmind

    Darkmind SNMP maniac

    Регистр.:
    31 май 2006
    Сообщения:
    182
    Симпатии:
    74
    Смотри пример при работе с некорректно настроенным хостингом модели "на-коленке". Через FTP закачиваешь файл test.php, который падает тебе в твою www-директорию с правами 644, но владелец/группа у него проставились как ftp:ftp. Апач запущен как www:www или как nobody:nobody. Теперь, ты набираешь http://hostname/test.php, апач на хостинге открывает этот файл, потому что в соответствии с правами "4" этот файл могут читать все. Но если ты попытаешься этот скрипт апачем удалить или что-то в него записать, то получишь Permission denied.
    Если бы группы и пользователи были расставлены так, как описал Виллен, этого бы не произошло.
     
    dandandan нравится это.
  8. sounde

    sounde

    Регистр.:
    12 сен 2008
    Сообщения:
    391
    Симпатии:
    64
    А у меня почему-то если ставлю например права на скрипт 440 или 660, т.е. для "всех остальных" 0 (ни читать, не писать, не испольнять), то скрипт не работает, почему так? Ведь скрипт вроде выполняется от имени юзера или на худой конец от юзер-груп или я ошибаюсь?
     
  9. Виллен

    Виллен

    Регистр.:
    12 мар 2009
    Сообщения:
    236
    Симпатии:
    60
    Так юзер группы могут быть разными.
    Вон Darkmind привел пример не очень грамотного хостинга
    Скрипт с юзер/груп ftp:ftp и правами 440 не сможет исполниться апачем т.к. права для www:www у него 0 (последняя цифра)
     
  10. elchegevara

    elchegevara

    Регистр.:
    20 окт 2007
    Сообщения:
    217
    Симпатии:
    59
    А кроме как не слили через соседий есть причины минимализации прав?
    Допустим у некоторых vds, где просто нет соседий )
     
Статус темы:
Закрыта.