sonyps4.ru

Значение цифр и полномочия. Как все это сделать

Всем привет! Сегодня мы проговорим про права доступа к файлам и папкам, узнаем как изменить атрибуты папок и файлов и как это правильно сделать в WordPress. Очень важно правильно установить права доступа WordPress, чтобы защитить свой блог от взлома и при этом не нарушить его работоспособность.

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

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

Как правило мы размещаем свои сайты на хостингах, работающих под Unix-подобных операционных системах (Linux, например). Эти операционные системы отличаются от привычной рядовому юзеру Windows, в частности тем, что позволяют гибко задавать различные права доступа для разных групп лиц.

CHMOD (анг. change file mode) - изменение прав доступа к файлам в ОС типа Unix.

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

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

  • Владелец файла
  • Члены группы, к которой относится владелец
  • Остальные пользователи

Для каждого из этих видов пользователей существует три права: чтение (4), редактирование (2), выполнение (1). Если пользователю нужно задать несколько прав, то цифры в скобках складываются:

Чтение + редактирование = 4 + 2 = 6

Чтение + редактирование + выполнение = 4 + 2 +1 = 7

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

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

Права можно записать другим способом – латинскими буквами

  • Чтение (Read) - r
  • Редактирование (Write) - w
  • Запуск на выполнение (Execute) - x
  • Отсутствие прав - (0) —

Примеры прав доступа:

Пользователь

Группа

Остальные
600 только владелец имеет право читать и редактировать
r-- 644 владелец файла, владелец имеет право читать и редактировать, члены группы и остальные только читать
rw- 666 любой пользователь имеет право читать и редактировать
700 только владелец файла имеет право читать, редактировать и запускать на исполнение
--x 711 владелец файла имеет право читать, редактировать и запускать на исполнение, члены группы и остальные пользователи имеют право запускать на исполнение, но не могут читать и изменять
r-x 755 владелец файла имеет право читать, редактировать и запускать на исполнение, члены группы и остальные имеют право читать и запускать на исполнение, но не могут записывать
rwx 777 любой пользователь имеет право читать, редактировать и запускать на исполнение

По умолчанию для папок выставляются права - 755, а для файлов - 644.

Как установить в WordPress права на папки и файлы

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

Чтобы установить атрибуты файлу, выделите его, щелкните правой кнопкой мыши – «Изменить атрибуты». В открывшемся окне отметьте нужные галочками или впишите цифрами. Какие именно права каким файлам назначать мы рассмотрим чуть позже.

«Применить рекурсивно» — очень нужны параметр, позволяет в один клик установить нужные атрибуты не только папке, но и всем ее подпапкам и файлам.

Как изменить атрибуты файла в Total Commander

Об этом тоже уже рассказывалось в статье, посвященной . Зайдите на сайт по FTP, выделите нужный файл или папку. Вкладка Файл -> Изменить атрибуты (Files -> Change Attributes) – выставите нужное.

В FileZilla все аналогично. Кликните правой кнопкой мыши по файлу или папке -> «File permissions…».

Правильные права на файлы и папки WordPress

Перейдем к самому интересному. Какие же права будет правильным установить для той или иной папки или файла в вордпресс.

Если с момента установки WordPress или переноса блога на хостинг вы не устанавливали для WordPress права на папки и файлы, обязательно сделайте это! Если когда-то вы это делали, рекомендую проверить, правильно ли у вас заданы атрибуты.

  1. Как уже было сказано выше, права 755 на папки и 644 на файлы.
  2. Задайте следующие права файлу wp-config.php, расположенному в корне: 600 -rw---

WordPress права доступа с использованием плагинов

Я предпочитаю проверить все вручную, но кому-то будет удобнее использовать плагины. В любом случае, не стоит верить плагинам на сто процентов.

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

После зайдите в «Параметры» -> «File Checker» и нажмите кнопку «Run File Check» . Плагин просканирует все файлы блога и можно будет просмотреть, где какие установлены права — все наглядно видно. Файлы, у которых права 777 будут отмечены красным крестиком — что призывает обратить особое внимание и исправить ситуацию.

Кроме наглядности я не вижу других преимуществ этого плагина. Давайте рассмотрим еще один -

Этот плагин куда полезнее. После установки в меню появится отдельный раздел «WP Security» . В нем выберите «WP Info» и прокрутите до «File Scan Report» .

В этом отчете восклицательным знаком отмечены файлы и папки для которых установлены не безопасные права. В третье колонке перечислены рекомендованные для данных файлов права (Suggested permissions). При нажатии на кнопку «Apply suggested permissions» , правильные атрибуты выставятся автоматически.

Что мы узнали о правах доступа WordPress

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

Берегите себя и свой блог! И чтобы не пропустить новых уроков по безопасности блога, на обновления.

Разработанный ещё в 70-е годы прошлого века механизм распределения прав в операционных системах оказался настолько успешным, что используется в UNIX-системах до сих пор, то есть уже больше сорока лет.

Права доступа 777 - что это?

Базовый принцип способа распределения доступа включает в себя существование обязательных атрибутов, таких как имена пользователей системы, а также их групп. Почти очевидным является тот факт, что в Linux у каждого юзера может быть только одно имя, которое должно быть уникально в рамках этой системы. С помощью никнейма пользователь входит в систему, то есть проходит авторизацию. Помимо этого, операционка содержит конечное число групп пользователей. Каждый из них может входить в состав одной или нескольких групп. Редактировать свойства, создавать и удалять группы может суперпользовать - root. Участники различных групп имеют различные права для действий в системе. Так, например, администратор владеет большими правами, чем гость.

Индексный дескриптор (который есть у каждого файла) содержит логин владельца и название группы пользователей, имеющей права к данному файлу.

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

Как изменить права доступа

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

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

Мнемонические обозначения прав доступа

Доступ к файлам в системе прав имеет такие вариации:

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

По отношению к каталогам действует такия система прав:

  • r — пользователь может читать любые файлы директории;
  • w — с этими правами можно создавать и удалять файлы в папке, даже если некоторые из них в каталоге принадлежат другому юзеру;
  • x — обозначает право входа в директорию. Если вы имеете права w к вложеной папке но не имеете прав на папку уровнем выше, то и к своей папке никак не пробьетесь.

Всего возможно 8 различных комбинаций, которые приведены на рисунке ниже.

С помощью таблицы ниже вы сможете понять, как реализовать сложные варианты назначения прав, а также как установить права доступа 777, используя мнемонические спецификации chmod.

Как установить права доступа 777 через SSH

Приведем некоторые примеры использование команды chmod:

  • chmod 711 file_name.txt.

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

При использования кода 775 мы предоставим владельцу и всей его группе полный перечень прав. Остальные же пользователи не смогут выполнять изменения в файле. Нужно сказать, что для указания файла только по его собственному имени, необходимо находится в директории, где расположен этот файл. В ином случае вы можете переместиться в эту директорию командой cd имя_директории/имя_вложеной_директории или использовать следующую структуру:

  • chmod 775 /var/bin/file_name.txt.

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

  • chmod -R 711 file_name.

В итоге, как выставить права доступа 777 для файла или каталога, не будет проблемой - просто необходимо залогиниться на вашем веб-сервере через SSH и выполнить команду:

  • chmod 777 имя_файла.

Как установить права доступа 777 в контрольной панели сервера

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

Иногда, в случае срочной надобности, у вас может не быть доступа к Windows-клиенту, поэтому можно осуществить смену прав доступа через контрольную панель веб-сервера. Для этого, используя файловый менджер вашей контрольной панели, выберите необходимые файлы и нажмите на кнопку Change Permissions ("Смена прав"). Далее необходимо будет так же отметить всё галочками, и теперь вопрос, как установить права доступа 777 на папку больше не будет для вас сложным.

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

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

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

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

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

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

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

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

Если вы подключаетесь к серверу по и заходите под своим логином и паролем, то будете идентифицированы как “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”. Могут находиться папки , в которые загружается контент, в том числе изображения.

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

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

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

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

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

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

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

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

В операционных системах семейства Unix работа с файловой системой требует изменения и установки прав доступа на определенные типы данных. Такие меры позволяют снизить риск несанкционированного использования или просмотра системной и иной информации, которая имеет значение для корректной работы сервера. Однако использовать подобную защитную функцию имеет смысл только для многопользовательских операционных систем. В ином случае ее установка будет бесполезной тратой времени. Что же означает данный термин? В любой операционной системе, которая предусматривает эксплуатацию разными группами пользователей, существует ограничительный элемент. Этот элемент назначается системным администратором. Он регулирует возможности и порядок работы с подвластной ему директорией для всех типов пользователей: владельца файлов, пользователей, состоящих в группе владельца, а также прочих лиц, имеющих доступ к серверу через веб-браузер.

Права доступа

Атрибут 777 позволяет читать, запускать, переписывать и создавать файлы в директории всем перечисленным выше типам пользователей. Данный атрибут существует только для платформы Linux. Эта функция предоставляет полные возможности для взаимодействия с информацией. К сожалению, пока она далека от существующих представлений о безопасности.

Права доступа 777: задание числа

В операционной системе Unix возможности доступа для групп записываются в одну строку, которая состоит из трех цифр. Каждая из этих строк указывает права одного из типов пользователей. Это значит, чточисленное сочетание является арифметической суммой: (1) (выполнение), 2 (запись), 4 (чтение). Численное сочетание описывает возможности, которые дает данная функция.

Как можно установить права 777?

Выставить данный атрибут, зная расшифровку его числового обозначения, не составит особого труда. Чтобы сделать это, пользователю потребуется любой файловый менеджер, который поддерживает FTP соединение с сервером, на который можно зайти от имени администратора. Ответ на вопрос об установке прав доступа 777 на папку совершенно ничем не отличается от инструкции для файла. На сервере необходимо выделить желаемый объект и вызвать контекстное меню кликом правой кнопки мыши. После этого необходимо выбрать пункт «Файл», а затем «Изменить атрибуты». В открывшемся окне менеджера необходимо вбить комбинацию цифр и поставить напротив каждой из групп пользователей галочки. Также для серверной системы Unix предусмотрен более простой способ. Он требует только ввода команды в формате chmod 777 %filename% в панели управления хостера.

Многопользовательские сервера

Важно помнить, что права 777 существуют только для файлов, которые располагаются непосредственно на многопользовательском сервере и не устанавливаются на отдельный компьютер. Также предусмотрена возможность выставления данных прав на каталоги. В данном случае поведение обозначенных параметров будет совершенно таким же, как для папки. Разница заключается только в том, что вместо чтения объектов, находящихся внутри, пользователь получит возможность просматривать список всего содержимого. Для установки прав на каталоги необходимо использовать описанные выше способы. Также следует помнить о том, что выставить этот вид доступа для пакета «Денвер» нельзя, так как он имитирует работу сетевого веб-сервиса, однако на самом деле таковым не является, осуществляя свою деятельность на платформе Windows. Данная операционная система не относится к типу серверных, поэтому при установке скриптов на «Денвер» требования об изменении прав доступа необходимо просто игнорировать.

Права полного доступа: недостатки

Серверная система довольно редко использует права 777. Обычно большинство хостеров придерживаются прав вида 755. Отличаются они немного урезанными функциями для всех пользователей, кроме владельца. Такие права лишают всех остальных пользователей возможности создания и записи файлов. При попытке выставить права, которые предоставляют полный доступ ко всему содержимому, которое находится на сервере, безопасность ресурса может быть нарушена. Злоумышленники не упустят шанса воспользоваться такое значительной уязвимостью в системе защиты информации. Неверно выставленные настройки доступа предоставляют любому пользователю полную свободу действий. Таким образом, нарушить работу сервера могут не только заинтересованные в этом лица, но и просто неопытные пользователи. Поэтому перед установкой прав доступа 777 стоит хорошенько подумать, не приведут ли подобные действия к взлому информационного ресурса.



Загрузка...