Что такое chmod, какие права доступа назначать файлам и папкам (777, 755, 666) и как это сделать через php

CHMOD (777, 755, 444): настройка прав доступа к файлам и папкам блога WordPress

Доброго здоровья, уважаемые читатели блога! Всем бы нам хотелось, чтобы каждый файл или папка, расположенные на сервере хостинга и принадлежащие сайту, были бы максимально защищены от несанкционированного доступа.

Такая защита обеспечивается за счет того, что 90% хостеров используют Unix-подобные операционные системы, в которых существует возможность регулировать права доступа ко всем файлам и каталогам. Сервер моего хостинг-провайдера Спринтхост, на котором расположено несколько моих проектов, не исключение.

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

CHMOD для пользователей и права доступа к файлам и папкам (директориям)

В системах, управляемых Unix, ситуация иная и есть возможность серьезно осложнить жизнь нехорошим дядям, которые попытаются воспользоваться результатами вашего кропотливого труда на протяжении длительного периода. А именно, правильно настроить права доступа CHMOD. Наша задача дать минимально возможные для доступа к файлам и папкам права, которые тем не менее не нарушат корректную работу сайта.

Согласитесь, грех не воспользоваться возможностью серьезно усилить безопасность вашего блога WordPress.

Конечно, в этом случае редактирование некоторых  файлов будет занимать немного больше времени, но тут уж приходится выбирать: либо оптимизация безопасности системы, либо…

 Ниже я постараюсь систематизировать информацию по CHMOD (правам доступа), потому что здесь есть несколько нюансов, которые необходимо знать вебмастеру. Итак, начнем.

Права доступа различаются для различных групп пользователей. При попытке соединения сервер определяет, к какой группе отнести того или иного пользователя. Все пользователи разделяются на три категории:

  1. «user» – владелец файла
  2. «group» – один из членов группы, к которой принадлежит и владелец
  3. «world» – “остальной мир”, то есть все остальные пользователи

Если вы подключаетесь к серверу по протоколу FTP и заходите под своим логином и паролем, то будете идентифицированы как “user” (u), если кто-либо другой подключается по FTP, то будет определен как “group” (g), если же пользователь использует браузер, то попадает под категорию “world” (o).

Теперь о правах доступа CMOD к файлам и директориям. По сути они немного отличаются, хотя обозначения применяются одни и те же. Права доступа к файлам:

  • r (read) – право на чтение данных файла
  • w (wright) – право на изменение содержимого (можно произвести только редактирование содержимого – запись, но удалять нельзя)
  • x (eXutive) – право на исполнение файла

Права доступа к папкам (директориям):

  •  r – право на чтение папки (можно получить содержимое директории, то есть список файлов, входящих  в нее)
  • w – право на изменение содержимого ( разрешение на создание и удаление объектов в директории, если вы имеете право на  запись  файлов, то удалять можно даже те объекты, которые вам не принадлежат)
  • x – право доступа в ту или иную директорию (особенность здесь такая, что если даже вы имеете все необходимые права на  файл, который расположен “в глубине” директорий, но не имеете права доступа хотя бы к одной поддиректории на пути к этому объекту, то не сможете получить доступ к нему)

Значком дефиса «-» отмечают отсутствие каких-либо прав. Все эти права прописываются администратором, который получает эту возможность посредством ввода пароля. Если мы сможем установить максимально возможные ограничения на права доступа CHMOD к тем или иным файлам ресурса, то сможем практически исключить опасность реализации своего “черного дела” вирусным программам.

Для наглядности рассмотрим пример, когда владелец файла u имеет все возможные права: на чтение, запись и исполнение. Пользователи, отнесенные к категории g (group) –  только на чтение и запись, все остальные (w) имеют только право на чтение. Тогда  запись CHMOD будет выглядеть следующим образом: «rwx rw- r- -».

Права доступа к файлам и папкам в цифровом выражении: CHMOD (777, 755, 444)

Но чаще вебмастерам в своей практической деятельности приходится назначать те или иные права доступа в цифровом выражении:

  • r (чтение) – 4
  • w (запись) – 2
  • x (исполнение) – 1
  • – (нет прав) – 0

Теперь вновь разберем вышеприведенный пример для назначения прав доступа «rwx rw- r- -». Для отображения прав каждого пользователя применяется сложение его прав (r чтение + w запись  + x исполнение).

Таким образом часть записи для владельца файла u (user) – «rwx » превратится в 7 (4+2+1). Для члена группы g (group) – «rw-» в 6 (4+2+0) и для остальных пользователей o (world) – «r- -» в 4 (4+0+0).

В качестве резюме представлю сводную таблицу со значениями прав доступа CHMOD, выраженными как в буквах, так и в цифрах:

Теперь представлю еще одну таблицу, которая отражает суммарные права CHMOD для всех групп пользователей в формате цифр:

Это основные комбинации, которые наиболее часто используются в работе вебмастера. Остальные формируются по аналогии. Если вы являетесь администратором сайта или блога, но работаете с проектом, не подсоединившись по FTP протоколу, вы также относитесь к группе “Остальные пользователи”.  В таком случае при работе с сайтом в таком режиме нужно учитывать последнюю цифру в значении CHMOD.

Обычно на сервере, где находятся файлы вашего WordPress блога, на папки выставляются права доступа 755, а на файлы, которые входят в их состав, 644.

Это справедливо, когда ресурс построен с использованием файлов HTML, однако в современных условиях для построения сайта массово используются CMS (системы управления контентом), к которым относится и WordPress.

А здесь могут находиться объекты, в которые нужно производить записи от группы пользователей “world”. Могут находиться папки кэширования, в которые загружается контент, в том числе изображения.

https://www.youtube.com/watch?v=BxnJQ5h6-S0

Поэтому назначения прав CHMOD на те или иные файлы необходимо дифференцировать.

Если вы входите в управление сайтом по FTP, то можете производить любые действия, однако во многих случаях мы работаем со своим проектом через браузер, а в этом случае могут возникнуть проблемы, если права слишком завышены, и, наоборот, если права доступа к тому или иному файлу (папке) занижены, то возрастает угроза безопасности. Посему на основании вышесказанного можно определить некоторые рекомендации по практическому применению CHMOD для блога WordPress:

777 – для папок, в которых постоянно происходит запись и стирание файлов (для папки кэширования) 755 – применительно к папкам, в которые постоянно записываются файлы, но не удаляются 666 – для файлов, в которые необходимо время от времени добавлять запись (например, файл .htaccess)

644 – для файлов, которые используются только для чтения (.php, .html и др.)

Также рекомендую на папки, находящиеся в корне сайта, поставить код доступа CHMOD 444.

Как настроить права доступа CHMOD с помощью FTP менеджера FileZilla

Если при работе с ресурсом будет необходимо внести какие-то изменения, но по причине наличия запрета на редактирование это сделать невозможно, нужно подсоединиться к серверу хостинга по протоколу FTP и изменить права доступа на 777.  Однако после внесения в файл изменений  рекомендуется вновь выставить прежний CHMOD.

Теперь подробнее о том, как проделать эту операцию с помощью ФТП (FTP) клиента FileZilla. Для этого открываем программу и соединяемся посредством FTP к серверу хостера. В левой части «Удаленный сервер» сначала отмечаем файлы, атрибуты которых будут подвергнуты редактированию:

И из контекстного меню, вызванного нажатием правой кнопки мыши, выбираем «Права доступа к файлу». После этого появится диалоговое окно «Изменить атрибуты файла»:

Здесь присваиваем нужные значения CHMOD для выбранного (или выбранных) файлов. Но это только, если вы выбирали файл или группу файлов. В случае, если вы хотите установить или изменить значения CHMOD для каталога (папки) при выборе «Изменить атрибуты файла» появится аналоговое окно, несколько отличное от расположенного выше, а именно:

Видите, здесь появились дополнительные настройки.

Если вы поставите галочку напротив строки «Перенаправить во вложенные каталоги», это значит, что заданные права доступа будут применены ко вложенным в эту директорию каталогам (папкам) либо файлам.

 При отмеченной галочке ниже расположенная группа настроек станет активной и вам потребуется еще выбрать, как нужно применять настройки: ко всем файлам и каталогам, только ко вложенным файлам либо только к каталогам.

На этом, пожалуй закончу сегодня. Надеюсь, теперь вы знакомы с процедурой назначения прав доступа CHMOD к файлам и папкам и сможете теперь применить ее на практике. Если статья понравилась, не забудьте поделиться с друзьями и подписывайтесь на обновления  блога по e-mail и RSS, чтобы не пропустить актуальные материалы.

Еще статьи по данной теме:Самые интересные публикации из рубрики: Создание сайтов

Источник: https://goldbusinessnet.com/dvizhok-wordpress/chmod-prava-dostupa-k-fajlam/

Права на папки и файлы (unix/chmod)

unix, shell, sh, bash, chown, chmod, user, uid, find

Владельцы:

Права:

Добавить Забрать
+r -r
+w -w
+x -x

(Изначальное значение прав доступа файла file – rwxrwxrwx – полный доступ для всех) Отмена разрешения на выполнение файла для всех пользователей и групп:

$ chmod a-x file (rw-rw-rw-)

Отмена записи в файл группой и остальными пользователями:

$ chmod go-w file (rw-r–r–)

Разрешение выполнения файла владельцем:

$ chmod u+x file (rwxr–r–)

Предоставление группе тех прав доступа, которыми владеет владелец файла:

$ chmod g=u file (rwxrwxr–)

Отмена чтения и запись в файл пользователям группы и другим пользователям:

$ chmod go-rw file (rwx–x—)

Разрешение чтения, записи, выполнения файла file всеми пользователями и группами (полный доступ):

$ chmod 777 file (rwxrwxrwx)

Установка разрешений на чтение и запись для владельца, группы и остальных пользователей:

$ chmod 666 file (rw-rw-rw-)

Установка полного доступа к файлу для владельца и лишь чтения для группы и остальных пользователей:

$ chmod 744 file (rwxr–r–)

Установка полного доступа к файлу владельцу файла и запрет доступа группе и другим пользователям:

$ chmod 700 file (rwx——)

Установка разрешений на чтение и запись для владельца файла и лишь чтения для группы и остальных:

$ chmod 644 file (rw-r–r–)

Установка разрешений на чтение и запись владельцу файлу и его группе и запрет доступа для других:

$ chmod 640 file (rw-r—–)

Установка доступа к файлу с разрешением чтения для всех пользователей и групп:

$ chmod 444 file (r–r–r–)

Права доступа к файлу для чтения, записи, выполнения владельцем и чтения, выполнения группе и другим:

$ chmod 755 file (rwxr-xr-x)

Разрешение доступа к файлу на чтение и выполнение пользователю и остальным и запрет доступа для группы:

$ chmod 505 file (r-x—r-x)

Если вы хотите назначить права доступа на все файлы в текущем каталоге, просто поставьте после назначаемых прав доступа знак * (звездочка):

$ chmod 755 *

В результате выполнения этой команды владелец получит полные права (чтение, изменение, выполнение) на все файлы текущего каталога, а группа и другие пользователи – только чтение и выполнение. Если вы хотите, чтобы ваши действия распространились рекурсивно (включая все подкаталоги), воспользуйтесь опцией -R:

$ chmod -R 777 *

Результатом выполнения вышеприведенной команды будет рекурсивный “обход” всех подкаталогов текущего каталога и назначение полного доступа для всех пользователей и групп. В этой статье рассмотрены лишь некоторые примеры применения команды chmod. Если вы хотите узнать подробнее о работе команды chmod и правах доступа в Linux, обратите внимание на эту статью.

Читайте также:  12 онлайн-сервисов платных опросов для заработка денег

$ find /path/to/base/dir -type d -exec chmod 755 {} +

или

$ chmod 755 $(find /path/to/base/dir -type d)

или

$ chmod 755 `find /path/to/base/dir -type d`

или

$ find /path/to/base/dir -type d -print0 | xargs -0 chmod 755$ find /path/to/base/dir -type f -exec chmod 644 {} +

или

$ chmod 644 $(find /path/to/base/dir -type f)

или

$ chmod 0755 `find ./ -type f`

или

$ find /path/to/base/dir -type f -print0 | xargs -0 chmod 644

Давайте сначала разберемся в сути вопроса с Chmod, чтобы понимать, что именно и каким образом мы настраиваем. Итак приступим. Права доступа разделяются на Chmod к файлам и Chmod к директориям. Обозначаются они одинаково, но означают немного разное.

Права доступа (Chmod) к файлам подразделяются на:

  • r — право на чтение данных.
  • w — право на изменение содержимого (запись – только изменение содержимого, но не удаление).
  • x — право на исполнение файла.

Остановимся чуть подробнее на праве исполнения файла. Дело в том, что в linux (Unix), любой файл может быть исполнен. Является ли он исполнительным — определяется не по его расширению (понятие расширение отсутствует в файловой системе Unix), а по правам доступа Chmod. Если у какого-либо файла установлено право “X” (chmod x), то это означает, что его можно запустить на выполнение.

Теперь о правах доступа (Chmod) к папке (директории):

  • r — право на чтение директории (можно прочитать содержимое директории, т.е. получить список объектов, находящихся в ней)
  • w — право на изменение содержимого директории (можно создавать и удалять объекты в этой директории, причем если вы имеете право на запись, то удалять вы сможете даже те файлы, которые вам не принадлежат)
  • x — право, которое позволяет вам войти в директорию (это право всегда проверяется в первую очередь, и даже если вы имеете все нужные права на объект, который закопан глубоко в цепочке директорий, но не имеете права “X” для доступа хотя бы к одной директории на пути к этому файлу, то к нему вы так и не пробьетесь )

В системах linux (Unix) все эти права раздает главный администратор компьютера, доступ к которому он получает путем ввода пароля.

И если большинство объектов будут иметь права доступа (Chmod) только для чтения, то вирусам на таком компьютере делать будет практически нечего, т.к. они не смогут себя туда ни записать, ни затем исполниться.

Именно этого результата нам нужно добиться, выставляя права доступа (Chmod) на объекты нашего сайта.

Сами права доступа (Chmod) подразделяются на три категории, в зависимости от того, кто обращается к объекту:

  • «user» — u (непосредственно владелец файла)
  • «group» — g (член той же группы, к которой принадлежит владелец)
  • «world» — o (все остальные)

Сервер определяет, к какой группе пользователей вас отнести в момент подключения вас к серверу.

Когда вы, например, подключаетесь к серверу по протоколу FTP, то вы входите под своим именем пользователя (и паролем), и тогда сервер относит вас к группе «user» («u)».

Прочие пользователи, которые тоже подключаются по FTP к серверу, будут отнесены к группе «group» («g»), а пользователь, который приходит к вам на сайт, используя свой браузер, попадает в группу «world» («o»).

Вариации трех возможных значений «r», «w» и «x» для трех категорий «u», «g» и «o» и определяют Chmod к файлам. Если не задана какая-то категория, то она заменяется знаком дефисом «-». права доступа (Chmod) указываются последовательно в заданном порядке:

  • сначала права для владельца — «u»
  • затем для группы — «g»
  • и в конце права для всех остальных — «o»

После того, как сервер отнесет пользователя к определенной группе, он предоставляет ему права на действия с объектами, после чего пользователь сможет прочитать, записать или выполнить файл (в зависимости от того, что разрешено делать с данным объектом его группе). Чтобы посмотреть содержимое папки, она должна иметь атрибут чтения «r» (для той группы, к которой сервер отнес пользователя). Чтобы создать файл или папку в уже существующей, необходимо, чтобы она имела атрибут Chmod на запись «w».

Для наглядности давайте разберем пример, где владелец файла («user» — «u») имеет все права: право на чтение, запись в него и исполнение, а все остальные пользователи только право на чтение. Запись таких Chmod будет выглядеть так: «rwx r– r–».

Рассмотрим ее в деталях: «rwx» (эта запись задает права на объект для владельца — «u»), «r–» (эта запись задает права на тот же объект, но в случае если пользователь отнесен сервером к группы — «g»), «r–» (эта запись задает права на объект для всех остальных пользователей — o”).

«Права» «Файл» «Папка»
Ничего нельзя делать Доступ к каталогу и его подкаталогам запрещен
r– Можно читать содержимое Можно прочитать содержимое папки
rw- Можно видеть и изменять содержимое Можно добавить, удалить, изменить файл папки
rwx Читать, изменять и выполнять файл Можно читать, удалять, изменять файлы, сделать каталог текущим, т.е. “войти” в этот каталог.
r-x Можно прочитать, либо выполнить Можно зайти в каталог и прочитать его содержимое, удалять или добавлять файлы нельзя.
–x Выполнить, если файл двоичный Пользователь может выполнить двоичный файл о существовании которого ему известно, зайти или прочитать каталог запрещено

Вы видите, что здесь для описания прав доступа используются записи с использованием латинских букв и дефисов, но вы, наверное, уже сталкивались с тем, что обычно Chmod задают в цифровом виде, например, всем известная комбинации: Chmod 777, разрешающая все и всем. Действительно, права доступа (Chmod) так же обозначают и цифрами:

  • r (читать) заменяют на 4
  • w (запись) заменяют на 2
  • x (исполнение) заменяют на 1

0 означает – ничего не делать (то, что в буквенной записи обозначается дефисом) Давайте опять вернемся к примеру записи прав доступа, приведенному мною чуть ранее: rwx r– r–.

Если заменить в ней буквы и дефисы на цифры, в соответствии с только что описанным правилом и при этом сложить цифры в каждой тройке, то получим цифровой вид этой записи: 744. Т.е.

получается, что сумма этих цифр и показывает Chmod к файлам или папке. Например:

  • 7 (rwx) = 4 + 2 +1 (полные права)
  • 5 (r-x)= 4 + 0 + 1 (чтение и выполнение)
  • 6 (rw-) = 4 + 2 + 0 (чтение и запись)
  • 4 (r–) =4 + 0 + 0 (только чтение)
  • и т.д.

В этой таблицы приведены все возможные комбинации Chmod записанные в цифровом виде:

«Права» «„Цифровая форма“» «„Символьная форма“»
Ничего нельзя делать
Только чтение 4 r–
Только запись 2 -w-
Только выполнение 1 –x
Чтение и запись 6 rw-
Чтение и выполнение 5 r-x
Чтение, запись, выполнение 7 Rwx

А теперь давайте рассмотрим различные комбинации Chmod в цифрах, применительно к группам пользователей:

«Права» «„Владелец“» «„Группа“» «„Остальные“»
777 читать записыватьисполнять

читать записывать

исполнять

Читать записывать

исполнять

776 читать записыватьисполнять читать записыватьисполнять Читатьзаписывать 775 читать записыватьисполнять читать записыватьисполнять Читатьисполнять 774 читать записыватьисполнять читать записыватьисполнять Читать 766 читать записыватьисполнять читатьзаписывать Читатьзаписывать 655 читатьзаписывать читатьисполнять Читатьисполнять 644 читатьзаписывать читать Читать

Вы сами (кроме того случая, когда вы получаете доступ к сайту по FTP) и все остальные посетители вашего сайта, относитесь к группе “word” (все остальные), поэтому для работы с вебсайтом нам нужно в первую очередь смотреть на последнюю (третью) цифру Chmod. Для того чтобы при работе пользователя с сайтом «запускался файл» скрипта достаточно будет, чтобы на него были установлены права доступа (Chmod), начиная от «4» (r– – только чтение) (5,6,7 тоже подойдут, но это будет лишнее в плане безопасности).

«Для папки» же, в которой лежит файл этого скрипта, нужно выставить минимум «5» (r-x — можно зайти в папку и прочитать его содержимое, удалять или добавлять нельзя). 7 тоже подойдет, но тоже будет уже лишним в плане безопасности.

Если нужно, чтобы скрипт не только читался, но и «записывал» какие-то данные (например, введенные пользователем), то минимальные права на «папку» по-прежнему будут «5», но для «файла» уже понадобятся права «6» (читать и записывать).

Скорей всего на сервере, куда вы скопировали содержимое движка вашего сайта, будут установлены следующие Chmod к объектам:

владелец (user) может всё, группа и все остальные могут только читать папки и заходить в них, но им запрещено записывать файлы, изменять названия и стирать их в директориях. (rwxr-xr-x)

владелец (user) может читать и изменять файлы, исполнять ему их запрещено, всем остальным запрещено их изменять и исполнять, остальные могут только читать. «(rw-r–r–)»

Если бы у вас был сайт, состоящий из одних html, то можно было бы все так и оставить. Но современные сайты построены на движках, и там могут быть объекты, в которые нужно будет производить запись от имени пользователей из группы «world» — o (все остальные).

Это могут быть папки, используемые для кэширования страниц или те, в которые по ходу работы с сайтом будут загружаться картинки и др. Само собой, что если вы зайдете на сайт по FTP, то сможете призвести запись в эти файлы или папки, но работая с интерфейсом вебсайта, как обычный пользователь, у вас могут возникнуть проблемы.

Поэтому к установке тех или иных Chmod надо подходить избирательно:

755 для всех папок, в которых должны записываться файлы, но не надо регулярно их стирать
777 для папок, в которые должны записываться и стираться файлы (например, для Кеша)
644 для простых файлов, используемых только для чтения (.html, .php и др.)
666 для файлы в которые может понадобится осуществлять запись (например, с базами данных .dat)

chmod('./folder', octdec('664'));

или

chmod('./folder', 0664);

Источник: http://docs.mirocow.com/doku.php?id=chmod

Как установить права доступа 777 (chmod) на папку

Буквально на днях мой хороший знакомый решил немного заработать на пиво на своем убогом блоге, поставив туда Сапу. Поскольку в околосеошных делах мой товарищ – новичек, я ему пообещал помочь в случае, если возникнут вопросы.

И как вы думаете какой первый вопрос у него возник? Именно, а что же такое права доступа на папку 777 и как их поставить? Те, кто решит зарабатывать на биржах ссылок, используя свои сайты в качестве ссылочных площадок, обязательно столкнуться с этим вопросом.

Права доступа – это атрибуты папки или файла, указывающие серверу, кто и что может делать с соответствующей папкой или файлом. Как правило, права доступа регламентируют такие действия как чтение, запись в папку или файл и выполнение. Поскольку при подключении к серверу я пользуюсь менеджером Windows Commander, то далее буду рассказывать и показывать все действия на нем.

Итак, открываем Windows Commander, заходим по FTP на наш сайт, выбираем нужную нам папку или файл и далее отправляемся в меню Files -> Change Attributes

Перед нами права доступа к файлу или папке для трех групп пользователей: «Owner» (владелец папки или файла), «Group» (член группы, к которой принадлежит владелец папки или файла) и «World» (все остальные). Когда вы соединяетесь с сервером, на котором находится ваш сайт, он определяет к какой из трех групп вы относитесь.

Например, подключаясь к серверу по FTP, вы входите под своим именем пользователя, соответственно сервер относит вас к группе «Owner». Другие пользователи, подключаясь по FTP, будут причислены к группе «Group», а когда человек попадает к вам на сайт через свой браузер, то он классифицируется, как принадлежащий группе «World».

Пользователь получает права на действие с объектами (файл или папка) в соответствии с правами доступа той группы, к которой он будет отнесен. Если файла или папка для этой группы имеет атрибут чтения (т.е.

Читайте также:  Паническая атака — что это и как бороться с таким расстройством

галочку в графе Read в Windows Commander), то пользователь может «прочитать» этот объект, если разрешено право на запись (т.е. стоит галочка в графе Write в Windows Commander) – может создать новую папку или файл в существующей папке, а если исполняемый файл или папка имеет атрибут выполнения (т.е.

галочку в графе Execute в Windows Commander), то пользователь может выполнить этот объект (приложение, скрипт и т.п.).

Права доступа на папку или файл принято представлять в виде трех цифр (например, 777), где каждая цифра обозначает права доступа для своей группы пользователей.

Первая цифра устанавливает совокупные права для группы «Owner», вторая – для группы  »Group» и третья для »World».

В свою очередь цифра для каждой группы представляет собой арифметическую сумму трех цифр, обозначающих следующие права:

4 = Read (право на чтение) 2 = Write (право на запись)

1 = Execute (право на выполнение)

Таким образом, 6 (= 4+2) разрешает запись и чтение файла (папки), 3 (= 2+1) разрешает запись и выполнение, а 7 (=1+2+4) устанавливает право чтения, записи и выполнения одновременно. Все возможные 7 вариантов установки прав доступа на папку или файл для группы пользователей представлены ниже

7 = 1+2+4 – Read, Write, Execute 6 = 4+2 – Read, Write 5 = 4+1 – Read, Execute 4 = 4 – Read 3 = 1+2 – Write, Execute 2 =2 – Write

1 =1 – Execute

Напоследок приведу примеры установки наиболее распространенных прав доступа на файл или папку в FTP менеджере Windows Commander. Вот так выглядят права доступа 777 для требуемого объекта:

а вот так, права доступа 666: 

Крупных заработков в Sape всем!

Полюбился СЕО Пресс? Подпишись на RSS.

Интересно к прочтению:

Источник: http://mexboy.ru/?p=88

Команда chmod Linux

Система полномочий в Linux имеет очень важное значение, поскольку благодаря ей можно разделять привилегии между пользователями, ограничить доступ к нежелательным файлам или возможностям, контролировать доступные действия для сервисов и многое другое. В Linux существует всего три вида прав – право на чтение, запись и выполнение, а также три категории пользователей, к которым они могут применяться – владелец файла, группа файла и все остальные.

Эти права применяются для каждого файла, а поскольку все в системе Linux, даже устройства, считаются файлами, то, получается что эти права применимы ко всему. Мы более подробно рассматривали как работают права доступа к файлам Linux в отдельной статье, а этой, я хочу остановиться на команде chmod, которая используется для установки прав.

  • Команда chmod Linux
  • Примеры использования chmod
  • Выводы

Эта команда имеет типичный для команд linux синтаксис, сначала команда, затем опции, а в конце файл или папка, к которой ее нужно применить:

$ chmod опции права /путь/к/файлу

Сначала рассмотрим какими бывают права доступа linux и как они устанавливаются. Пред этим рекомендую прочитать статью про права, ссылка на которую есть выше. Есть три основных вида прав:

  • r – чтение;
  • w – запись;
  • x – выполнение;
  • s – выполнение  от имени суперпользователя (дополнительный);

Также есть три категории пользователей, для которых вы можете установить эти права на файл linux:

  • u – владелец файла;
  • g – группа файла;
  • o – все остальные пользователи;

Синтаксис настройки прав такой:

группа_пользователейдействиевид_прав

В качестве действий могут использоваться знаки “+” – включить или “-“ – отключить. Рассмотрим несколько примеров:

  • u+x – разрешить выполнение для владельца;
  • ugo+x – разрешить выполнение для всех;
  • ug+w – разрешить запись для владельца и группы;
  • o-x – запретить выполнение для остальных пользователей;
  • ugo+rwx – разрешить все для всех;

Но права можно записывать не только таким способом. Есть еще восьмеричный формат записи, он более сложен для понимания, но пишется короче и проще. Я не буду рассказывать как считать эти цифры, просто запомните какая цифра за что отвечает, так проще:

  • – никаких прав;
  • 1 – только выполнение;
  • 2 – только запись;
  • 3 – выполнение и запись;
  • 4 –  только чтение;
  • 5 – чтение и выполнение;
  • 6 – чтение и запись;
  • 7 – чтение запись и выполнение.

Права на папку linux такие же, как и для файла. Во время установки прав сначала укажите цифру прав для владельца, затем для группы, а потом для остальных. Например, :

  • 744 – разрешить все для владельца, а остальным только чтение;
  • 755 – все для владельца, остальным только чтение и выполнение;
  • 764 – все для владельца, чтение и запись для группы, и только чтение для остальных;
  • 777 – всем разрешено все.

Каждая из цифр не зависит от предыдущих, вы вбираете именно то, что вам нужно. Теперь давайте рассмотрим несколько опций команды, которые нам понадобятся во время работы:

  • -c – выводить информацию обо всех изменениях;
  • -f – не выводить сообщения об ошибках;
  • -v – выводить максимум информации;
  • –preserve-root – не выполнять рекурсивные операции для корня “/”;
  • –reference – взять маску прав из указанного файла;
  • -R – включить поддержку рекурсии;
  • –version – вывести версию утилиты;

Теперь, когда вы знаете опции и как настраиваются права доступа chmod, давайте рассмотрим несколько примеров как работает команда chmod linux.

Примеры использования chmod

Я не буду приводить много примеров, так как там и так все более-менее понятно после пояснения правил создания выражений установки прав. Сначала самый частый случай – разрешить выполнения скрипта владельцу:

chmod u+x file

Или можно воспользоваться цифровой записью:

chmod 766 file
ls – l file

Недостаток цифровой записи в том, что вы не можете модифицировать уже существующие права доступа linux.

Например, в первом варианте вы просто добавили флаг выполнения для владельца файла, а все остальные права оставили неизменными.

В восьмеричном варианте мы полностью заменили текущие права новыми – все для владельца и чтение/запись для группы и остальных. Как видите, права установлены как и ожидалось. Теперь отключим выполнение владельцем:

chmod u-x file

И снова проверяем:

ls -l file

Дальше разрешим только чтение всем, кроме владельца:

chmod 744 file
ls -l file

Или отберем все права:

chmod ugo-rwx file

Файлы с правами 000 недоступны никаким пользователям, кроме суперпользователя и владельца. Вернем права обратно:

chmod 755 file
ls -l file

Такая же ситуация с файлами, владельцем которых вы не являетесь, если вы хотите изменить их права – используйте sudo. Из модификаторов прав вы можете конструировать любые последовательности, я думаю тут нет смысла разбирать их все. Для того чтобы поменять права на все файлы в папке используйте опцию -R:

chmod -R ug+rw dir
ls -l dir/

Также вы можете смотреть подробную информацию про вносимые изменения, например:

chmod -Rv ug+rw dir

Выводы

В этой небольшой статье была рассмотрена команда chmod linux. Она очень часто используется наряду с такими командами, как chown и umask для управления правами. Надеюсь, эта информация была полезной для вас. Если у вас остались вопросы, спрашивайте в комментариях!

(9

Источник: https://losst.ru/komanda-chmod-linux

Права доступа CHMOD: что такое и как изменить?

Аббревиатура CHMOD обозначает право доступа, представляющее собой набор символов, сообщающие серверу – кто и какие действия может совершать с соответствующим каталогом или файлом. В большинстве случаев право доступа определяет следующие действия: чтение, запись, исполнение.

Большая часть серверов функционирует на базе UNIX, именно поэтому мы подробно познакомимся с установкой прав доступа для таких серверов. В системах UNIX принято разделение всех пользователей на три основные категории:

  • «user» – владелец файла;
  • «group» – люди, которым владелец дал право доступа через FTP;
  • «world» – остальные (люди, которых просто заходят на сайт через браузер).

Когда происходит соединение с сервером, он автоматически определяет – в какой категории пользователей вы состоите.

К примеру, осуществляя подключение к серверу по FTP, вы входите, как владелец сайта, используя свое имя пользователя, поэтому сервер причисляет вас к категории «user».

Другие же пользователи, выполняя подключение по FTP, будут причислены к «group». Когда посетители вашего сайта попадают на него через свой собственный браузер, то они попадают в категорию «world».

После определения – к какой из трех основных групп относится пользователь, он получает право на выполнение действий с объектами. Проще говоря, пользователь может прочитать, записать либо выполнить файл.

Для того чтобы посмотреть каталог, он должен иметь атрибут исполнения, а для того чтобы просмотреть содержимое каталога, он должен быть читаемым (иметь атрибут чтения). Чтобы создать новый каталог или файл в уже существующем каталоге, нужно иметь право на выполнение записи. Поэтому чтобы осуществлялось выполнение приложения либо скрипт, нужно ставить на каталог атрибут выполнения и чтения.

Практика

Перейдем к практическому закреплению изложенного материала. Мы знаем, что существует три типа действий с объектом (выполнение, чтение, запись) и три основные группы пользователей (user, group, world).

Права на файл или папку задаются тремя цифрами (например 755). Указанная в обозначении первая цифра устанавливает права для категории «user», вторая – для «group» и третья – для «world».

Чтобы распределить права для конкретных групп, приняты следующие цифровые обозначения:

1 – execute (право на выполнение)

2 – write (право выполнять запись)

4 – read (право осуществлять чтение)

Выполняя сложение цифр, можно установить право на некоторые действия.

К примеру:3(2+1) устанавливается доступ на запись и выполнение;5(4+1) устанавливается доступ на чтение и выполнение;6(4+2) устанавливается доступ чтение и запись;7(4+2+1) устанавливается доступ на чтение, запись и выполнение.

В итоге, если мы укажем права 755, это будет означать, что User (владелец сайта) может читать, записывать и выполнять (4+2+1=7), Group (люди, которым владелец дал доступ по FTP) могут читать и выполнять (4+1=5), World (обычные пользователи, которые видят сайт через браузер) могут читать и выполнять (4+1=5).

Всего существует восемь вариантов сочетаний:0 – полный запрет 1 – выполнение 2 – запись3 – запись, выполнение4 – чтение5 – чтение, выполнение6 – чтение, запись

7 – чтение, запись, выполнение

Права CHMOD в цирах и буквах

Одни и те же права можно указывать как цифрами (вы научились это делать в прошлом абзаце), так и буквами. Вот соответствующая таблица:

Права Цифры Буквы
Полный запрет
Чтение 4 r–
Запись 2 -w-
Выполнение 1 –x
Чтение и запись 6 rw-
Чтение и выполнение 5 r-x
Чтение, запись, выполнение 7 Rwx

Как поменять права доступа на файл или папку?

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

Filezilla

Выбираете файлпапку, кликаете по ним правой кнопкой и выбираете “Права доступа к файлу”.

Far Manager

Выбирайте файлпапку и жмите Ctrl+A.

Total Commander

Зайдите в верхнем меню в Files и нажмите Change Attributes.

Flash FXP

Выберайте файлпапку, жмите по ним правой кнопкой и выбирайте Аттрибуты CHMOD.

Симольный и абсолютный режимы CHMOD

Также, очень важно знать более подробную характеристику о командах UNIX. «Сhmod» имеет два типа режима: символьный и абсолютный (цифровой) режимы. Команда «chmod», применяемая в Unix, либо команда «site chmod», применяемая в FTP-менеджерах, используются в двух перечисленных выше режимах.

При Абсолютном режиме применяется рассмотренный выше 3-х цифровой код права доступа, а для установки прав доступа при символьном режиме используется буквенный формат. Иными словами, при символьном режиме применяются буквы «w», «r», «x», которые обозначают write, read и execute, а также «u», «g», «о» и «a», обозначающие user, group, other (world), и all (все).

Читайте также:  Crm система для интернет-магазина — что это такое, зачем она нужна и мой отзыв о retailcrm

Как правило для файлов устанавливаются права 644, а для папок – 755.

Только эксперты отвечают на ваши вопросыНе нашли ответ на свой вопрос?Задайте его экспертам! Ответ приходит очень быстро и прямо на ваш email.

Источник: https://ru.hostings.info/termins/chmod.html

755 или права доступа к файлам и папкам

12.03.

2009 30576 Пишу 15 комментариев компьютерная теория

Зачем я вообще взялся за эту статью? Частенько сталкиваюсь с ситуацией, когда начинающие кодеры веб-страниц задают примерно такой вопрос: «Я тут себе форум бесплатный скачал. Хочу его установить. А в настройках написано, что к отдельным файлам и целым папкам надо установить какие-то права доступа. Указывают цифры 777 или 755. А что это такое? Где и как устанавливаются эти права?».

Знакомая ситуация? Ходил-бродил я по форумам и понял, отвечать на эти вопросы через каждую неделю-две — скучно. Так и родилась эта статейка. Итак, приступим…

Но в самом начале скажу, не советую я вам пользоваться сторонними скриптами, которые требуют прав 777. Позже вы сами поймете почему.

Откуда же «ноги растут» у проблемы c правами доступа? Могу с полной ответственностью заявить: во всем виноват UNIX. Именно от его прав доступа к файлам и папкам всё и исходит. Немного теории. Все пользователи в юниксе располагаются по группам. Одни и те же пользователи могут членствовать сразу в нескольких группах.

Права доступа им можно раздавать как для целых групп, так и индивидуально. Администраторы (входят в группу wheel), это — пользователи, которые могут присваивать те, или иные права доступа к файлам себе и остальным пользователям. Это просто и удобно.

Предположим, есть группа пользователей, которым разрешено лишь читать документы из определенной папки и совсем нет никакого доступа в другие места системы.

Итак, первое: права доступа различны у разных групп пользователей и второе: эти права делятся по трем категориям (право на чтение файла, право на запись в файл, право на запуск файла, как программы). В этом месте мне прийдется сделать отступление от темы.

Самое место поговорить о двоичных числах и двоичной системе счисления. Не волнуйтесь, я затрону эту тему лишь вскользь, ровно настолько, насколько это необходимо в данной статье. В двоичной арифметике всего два числа, которые можно записать одним символом, это — 0 и 1.

А как же в такой системе записать число 2, 3 и т.д.? Да также, как и в привычной нам десятичной. Когда все числа от 0 до 9 исчерпаны, далее числа мы составляем из двух и более цифр. Так же мы поступим и здесь. Число 2 в двоичной системе счисления, это — 10.

Я приведу соответствие десятичных чисел и двоичных для большей наглядности.

Здесь видно, когда не хватает 2 цифр, числа уже состоят из 3 цифр и т.д. Десятичное число 8, например, уже выглядело бы в двоичной системе как 1000. Честное слово, на этом о двоичных числах всё. Возвращаемся к нашей теме.

Помните, пару абзацев назад я писал о трёх категориях прав доступа к файлам? Это были чтение, запись и запуск. Если условиться, что разрешение в любой из этих категорий кодируется единицей (1), а запрет нулём (0), то несложно заметить, что закодировать разрешение читать файл и запрет записи и запуска можно тремя цифрами: 100.

А разрешить всё тремя единичками: 111. Давайте вспомним приведенную выше таблицу соответствия двоичных чисел привычным нам десятичным. Первый пример, право только на чтение (100) можно, если принять записи из ноликов и единиц за двоичные числа, записать как четверку. Двоичное число 100 = 4 десятичному.

Второй пример с тремя единицами, можно записать как десятичное 7.

Именно так и появляются цифры в тех самых правах доступа к файлам: семёрки и пятёрки, четвёрки и нолики. Но внимательный читатель заметит: «Секундочку, а почему же этих цифр три? Почему, говоря о правах, пишут 777 или 755?» И, конечно, будет прав. Дело здесь вот в чём.

У каждого файла в юниксе есть хозяин. Это либо пользователь, создавший его, либо тот, кого администраторы указали в данном качестве. Скажем, администратор создает файл и назначает его хозяином рядового пользователя из какой-то группы.

С этого момента данный пользователь сам может назначать права доступа к этому файлу другим пользователям системы. В этой связи, все пользователи делятся на три основных категории: хозяин файла, те кто входит с ним в одну группу, все остальные.

Для каждой их этих категорий права доступа указываются отдельной цифрой. Вот их три и получается.

Приведем пример: У файла установлены права 755. Первая цифра — 7, это значит, что хозяин имеет на файл все права: чтение, запись и запуск (7 — 111). Вторая цифра — 5, пользователи из одной с хозяином группы имеют возможность читать и запускать файл, но не могут в него писать (5 — 101). Аналогично и все остальные — третья цифра тоже пятерка.

Часто пишут о правах доступа не в цифрах, а буквами. В этом случае права обозначают так: r (read — чтение), w (write — запись), x (execute — запуск). Если того или иного права нет, вместо буквы пишут знак минус. Используя такую форму записи, можно права доступа 755, например, обозначить так: rwxr-xr-x. Такая запись многим покажется более наглядной. Что ж, может и так.

В юниксподобных ОС для задания прав доступа к файлам служит команда chmod. О том как ей пользоваться я здесь писать не стану (это выходит за тему данной статьи). Напомню лишь о том, что сайты многих из вас, возможно распологаются именно на таких серверах.

Узнать это можно, например связавшись с вашим хостером (компанией, предоставившей вам хостинг).

Если окажется, что сайт у вас расположен на сервере под управлением Windows, вам также придется задавать вашим файлам и папкам права доступа, хотя раньше на таких веб-серверах всё сводилось к ситуации, когда всё разрешено — 777.

Кто-то, возможно посетует, что я не написал здесь о том как выставить всё же права доступа к файлам? Что ж, могу сказать одно, файлы на сервер можно выложить несколькими способами, точнее используя разные протоколы. Популярными являются ftp и ssh. Второй часто называют шелом.

Если ваш хостер позволяет им пользоваться, вы сможете в этом случае воспользоваться юниксовой командой chmod для указания прав доступа к вашим файлам. Если же вы выкладываете файлы по ftp-протоколу, то, скорее всего, для этой цели используете какую-нибудь программу.

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

А я попытался объяснить что означают цифры и буквы в этих записях. Дерзайте.

css (1), wordpress (4), изыски словообразования (4), компьютерная теория (9), компьютерный практикум (5), кулинария (1), мобильная связь (1), мои университеты (2), облако тегов (1), проза (33), рифмы (4), свои функции (1), теле2 (1), фельетон (1), шрифты (1), эссе (1), юмор (8)

Источник: http://www.vsmirnov.ru/articles/access.html

Права доступа CHMOD – что это такое и как их можно назначить

Иногда при создании сайта необходимо назначить определенные права доступа CHMOD для определенных файлов или каталогов.

Неправильно установленные права доступа могут быть причиной различных проблем с безопастностью и ошибок, возникающих при работе какого либо скрипта или расширения CMS.

Очень часто у новичков возникает множество проблем и вопросов связанных с правами доступа, поэтому в данной статье мы рассмотрим что такое права доступа CHMOD, для чего они предназначены и как можно изменить права доступа для того или иного файла или директории.

Права доступа – это специальные атрибуты файла или директории, которые определяют, кто и что можно сделать с определенным файлом или директорией.

CHMOD – это команда смены прав на различные файлы и каталоги, в операционных системах UNIX.

В системах UNIX, на которых работает большинство серверов, где и размещаются сайты, все пользователи разделяются на три группы:

owner – владелец файла или каталога, т. е. человек который его создал;

group – некоторая группа пользователей известная владельцу;

public – все остальные пользователи, например пользователи интернета.

Когда вы обращаетесь к серверу, например при помощи FTP клиента или браузера, сервер определяет, к какой группе пользователей вы относитесь и в зависимости от этого, дает вам право выполнять те или иные действия с файлом или папкой.

Пользователь может получить следующие права доступа CHMOD:

  • прочитать содержимое файла (read);

  • записать информацию в файл (write), отредактировать или изменить файл;

  • запустить файл на выполнение (execute), в том случае если данный файл является программой;

Все тоже касается и каталогов, за исключением последнего пункта.  Права на выполнение применимо к каталогу обозначают то, что можно просмотреть содержимое каталога, т. е. посмотреть какие файлы и каталоги в нем находятся.

Таким образом, мы определили, что существуют три группы пользователей и три действия, которые данные пользователи могут выполнить.

Существует символьная и цифровая запись прав.

Символьная запись прав доступа CHMOD

В качестве символьной записи используются буквы.

Права на чтение (Read) – заменяют символом R

Права на запись (Write) – символом W

Права на исполнение (eXecute) – символом X

Права записываются в следующем порядке:

Запись – Чтение – Исполнение

Рассмотрим некоторые варианты записи прав:

r  w  x – означает что есть права на чтение, запись и выполнение;

r  w  – – если стоит прочерк, значит данного права нет, в данном случае есть права только на чтение и запись;

r  –  – – в данном случае файл можно только читать.

Числовая запись прав доступа CHMOD

Цифра 4 – присваивает право на чтение;

Цифра 2 – присваивает право на запись;

Цифра 1 – право запуска на выполнение файла.

Суммируя числа можно назначить все или несколько прав одним числом.

Например:

  • если сложить все числа, получиться цифра 7, таким образом цифра 7 будет обозначать что данный файл можно читать, записывать и запускать на выполнение;

  • если сложить 4 и 2 будет 6, таким образом, цифра 6 будет обозначать, что данный файл можно читать и записывать;

  • если сложить 4 и 1 будет 5, таким образом, 5 будет обозначать, что данный файл можно читать и запускать на выполнение.

Цифра 0 – обозначает, что с этим файлом ничего невозможно сделать;

Наиболее часто используют цифровую запись прав, т. к. она является наиболее удобной. Всего при помощи трех цифр можно задать права для всех трех групп пользователей.

Например, установив права 777, мы разрешим чтение, запись и исполнение для всех групп пользователей. В символьной записи это будет выглядеть так: r w x   r w x   r w x, т. е. первые три символа это права для владельца, следующие для группы, ну и последние это права для всех групп пользователей.

Права 755 обозначают, что владелец может все, а группа и остальные пользователи только читать и запускать на выполнение, но изменять файлы они не могут. В символьном написании это будет выглядеть так: r w x   r – x   r – x.

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

Для того чтобы посмотреть и изменить права доступа CHMOD на файлы и каталоги, подключитесь к серверу, на котором расположен ваш сайт при помощи программы FileZilla, далее кликните правой кнопкой мыши по необходимому каталогу или файлу и из контекстного меню выберите пункт «Права доступа к файлу…».

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

Помните, что изменение прав доступа может повлиять на безопасность вашего сайта. Поэтому будьте осторожны при изменении прав. Иногда, права доступа, указываются в инструкции, которая прилагается к тому или иному скрипту или расширению.

Материал подготовлен сайтом: WebMasterMix.ru

Рекомендуем ознакомиться:

Подробности

Источник: http://WebMasterMix.ru/raznoe/110-prava-dostupa-chmod.html

Ссылка на основную публикацию