Меню
Бесплатно
Главная  /  Насморк у детей  /  Изменение прав на файлы или папки в Linux. Настройка прав для файлов и папок Привилегии для групп пользователей

Изменение прав на файлы или папки в Linux. Настройка прав для файлов и папок Привилегии для групп пользователей

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

Такая защита обеспечивается за счет того, что 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 для каталога (папки) при выборе «Изменить атрибуты файла» появится аналоговое окно, несколько отличное от расположенного выше, а именно:

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

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

Какие бывают права доступа? Право на выполнение, на запись в папку и на чтение. Это важно сделать при появлении нового сайта и это нужно сделать при добавлении Вашего сайта на определенные сервисы, например, биржу продажи ссылок Sape. Если хотите узнать поподробнее о правах доступа, поищите в Интернете: у меня блог не теоретической, а практической направленности, т.е. я немного говорю о том, ЧТО надо сделать и подробно разбираю, КАК это надо сделать.

Рассматривать процесс изменения прав доступа будем на примере Total Commander (далее -ТС). Разберем подробненько, что и как надо сделать при появлении на свет нового сайта.

Что надо сделать?

Надо установить права доступа на папки и файлы, расположенные в корне Вашего сайта:

1. до начала внесения изменений (изменения настроек)

— папка «uploads» (загрузки) – права 777 (установить),

— остальные папки – права 775 (проверить, при необходимости — установить),

— все файлы во всех папках – права 644 (проверить, при необходимости – установить).

2. после изменения настроек:

— файл sitemap.xml (если Вы уже установили xml-карту сайта. Она создается автоматически при активации плагина Google XML Sitemaps и нажатии ссылки «создать впервые») – права 777,

— остальные файлы, расположенные в корне сайта (во всех!) – права 444. Это означает – «только для чтения» и внесение изменений в файлы невозможны. Для редактирования файлов в будущем, Вам необходимо будет изменить права на 644 и сразу после окончания опять поставить права 444. Это в Ваших интересах! – повысится безопасность блога.

Как все это сделать?

Открываете ТС и заходите в корневой каталог, в нем открываете папку wp-content. Щелкаете один раз по папке uploads (тем самым выделяете ее и даете понять ТС, что Вы намерены работать с ней). Далее, в левом верхнем углу нажимаете «Файл», откроется длинный список команд. В верхней части увидите строчку «Изменить атрибуты»:

Кликаете по «Изменить атрибуты», появляется окно «Изменение атрибутов»:

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

Выставив 777, не забудьте нажать ОК. Теперь проверьте, что на остальных папках стоят права 775. Потом перейдите к работе с файлами и проверьте, что у них выставлены права 644:

Теперь можно приступать к редактированию файлов. После завершения редактирования следует в файлах (повторяю, во всех файлах корня!) выставить права 444. Для этого во второй строчке окна «Изменения атрибутов» (см.рис.4) надо убрать флажок с «Запись». Для тех, кому трудно это проделать;-) — другой путь. Напишите в окошке вместо 644 другие цифры – 444 и программа сама установит все как надо.

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

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

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

Изначально каждый файл имел три параметра доступа. Вот они:

  • Чтение - разрешает получать содержимое файла, но на запись нет. Для каталога позволяет получить список файлов и каталогов, расположенных в нем;
  • Запись - разрешает записывать новые данные в файл или изменять существующие, а также позволяет создавать и изменять файлы и каталоги;
  • Выполнение - вы не можете выполнить программу, если у нее нет флага выполнения. Этот атрибут устанавливается для всех программ и скриптов, именно с помощью него система может понять, что этот файл нужно запускать как программу.

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

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

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

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

Специальные права доступа к файлам в Linux

Для того, чтобы позволить обычным пользователям выполнять программы от имени суперпользователя без знания его пароля была придумана такая вещь, как SUID и SGID биты. Рассмотрим эти полномочия подробнее.

  • SUID - если этот бит установлен, то при выполнении программы, id пользователя, от которого она запущена заменяется на id владельца файла. Фактически, это позволяет обычным пользователям запускать программы от имени суперпользователя;
  • SGID - этот флаг работает аналогичным образом, только разница в том, что пользователь считается членом группы, с которой связан файл, а не групп, к которым он действительно принадлежит. Если SGID флаг установлен на каталог, все файлы, созданные в нем, будут связаны с группой каталога, а не пользователя. Такое поведение используется для организации общих папок;
  • Sticky-bit - этот бит тоже используется для создания общих папок. Если он установлен, то пользователи могут только создавать, читать и выполнять файлы, но не могут удалять файлы, принадлежащие другим пользователям.

Теперь давайте рассмотрим как посмотреть и изменить права на файлы в linux.

Как посмотреть права доступа к файлам в Linux

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

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

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

Рассмотрим подробнее, что значат условные значения флагов прав:

  • --- - нет прав, совсем;
  • --x - разрешено только выполнение файла, как программы но не изменение и не чтение;
  • -w- - разрешена только запись и изменение файла;
  • -wx - разрешено изменение и выполнение, но в случае с каталогом, вы не можете посмотреть его содержимое;
  • r-- - права только на чтение;
  • r-x - только чтение и выполнение, без права на запись;
  • rw- - права на чтение и запись, но без выполнения;
  • rwx - все права;
  • --s - установлен SUID или SGID бит, первый отображается в поле для владельца, второй для группы;
  • --t - установлен sticky-bit, а значит пользователи не могут удалить этот файл.

В нашем примере, файл test1 имеет типичные разрешения для программ, владелец может все, группа только чтение и выполнение, а все остальные - только выполнение. Для test2 дополнительно установлен флаг SUID и SGID. А для папки test3 установлен Sticky-bit. Файл test4 доступный всем. Теперь вы знаете как посмотреть права на файл linux.

Как изменить права файла в Linux

Чтобы изменить права на файл в linux вы можете использовать утилиту chmod. Она позволяет менять все флаги, включая специальные. Рассмотрим ее синтаксис:

$ chmod опции категория действие флаг файл

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

  • u - владелец файла;
  • g - группа файла;
  • o - другие пользователи.

Действие может быть одно из двух, либо добавить флаг "+", либо убрать флаг - "-". Что касается самих прав доступа, то они аналогичны выводу утилиты ls: r - чтение, w - запись, x - выполнение, s - suid/sgid, в зависимости от категории, для которой вы его устанавливаете, t - устанавливает sticky-bit. Например, всем пользователям полный доступ к файлу test5:

chmod ugo+rwx test5

Или заберем все права у группы и остальных пользователей:

chmod go-rwx test5

Дадим группе право на чтение и выполнение:

chmod g+rx test5

Остальным пользователям только чтение:

Для файла test6 установим SUID:

А для test7 - SGID:

Посмотрим что получилось:

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

Выводы

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

На завершение хочу предложить неплохое видео про права доступа в linux:

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

Что такое «права доступа» в операционной системе

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

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

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

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

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

Как работают «права доступа»

По большому счёту, работа пользователя в любой операционной системе или программе - это обычная работа с файлами или папками. Изначально, обращаясь любому файлу или папке - пользователь волен сотворить с ними что угодно - выполнить, удалить, изменить (перезаписать) или создать новый объект. Однако, операционная система бдит - она всегда начеку - при каждом обращении пользователя к файлу или папке, при каждом его действии в пределах операционной системы, она скрупулёзно проверяет, разрешено или нет юзеру работать с данным файлом или папкой. Это и есть «права доступа». Таким образом, ограничиваются возможности пользователя в тех действиях, которые он (юзер) может сотворить с файлом или папкой на подконтрольной ему компьютерной территории.

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

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

Права доступа (chmod) вида 777 для серверных ОС Unix регламентируют разрешение или запрет для пользователя на такие действия, как: чтение, запись в папку или файл и выполнение исполнительных файлов

Что такое chmod

Что такое 777

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

  1. группа Owner - «Владелец папки или файла»
  2. группа Group - «Член группы владельца папки или файла»
  3. группа World или Public - «Все остальные пользователи»

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

Теперь осталось разобраться, кто такой «Владелец»,
что такое «Член группы владельца»
и кто это такие «Все остальные пользователи».

Владелец, член группы владельца и все остальные пользователи

Поскольку, мы здесь говорим про сервера, сайты и серверные ОС Unix, то:

Разделение всех пользователей на группы в серверных ОС Unix реализовано следующим образом - Владелец и Члены группы владельца подключаются к серверу, используя спецсвязь (FTP, SSH) (FTP, SSH-протокол), а все остальные пользователи заходят на сайт с веб-браузера (http-протокол)

Отсюда вытекает что, в зависимости от протокола обращения к файлу на сервере, серверная ОС Unix сразу делит пользователей на две части, либо - это владелец или член группы владельца, либо - все остальные пользователи. Основанием для такой «сортировки», (повторяюсь) является сетевой протокол соединения - если пользователь подключился к серверу, используя FTP-аккаунт (FTP-протокол), то это - или владелец или член его группы. А если пользователь зашёл на сервер с веб-браузера (http-протокол), то это уже третья группа - все остальные пользователи.

Таким образом, для серверной ОС Unix, между первыми двумя и третьей группами есть очень чёткое и легкопонятное разграничение - владелец и член его группы попадают на сервер, используя спецсвязь (FTP, SSH), а все остальные пользователи - через свои веб-браузеры.

А вот различия между первыми двумя группами - владельцем и членом его группы - сильно стёрты и завуалированы. Здесь уже начинаются дебри хостинг-пакета и индивидуального подхода для каждого случая.

Справка:
Все файлы в Unix (Linux) могут иметь двух владельцев: непосредственного своего владельца-создателя (user owner) и его группу (group owner). Под понятием группы владельца подразумевается некий список пользователей, который был создан самим владельцем для совместного пользования файликом или папочкой.

Таким образом, для серверной ОС Unix, владельцем файла или папки является непосредственно администратор сервера. Все остальные, кому владелец разрешит доступ к файлам на своём сервере и кто будет подключаться к этому серверу по FTP/SSH-протоколу - это члены группы владельца.

Под арендой дискового пространства понимается место на сервере, занимаемое именно файлами сайта. Как правило, это недорогие хостинг-пакеты, где их пользователи не имеют доступа к админпанели сервера (не путать с CP - контрольной панелью аккаунта). Соответственно, сидящие на таких пакетах, администраторы (владельцы) сайтов, при своём подключении по FTP-протоколу к серверу - попадают исключительно в группу владельца. Тогда как, сам владелец (администратор сервера) находится где-то там, «далеко в горах», в своём уютном рабочем кабинете технической службы хостера.

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

Для арендаторов серверов (реальных и виртуальных) - ситуация, несколько иная. При аренде сервера, арендующий сам устанавливает операционную систему, естественно, при этом - он является для этой системы непосредственным владельцем файлов. А вот создавать группу и вносить в неё других пользователей - это уже его, владельца дело.
Что из всего вышесказанного следует?

А вывод такой: - Арендаторы дискового пространства могут не заморачиваться с первой цифирькой вида (chmod) 777, поскольку они не владельцы, и никогда не будут владельцами своих файлов. Для них первая цифра - всегда должна быть семь. - Арендаторы серверов (реальных и виртуальных) могут не заморачиваться со второй цифирькой вида (chmod) 777. При условии что, они не создавали и не собираются создавать никаких пользовательских групп у себя на сервере. Здесь, как такового, ярковыраженного и сильного разграничения нет. Вернее, оно будет, если создать группу владельца и внести в неё список пользователей. Вот только создать такую группу может исключительно сам администратор сервера. Когда создаст - тогда и будет думать, что делать со второй цифрой.

Что обозначают цифры 777 или 456

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

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

Например:

  • 6=4+2 - Read+Write (право на чтение+ право на запись)
  • 5=4+1 - Read+Execute (право на чтение+ право на выполнение)
  • и т.д.

Все возможные 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 (только выполнение)

Таким образом, выставив права доступа (chmod) вида 765 ,
мы выставим следующие права для групп:

  • Первая цифра, группа Owner, Владелец файла или папки
    Первая цифра = 7
    Это значит, что Владелец папки или файла имеет право на:
    7=4+2+1 - Read (чтение)+Write (запись)+Execute (выполнение)
  • Вторая цифра, группа Group, Член группы владельца
    Вторая цифра = 6
    Это значит, что Член группы владельца имеет право на:
    6=4+2 - Read (чтение)+Write (запись)
  • Третья цифра, группа World, Все остальные пользователи
    Третья цифра = 6
    Это значит, что Все остальные пользователи имеют право на:
    5=4+1 - Read (чтение)+Execute (выполнение)

Теперь понятно, что выставив права доступа комбинацией цифр 777 (три топора), мы открываем полный доступ к файлу абсолютно для всех групп пользователей. Аналогичный результат можно получить, поместив файл в папку "Общие документы" (Public) в Windows.

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

Права доступа всегда выставляются «по нисходящей» от «Владельца» к «Члену группы владельца», и дальше - к группе «Всех остальных». Но, не наоборот!

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

Теперь, когда стало абсолютно ясно, что обозначают эти три заветные цифры - выставить права доступа (chmod) вида 777 , не составит труда. Чтобы выставить права доступа (chmod) вида 777 для папки или файла, который находится на сервере , понадобится любой файловый менеджер, который способен установить и поддерживать FTP-соединение с сервером. Это может быть Total Commander, Windows Commander, CuteFTP, Filezilla или что-либо ещё. Лично я предпочитаю простой и бесплатный FTP-файловый менеджер Filezilla, несмотря на то, что являюсь горячим поклонником Total Commander-а.

Чтобы выставить права доступа (chmod) вида 777 , заходим на сервер по FTP под правами Администратора!, через пару логин-пароль Администратора!. Дальше, находим и выделяем требуемый объект (папку или файл). После этого, вызываем правой кнопкой мыши контекстное меню «Файл - Изменить атрибуты». Дальше, указываем нужный атрибут (права доступа) и жмём «ОК». Чтобы "вбить" нужную комбинацию цифр потребуется, либо поставить-снять чекбоксы (галочки) возле нужных пунктов, либо ввести с клавиатуры нужный код вида 777 в открывшемся окне. Все FTP-файловые менеджеры поддерживают, и тот, и другой способ.

Облом вида 777 на Денвере

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

Сообщение для инопланетян:
Не нужно пытаться выставить права доступа (chmod) вида 777 при работе с широко известным пакетом , который только имитирует работу веб-сервера под управлением операционной системы Unix на локальном компьютере, на самом деле работающем под управлением операционной системы Windows. Там нет такой кнопки .

Файлы в Linux имеют двух владельцев

Необходимо правильно выставить права на файлы и папки. Сделать это можно с помощью FileZilla. Вообще для каждого сервера нужны свои определённые настройки, которые лучше узнать у своего хостера. Но обычно права ставят такие: на файлы, которые находятся в корневой директории 444, на папки в корневой директории ставят 755, на папки tmp и logs ставят 705, на паку своего шаблона поставьте 555, на папку image/stories можно поставить 755, на папку Cache 777.

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

Файлы в Linux имеют двух владельцев: пользователя (user owner) и группу (group owner) под которой понимается определенный список пользователей и причем владелец файла не обязательно должен быть членом группы владеющей файлом. Каждый пользователь может быть членом сразу нескольких групп одна из которых называется первичной (primary), а все остальные — дополнительными (supplementary). Это дает большую гибкость в организации доступа к определенному файлу. Совместное использование некоторым ресурсом организовать очень просто, достаточно создать новую группу и включить в нее всех кому это действительно необходимо, а если человек предположим перешел в другой отдел и уже нет необходимости в использовании данного файла. А все очень просто, необходимо просто выключить его из состава данной группы. Ну а, что делать с остальными неужели они так и не смогут хотя бы прочитать содержимое файла или их прийдется каждый раз включать и исключать из группы.
А вот для всех остальных (other) которые не принадлежат ни к user owner и group owner права доступа устанавливаются отдельно и как правило самые минимальные. Обычно владельцем файла является пользователь который создал данный файл. Владелец-группа вновь создаваемого файла устанавливается равной первичной группе пользователя создавшего файл, но в некоторых версиях Unix владелец-группа наследуется от владельца-группы каталога в котором создается файл. Для изменения владельца файла используется команда chown в качестве параметров принимающая имя нового владельца и список файлов: # chown new_owner file1 file2 …Конечно же на месте названия файла может быть и имя каталога, но при этом владелец файлов внутри каталога не изменится, для того чтобы это произошло лучше всего воспользоваться флагом -R (chown -R). При использовании данной команды (впрочем как и большинства) можно пользоваться регулярными выражениями если есть необходимость отобрать файлы удовлетворяющие определенному критерию (chown — R lys *.с). Для изменения владельца группы используется команда chgrp, синтаксис использования данной команды аналогичен предыдущей: # chgrp sales /home/sales/*. Кстати команда chown позволяет сразу установить и группу-владельца для этого необходимо сразу за именем владельца без пробелов и др. знаков поставить двоеточие и написать название необходимой группы
# chown — R sergej:gljuk * , допускается и такой вариант записи # chown — R:gljuk * (т.е. аналог команды chgrp).
Владение файлом определяет те операции которые тот или иной пользователь может совершить над файлом. Самые очевидные из них это изменение владельца и группы для некоторого файла. Эти операции может проделать суперпользователь и владелец файла (в производных BSD UNIX только суперпользователь). Если с первым все понятно, то например написав программу и сделать затем ее владельцем, например суперпользователя увы не получится, и хотя вариант изменения владельцем допускается варианта такого применения я честно говоря не нашел. А вот группу, если вы являетесь владельцем файла, можно изменить только на свою первичную (по умолчанию имеет то же название, как и имя соответствующего пользователя). Эти все ограничения введены по нескольким причинам, чтобы никто не мог подсунуть какой ни будь зловредный файл и для того чтобы если на компьютере установлен лимит дискового пространства для конкретного пользователя, нельзя было просто переопределив владельца превысить его.
Следующие базовые операции которые можно совершить над файлом: это доступ на чтение (Read), доступ на запись (Write) и доступ на выполнение (eXecute). Эти операции устанавливаются для каждой из трех групп пользователей раздельно. Причем проделать это может только пользователь владелец и конечно же суперпользователь. Для установки соответствующих прав используется команда chmod. Применяется она в двух формах абсолютной — когда игнорируются старые права, а безусловно устанавливаются новые, и относительной — когда к имеющимся правам добавляются/убираются другие. Абсолютная форма предполагает задание прав доступа к файлу прямым заданием его в восьмеричной форме. Для того чтобы получить полный код необходимого режима файла, необходимо просто сложить значения кодов приведенных в таблице.

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

Самый простой способ изменить владельца файла либо папки – это использовать Проводник Windows. Посмотрим, как это можно сделать.

Как изменить владельца файла либо папки

Щелкните на файле либо папке правой кнопкой мыши и выберите команду Свойства , после чего откройте вкладку Безопасность . Щелкните на кнопке Дополнительно .

Откроется вкладка Владелец .

Щелкните на кнопке Изменить и откроется окно . Теперь выберите нужного пользователя либо группу в списке Изменить владельца на и щелкните на кнопке ОК .

Предположим, что нужного пользователя или группы в списке не оказалось. Щелкните на кнопке Другие пользователи и группы . Теперь в поле введите имя пользователя либо группы.

Однако, вводить имя следует по специальным правилам, узнать которые можно, щелкнув на ссылке примеры .

Есть вариант и проще – щелкните на кнопке Дополнительно и затем на кнопке Поиск . В окне будут найдены все пользователи и группы на вашем компьютере.

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

Щелкните на кнопке ОК . Теперь главное – установите флажок , после чего щелкните на кнопке ОК . В результате, папка или файл получат нового владельца.

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

Ладно, с владельцами разобрались. Как насчет разрешений доступа? Вот добавили мы нового владельца, однако, что если необходимо указать, что именно разрешено ему делать, а для чего пусть губу не раскатывает? Сделать это можно тоже с помощью вкладки Безопасность .

Щелкните правой кнопкой на файле или папке и выберите команду Свойства , затем перейдите на вкладку Безопасность . Выберите в поле Группы или пользователи нужного пользователя/группу и щелкните на кнопке Изменить .

Теперь в столбце Разрешить и Запретить установите нужные флажки напротив тех разрешений, что вам требуются. Скажем, если нужно запретить пользователю изменение файлов либо папок, поставьте флажок в столбце Запретить напротив разрешения Изменение . Затем щелкните на кнопке Применить и запрет вступит в силу.