Установка прав доступа к файлам и папкам (CHMOD).

Важными составляющими каждого форума являются – администрирование и безопасность. Именно к этим двум разделам можно отнести систему изменения атрибутов доступа к определённым файлам и папкам форума, CHMOD (change file mode - в переводе: «изменение режима доступа к файлам»).

CHMOD. Общие понятия.

Права доступа - это атрибуты файла или папки, которые указывают серверу, кто и что может делать с соответствующим файлом или папкой. Большинство серверов работает на базе Unix-систем, поэтому рассмотрим установку прав доступа именно для них.

В системах Unix все пользователи разделяются на три группы: «owner» (владелец файла), «group» (член той же группы, к которой принадлежит владелец файла) и «public» (все остальные). Когда вы соединяетесь с сервером, он определяет, к какой группе вы относитесь. Например, подключаясь к серверу по FTP, вы входите под своим именем пользователя, соответственно сервер относит вас к группе «owner». Другие пользователи, подключаясь по FTP, будут отнесены к группе «group», а когда человек попадает к вам на сайт через свой браузер, то попадает в группу «public».

После определения группы, пользователь получает права на действия с объектами. В Unix есть только три основных права действия над файлом - читать файл или просматривать каталог (Read); изменять файл или папку, записывать в неё или удалять (Write); запускать файл (eXecute). Исходя из этого, в оборот были введены символы r, w и x, означающие, соответственно, read, write и execute. Чтобы распределить права для групп (owner, group, public), используются цифровые обозначения:

4 = read (право на чтение)
2 = write (право на запись)
1 = execute (право на выполнение)

Первая цифра в обозначении устанавливает права для группы «owner», вторая для группы «group» и третья для «public». Простым сложением цифр можно добиться установления прав на совокупность действий. Например, 3 (2+1) разрешает запись и выполнение файла (каталога); 5 (4+1) разрешает чтение и выполнение; 6 (4+2) разрешает чтение и запись; 7 (4+2+1) устанавливает право чтения, записи и выполнения. Т.е. всего семь возможных вариантов:

7 = read, write & execute
6 = read & write
5 = read & execute
4 = read
3 = write & execute
2 = write
1 = execute

<style box background>Режим CHMOD может обозначаться в абсолютном (цифровом) или символьном формате. Например: 755 - цифровой формат. В символьном формате он будет выглядеть как «rwxrxrx». Запись «rwxrxrx» можно разбить на три части (в соответствии с группами): «rwx» (read, write & execute), «rx» (read & execute) и «rx» (read & execute). Ясно, что если в цифровом формате будет «777», то в символьном - «rwxrwxrwx». Далее расcматривать будем только цифровой формат CHMOD.</style>

CHMOD. Установка атрибутов.

Для установки прав доступа используется команда CHMOD. Во всех современных FTP-клиентах присутствует возможность назначения прав доступа путем простановки «галочек» в чекбоксах, либо просто введением цифрового кода в соответствующее поле:

:faq:chmod_basic.gif

Подобное сочетание CHMOD можно расчетать в виде таблицы:

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

CHMOD. Пример команды.

Рассмотрим пример задания команды CHMOD через FTP-клиент CuteFTP для выставления необходимых атрибутов папки /uploads/ форума IPB. Для этого нужно подключиться к серверу, найти корневой каталог с форумом, найти папку /uploads/, нажать правой кнопкой мыши на ней и в появившемся меню выбрать «Properties / CHMOD».

:faq:ftp_chmod.gif

<style box background>Необходимые атрибуты 777 заданы в цифровом виде для папки /uploads/. В символьном виде они выглядят как «drwxrwxrwx», символ «d» помечает, что это директория (папка).</style>

Для задания команд вы можете использовать другие программы, позволяющие работать как FTP-клиенты (суть их работы одинакова). Например:

  • В Windows Commander они изменяются через пункты меню «Файл» → «Изменить атрибуты». При этом изменяются разрешения на выделенный файл (файлы) и/или папки.
  • В FAR Manager разрешения выделенных файлов изменяются нажатием Ctrl+A:

[x][x][ ] [x][x][ ] [x][x][ ] - 666
[x][x][x] [x][ ][x] [x][ ][x] - 755

CHMOD на файлы и папки IPB.

В заключение приведём пример расстановки атрибутов на файлы и папки форума IPB. Следующие папки и файлы должны иметь атрибуты доступа 777.

Для версии 2.1:

/cache/
/cache/lang_cache/
/cache/skin_cache/ + на все папки и файлы внутри неё
/style_emotions/ + на папки наборов смайликов внутри неё
/style_images/
/uploads/

На файл conf_global.php рекомендуется выставить CHMOD 666.

Для версии 2.2 и 2.3:

/cache/
/cache/lang_cache/ + на все папки и файлы внутри неё
/cache/skin_cache/ + на все папки и файлы внутри неё
/uploads/
/style_images/ + на все папки и файлы внутри неё
install/installfiles/

На файл conf_global.php перед установкой выставить права 666, после установке рекомендуется вернуть к стандартным 644.

Для версии 3.0:

./cache
./cache/tmp
./cache/lang_cache
./cache/lang_cache/1
./cache/skin_cache
./public/style_images
./public/style_css
./hooks
./uploads

На файл conf_global.php перед установкой выставить права 666, после установке рекомендуется вернуть к стандартным 644.

Успехов!

 

faq/chmod.txt · Последние изменения: 2009/07/30 19:57 root

Работает на DokuWiki
© 2002—2006 ibresource
e-mail: wikiteam@iblink.ru