Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Хитрости и секреты создания сайтов


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Интернет / Хитрости и секреты создания сайтов

Выпуск № 83
от 02.01.2007, 14:35

Администратор:Ерёмин Андрей
В рассылке:Подписчиков: 365, Экспертов: 35
В номере:Вопросов: 1, Ответов: 3


Вопрос № 68915: Доброе времья суток! Пытаюсь сделать сайт с готовым движком, но в самом начале споткнулся вот на чем: "установите для папок Temlates, Uploads, Engine/Cache, Engine/Data и всем находящимся внутри них папкам права на запись CHMOD 7...

Вопрос № 68.915

Доброе времья суток!
Пытаюсь сделать сайт с готовым движком, но в самом начале споткнулся вот на чем:
"установите для папок Temlates, Uploads, Engine/Cache, Engine/Data и всем находящимся внутри них папкам права на запись CHMOD 777. А всем файлам находящимся в этих папках и в других вложенных CHMOD 666".
Уважаемые эксперты, чта это такое и как его исполнить? Чем?
В эти безконечные праздничные дни не сильно переедайте (!) и перепивайте! В рамках шутки конечно. Всем веселых праздников!!!

Отправлен: 28.12.2006, 14:15
Вопрос задал: AstroY (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Евгений Крюков
Здравствуйте, AstroY!

Если размещаете сайт на машине с Windows, то можете не обращать внимания на эти строки. Сами строки обозначают права доступа к папке для владельца, группы и всех остальных. В данном случае 666- это разрешение для всех категорий пользователей на запись/чтение папки, 777- на запись, чтение и исполнение. Теперь чем ставить. Большинство современный FTP-клиентов позволяют выставлять права в Unix-подобных системах. Например, в FTP-клиенте FileZilla (http://filezilla.sourceforge.net/) достаточно кликнуть правой кнопкой мыши по файлу/папке и в выпадающем меню выбрать пункт "Изменить аттрибуты". Приблизительно также это делается и в других программах. Таке права можно выставить и с помощью командной строки на стороне сервера.
---------
Большинство ответов на вопросы в рассылках находится через Яндекс за 1 мин.
Ответ отправил: Евгений Крюков (статус: Студент)
Ответ отправлен: 28.12.2006, 15:32
Оценка за ответ: 4

Отвечает: Web-Extrime
Здравствуйте, AstroY!

Для начала нужно найти какую-либо программу для работы с FTP, самая нормальная из которых - "Cute FTP", но можно работать с сайтом с помощью "Total Commander". Он так же позволяет менять атрибуты CHMOD, создавать множество профилей для работы с несколькими сайтами.

Права доступа CHMOD бывают:
1. Чтение/запись: 644, 664, 666 - выставляются только для тех файлов, которые при работе скриптов должны и могут быть изменены.
2. Чтение/выполнение: 744, 754, 755 - выставляется для тех файлов, которые во время работы скрипта должны выполняться. Это php-файлы.

Здесь перечислены права доступа в том порядке в каком лучше выставлять. То есть самый верный 644 для чтения/записи, 744 - для выполнения скриптов. Если не заработало, то возможно настройки хостера требуют второго или третьего варианта.
Интересная особенность: А какие же атрибуты необходимо выставлять папке, в которой запускаются, записываются, читаются файлы?
Всё тоже зависит от хостера. Иногда работает при 644, но иногда скрипт не работает пока не установить 777. То есть права доступа чтения/записи/выполнения. Что по идее правильно, но может привести к существенной уязвимости, если можно так выразиться. А дело вот в чём: если вдруг на сайте есть несколько скриптов. Допустим мы выставляем папке с гостевой права 777 и знаем, что взломать доску сложно и почти невозможно, а другой скрипт - "сплошная дыра", но атрибуты папки, где он установлен не позволяют создавать файлы. Так вот возможно через уязвимый скрипт создать файл в папке гостевой книги. Например файл, hack.php - со всевозможным кодом.
Вот такая проблема возможна при не обдуманной установке прав доступа файлам.

В "Total Commander" права устанавливаются из меню "Файлы/Изменить Атрибуты"
В "Cute FTP" в меню правой кнопки мыша на свойствах файла.

Вот собственно и всё, что нужно для успешного выставления им соответствующих атрибутов CHMOD.

Успехов и с наступающими!!!

---------
Делай добро сам, и всегда помни что сделали для тебя!
Ответ отправил: Web-Extrime (статус: 8-ой класс)
Ответ отправлен: 28.12.2006, 15:41
Оценка за ответ: 5

Отвечает: Angel7
Здравствуйте, AstroY!

chmod - изменение режима доступа к файлам
Все чаще обнаруживается, что некоторые начинающие сайтостроители, увлеченные скриптованием (на perl/cgi, php и т.д.) не знают, что такое chmod и как его использовать. В этом кратком руководстве вы узнаете что такое chmod, как он выставляется и для чего вообще это нужно

Очень важно иногда назначить права доступа на определенные файлы и папки, находящиеся на веб сервере, будь то в целях безопасности или просто для корректной работы скрипта. Это действие и называется chmod (change file mode), или по-русски: изменение режима доступа к файлам. Это название берет свое начало с команды Unix - chmod, которая изменяет разрешения на файлы. Со временем «chmod» стал синонимом слова «разрешение» («permission»).

Существует три группы пользователей, права которых нас будут интересовать: владелец файла, группа и остальные пользователи.

Создавая файл, пользователь автоматически получает самые широкие права на делание с этим файлом чего угодно, его группа - несколько меньшие права, а все остальные - совсем ничтожные. В Unix есть только три основных права - читать файл или просматривать каталог («Read»), изменять файл или папку, записывая в неё что-нибудь, или вообще её удалять («Write»). Последнее право - право на запуск файла («eXecute»).

Режим chmod может обозначаться в числовом или символьном формате. Например: 755, rwxrxrx, 644 и т.д.

Как вы уже поняли, символы r, w и x обозначают, соответственно, read, write и execute. Выставлять права на файлы таким образом можно через любой ftp-клиент, например CuteFTP. Вот так выглядит окно установки chmod в этой программе: Обратите внимание на расстановку «галочек». Первыми идут галочки в полях «Владелец»: read, write, execute (rwx); потом идут поля «Группы»: read, execute (rx); и наконец поля «Остальных»: read, execute (rx). В итоге мы получили права rwxrxrx на файл (по очереди букв и полей). То есть, владелец может читать, записывать и исполнять файл; «группа» и «остальные» имеют право на чтение и исполнение файла, но не на запись! Теперь вы должны осознавать важность установки прав на файлы и постараться обеспечить максимальную безопасность ваших скриптов и данных на сервере с помощью этого инструмента.
Обратите внимание на число 755 в поле Manual. Оказывается, каждое право имеет определенный числовой код и может быть выставленно вручную:

400 — владелец имеет право на чтение;
200 — владелец имеет право на запись;
100 — владелец имеет право на выполнение;
40 — группа имеет право на чтение;
20 — группа имеет право на запись;
10 — группа имеет право на выполнение;
4 — остальные имеют право на чтение;
2 — остальные имеют право на запись;
1 — остальные имеют право на выполнение.
Сумма этих пунктов дает желаемый chmod. Например, мы хотим чтобы владелец мог делать все, а группа и остальные — только читать файл. Складываем: 400+200+100+40+4=744. То есть нам необходим chmod 744. Теперь осталось только просуммировать числа, соответствующие тем правам доступа, которые мы хотим поставить файлу, и установить их.
Примеры:

400+40+4=444 — все имеют право только на чтение.

400+100+10+1=611 — владелец может читать и выполнять, остальные — только выполнять.

400+200+40+4=644 — означает, что вы позволяете всем его читать, но писать в этот файл может только владелец файла. Даже если вы являетесь владельцем файла и открываете его в браузере, то вы не сможете ничего в него записать, поскольку доступ через браузер делает вас анонимным пользователем.

400+200+40+20+4+2=666 — означает, что все могут и читать и писать этот файл. Это необходимо, чтобы пользовател могли делать записи в гостевых книгах, форумах и т.д.

400+200+100+40+10+4+1=755 — классическая команда для cgi-скритпа. CGI-скрипт — это исполняемый файл, и все должны иметь к нему доступ на чтение и выполнение. Только владелец этого файла может его изменять или удалять.

Приведу еще более удобную, на мой взгляд, таблицу расчета chmod:

Значения Owner (Владелец) Group (Группа) Public (Остальные)
Read = 4 X X X
Write = 2 X X
Execute = 1 X X X
Сумма: (4 + 2 + 1) = 7 (4 + 1) = 5 (4 + 1) = 5


И в завершении кратко скажу о том, как эти разрешения устанавливаются. Делается это с помощью любого ftp-клиента:

В Windows Commander они изменяются через пункты меню «Файл» > «Изменить аттрибуты». При этом изменяются разрешения на выделенный файл (файлы) и/или папки.
В FAR Manager разрешения выделенных файлов изменяются нажатием Ctrl+A:
[x][x][ ] [x][x][ ] [x][x][ ] - 666
[x][x][x] [x][ ][x] [x][ ][x] - 755
В CuteFTP разрешения меняются с помощью пункта «Change file attributes» (изменить аттрибуты файла) меню, выпадающего при клике правой кнопкой мышки по имени файла.

Автор: Denveroid
Источник: www.sitemaker.ru

Удачи! С наступающим Новым Годом!

---------
На ошибках учатся!
Ответ отправила: Angel7 (статус: 9-ый класс)
Ответ отправлен: 28.12.2006, 16:14


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.38 от 20.12.2006
Яндекс Rambler's Top100

В избранное