Форум русской поддержки Joomla!® CMS
08.12.2016, 02:09:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1] 2  Все   Вниз
  Добавить закладку  |  Печать  
Автор

И всё-таки какой CHMOD выставлять?

 (Прочитано 35939 раз)
0 Пользователей и 1 Гость смотрят эту тему.
fedya
Завсегдатай
*****

Репутация: +50/-1
Offline Offline

Сообщений: 492


« : 20.02.2010, 18:30:58 »

И всё-таки какой CHMOD выставлять на папки и файлы?

Информации по форуму раскидано много, да она отрывочная и разная...в ФАКе по этому поводу ничего толком нет..

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

нашёл такое
Цитировать
Установка CHMOD 777 или 707 для файлов или папок необходима только тогда, когда скрипт должен записать что-либо в этот файл или каталог. Все остальные файлы должны иметь следующую конфигурацию:
    * PHP-файлы: 644
    * Файлы конфигурации: 666
    * Другие папки: 755
это верно?
если да то возникли вопросы:
1)* PHP-файлы: 644
а с остальными неPHP файлами что делать?
каким образом всем php файлам на всём сайте автоматически выставить 644
ну не заходить же в каждый каталог и не ставить в ручную

2)* Файлы конфигурации: 666
это configuration.php имеется ввиду, или ещё какие файлы конфигурации стандартные есть

3)* Другие папки: 755
А подпапки? Нужно ли им тоже выставлять 755, и если да то как этот процесс автоматизировать?
корневой папке, в которой находится весь сайт тоже 755 поставить?
какие права нужно ставить для cache и tmp

Разъясните этот вопрос, пожалуйста, раз и навсегда...подробно и понятно...
Хочется сделать, так как правильно, а не так как я обычно делаю Azn

Заранее, спасибо...
« Последнее редактирование: 20.02.2010, 18:42:56 от fedya » Записан
 
fedya
Завсегдатай
*****

Репутация: +50/-1
Offline Offline

Сообщений: 492


« Ответ #1 : 20.02.2010, 21:31:40 »

ну если на такое количество вопросов отвечать влом...Azn
напишите, так как делаете вы...т.е. какие права и на какие файлы/папки ставите вы...
Записан
mahp
Осваиваюсь на форуме
***

Репутация: +4/-0
Offline Offline

Пол: Мужской
Сообщений: 127


mahp


« Ответ #2 : 20.02.2010, 23:57:53 »

Федя, Я раньше тоже парился. На все папки 755, файлы 644 и только на cache 777. Т.е. закрываю по максимуму. Затем на все остальные начинаю давать разрешения доводя сайт до работоспособности. Сайт без форума, стационарный и перенесённый с Денвера только и требует cache 777. Ну если не стоят расширения типа курс валют и пр. Это уже индивидуально для них читайте и экспериментируйте.
« Последнее редактирование: 17.05.2015, 01:34:37 от mahp » Записан
mahp
Осваиваюсь на форуме
***

Репутация: +4/-0
Offline Offline

Пол: Мужской
Сообщений: 127


mahp


« Ответ #3 : 21.02.2010, 00:01:36 »

666 - хорошее число, не зря выбрано. На configuration.php  666 - это чтоб демон сайт перевернул? В постоянной работе 644! Во время настройки сайта из Админки типа почты, SEO, модреврайт - то 666. Потом сразу, как закончу сайт обновлять или изменять, на 644 возвращаю. Открой configuration.php и ясно станет что там меняется из админки: изменил и доступ закрыл.
« Последнее редактирование: 17.05.2015, 01:36:10 от mahp » Записан
one_more
Осваиваюсь на форуме
***

Репутация: +87/-3
Offline Offline

Пол: Мужской
Сообщений: 143


there is no spoon


« Ответ #4 : 21.02.2010, 10:44:46 »

fedya, правильный ответ у каждого будет свой. Потому, что разные серверы настроены по-разному и Апач на разных серверах выполняется с разными правами. У меня, например, на все директории (в том числе и на cache и на media) стоят права 755, тем не менее и кеширование работает, и компоненты/модули/боты нормально устанавливаются. На все файлы стоят права 644 (если Вам от этого ответа станет легче)). На configuration.php и .htaccess - 444 (исключительно как средство от собственного склероза, чтобы файл не перезаписывался, когда я скопом копирую файлы по ftp на сервер с локалхоста).

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

Другие варианты ответов на этот вопрос можно найти в данном разделе этого форума (отвечали неоднократно). Только ответы у всех будут разные.
Записан
fedya
Завсегдатай
*****

Репутация: +50/-1
Offline Offline

Сообщений: 492


« Ответ #5 : 21.02.2010, 21:00:17 »

каким образом всем файлам на всём сайте автоматически выставить 644
ну не заходить же в каждый каталог и не ставить в ручную
Записан
one_more
Осваиваюсь на форуме
***

Репутация: +87/-3
Offline Offline

Пол: Мужской
Сообщений: 143


there is no spoon


« Ответ #6 : 21.02.2010, 22:29:36 »

Как всегда, имеются варианты. Например скриптом jsys (_http://dead-krolik.info/file_download/5/jsys.zip):

1. отмечается нужная директория
2. внизу страницы выбираете ссылку "сменить права"
3. на следующей странице ставите эти самые права (отдельно на директории и файлы)
4. нажимаем "отправить"

Скрипт обходит все вложенные директории и ставит права.
Можно то же самое сделать ftp-менеджером, но времени займёт намного больше.
Записан
fedya
Завсегдатай
*****

Репутация: +50/-1
Offline Offline

Сообщений: 492


« Ответ #7 : 21.02.2010, 23:11:57 »

Как всегда, имеются варианты. Например скриптом jsys (_http://dead-krolik.info/file_download/5/jsys.zip):
в длинном логе одни ошибки...
не может он что-то поменять...права...

например ...../menu.menuloader.class.php 644 ERROR
Записан
fedya
Завсегдатай
*****

Репутация: +50/-1
Offline Offline

Сообщений: 492


« Ответ #8 : 21.02.2010, 23:30:49 »

на другом хостинге вообще не хочет пароль воспринимать...
Записан
fedya
Завсегдатай
*****

Репутация: +50/-1
Offline Offline

Сообщений: 492


« Ответ #9 : 21.02.2010, 23:39:35 »

обнулил пароль на sweb нормально пошло
на masterhost не хочет никак
Записан
one_more
Осваиваюсь на форуме
***

Репутация: +87/-3
Offline Offline

Пол: Мужской
Сообщений: 143


there is no spoon


« Ответ #10 : 21.02.2010, 23:49:03 »

Если не работает, возможно скрипту не хватает прав. Возможно проблема с владельцем (т.е. владелец файлов залитых по ftp и созданных скриптами может быть разный). Тогда telnet, ftp или SSH (chmod -R 755 ./root_directory <- синтаксис приведен для FreeBSD, может зависеть от ОС сервера, справка: man chmod)
Записан
fedya
Завсегдатай
*****

Репутация: +50/-1
Offline Offline

Сообщений: 492


« Ответ #11 : 22.02.2010, 13:36:15 »

И так, на основе своих мытарств, резюмирую всё, что выяснил:

1) На установленном и настроенном сайте изначально всем папкам выставляем CHMOD 755, всем файлам - CHMOD 644
на некоторых хостингах при таких значениях всё прекрасно работает...
2) на других хостингах - для некоторых папок нужно выставить CHMOD 777 (часто на папки: tmp, cache, images)
также, например, на Мастерхосте нужно выставить CHMOD 777 на папку tmp находящейся вне папки www
3) Некоторые расширения требуют особых прав на определенные папки и файлы (например, JoomlaPack не будет нормально работать, если не дать прав на запись на папку куда сохраняются бэкапы).
Чаще всего расширение само скажет (выведет сообщение) о недостаточности прав. Если ничего не говорит и в тоже время не работает, то читаем оф. сайт расширения, форумы и т.п., так же для теста можно временно выставить CHMOD 777 на папки и файлы которые относятся к расширению...
4) Поменять CHMOD на всём сайте можно несколькими способами:
a) Попросить хостера - самый простой и безгеморойный способ
b) Использовать скрипт, например Joomla system tool (jsys)

Для начала
разбираемся с паролем

затем:
Цитировать
1. отмечается нужная директория
2. внизу страницы выбираете ссылку "сменить права"
3. на следующей странице ставите эти самые права (отдельно на директории и файлы)
4. нажимаем "отправить"

Скрипт обходит все вложенные директории и ставит права.
Можно то же самое сделать ftp-менеджером, но времени займёт намного больше.


описание Joomla! system tool

После использования, не забываем удалить скрипт с сайта
Скрипт работает не на всех хостерах

c)
Цитировать
Если не работает скрипт, возможно скрипту не хватает прав. Возможно проблема с владельцем (т.е. владелец файлов залитых по ftp и созданных скриптами может быть разный). Тогда telnet, ftp или SSH (chmod -R 755 ./root_directory <- синтаксис приведен для FreeBSD, может зависеть от ОС сервера, справка: man chmod)

d) Через SSH-доступ
смена прав производится командой chmod.

Смена прав всех директорий:
find /путь_к_папке/ -type d | chmod 755

аналогично для файлов :
find /путь_к_папке/ -type f | chmod 644

e) Через FTP-клиент
Заходим ручками в нужные папки и меняем права

P.S. Дополнения и исправления приветствуются.
P.P.S. Это моё сообщение предлагаю прикрепить, куда-нибудь на видное место, чтобы вопросов по этой теме было меньше
« Последнее редактирование: 22.02.2010, 13:54:00 от fedya » Записан
mahp
Осваиваюсь на форуме
***

Репутация: +4/-0
Offline Offline

Пол: Мужской
Сообщений: 127


mahp


« Ответ #12 : 22.02.2010, 16:06:33 »

Вроде компонент ExtPlorer тоже позволяет.
Записан
Mast
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 3


« Ответ #13 : 01.03.2010, 01:50:53 »

Цитата: fedya
d) Через SSH-доступ
смена прав производится командой chmod.

Смена прав всех директорий:
find /путь_к_папке/ -type d | chmod 755

аналогично для файлов :
find /путь_к_папке/ -type f | chmod 644

Для Debian подобных систем синтаксис немного другой:

для файлов
find /путь_к_директории_сайта -type f -exec chmod 644 {} \;

для директорий
find /путь_к_директории_сайта -type d -exec chmod 755 {} \;
Записан
InDY
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #14 : 04.03.2010, 17:31:26 »

Я несколько конкретизирую вопрос топик стартера. Какие настройки доступа делать на стадии разработки и в бою (для ждумлы в базе), хостинг sweb.ru?
Записан
fedya
Завсегдатай
*****

Репутация: +50/-1
Offline Offline

Сообщений: 492


« Ответ #15 : 04.03.2010, 18:47:43 »

Я несколько конкретизирую вопрос топик стартера. Какие настройки доступа делать на стадии разработки и в бою (для ждумлы в базе), хостинг sweb.ru?
на sweb.ru у меня прекрасно всё работает при
755 на все папки
644 на все файлы...
даже на папку с кешем 755 стоит и кешу это совершенно не мешает
Записан
Gazon
Осваиваюсь на форуме
***

Репутация: +7/-0
Offline Offline

Сообщений: 144


Образец морали куртуазной


« Ответ #16 : 04.03.2010, 21:54:02 »

Цитировать
на sweb.ru у меня прекрасно всё работает при
755 на все папки
644 на все файлы...
даже на папку с кешем 755 стоит и кешу это совершенно не мешает
Аналогично на majordomo.ru

А вообще я забыл об этой проблеме когда перешел на Windows Web Server 2008  Cool
Записан
altal
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Пол: Женский
Сообщений: 26



« Ответ #17 : 10.03.2010, 13:55:42 »

Я проще выставляю права. В FileZila правой кнопкой мыши на нужной папке- Атрибуты файла. Поставить галку "Перенаправить во вложенные каталоги".
Записан
Kirills
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« Ответ #18 : 11.03.2010, 13:03:50 »

У меня хостер Masterhost. Настроен FTP клиент в Joomla, так вот с ним права можно оставить 755 на папки и 644 на файлы.
Joomla будет писать и создавать файлы от имени FTP аккаунта.

До настройки FTP клиента Joomla, были проблемы с записью, нужно было давать права 777 и 666 соответственно.
Но тогда владельцем файлов становилась учетка, от которой работает Apache.
Отсюда появлялась такая проблема: я просто не мог ничего сделать с файлами которые создавала Joomla с правами 755 и 644.

Записан
bargakuzzo
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Пол: Мужской
Сообщений: 46



« Ответ #19 : 23.03.2010, 21:48:27 »

Я проще выставляю права. В FileZila правой кнопкой мыши на нужной папке- Атрибуты файла. Поставить галку "Перенаправить во вложенные каталоги".
Поддерживаю. Просто и удобно. Правда хост автоматически бывает блокируется от новой версии FileZila, как бы порты сканирует.
Записан
Aeliot
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 109



« Ответ #20 : 07.10.2012, 21:10:57 »

Подход "а как остальные делают" конечно же имеет некоторые плюсы, тем не менее...
Прежде чем ставить "какие-то цифорки" -- 777 или какие-нибудь ещё, давайте разберёмся что они значат.
Для простоты можно посмотреть в TotlComander пункт меню "Изменить атрибуты"
Открываем и видим 7 - значит разрешено чтение, выполнение и запись файла.
Если стоят все три семёрки, значит такие права имеют все три основных группы пользователей
Можете поэкспериментировать сами.


Особенно опасна последняя семёрка.
Этим вы позволяете любому "пришлому" записывать вам на сайт всё, что тот захочет.
Вы уверены, что в настройках сервера правильно определена директива allow_url_fopen?
Больший ляп можно сделать только повесив у себя на сайте баннер с приглашением "поковыряться".

Максимальная допустимая последняя цифра -- это "пятёрка". И то далеко не везде. По возможности здесь должен стоять "ноль".
К слову сказать, обратите особое внимание на .xml файлы модулей и компонентов. А также языковые файлы.
Если не поставить последней цифрой ноль, то они прекрасно открываются по прямой ссылке.
Что при этом мы имеем:
1) в .xml файле перечислены все переменные, используемые модулем/компонентом и хранимые в базе
2) в языковом файле есть описание этих переменных, за частую с пояснениями к применению
3) в .xml файле перечислены все файлы, имеющиеся в модуле/компоненте.
Имея эту информацию можно начхать заглушку типа "index.html"
Перефразирую: если вы не настроите CMOD хотя-бы этим файлам, то ваш сайт будет стоять "потрахами наружу"

Если какой-нибудь модуль или компонент требует последней цифрой "семёрку", задумайтесь -- нужно ли вам такое расширение. Если действительно оно вам нужно, то садитесь и допиливайте его своими ручками до требуемого состояния.
« Последнее редактирование: 08.10.2012, 08:33:58 от Aeliot » Записан
Go-destroy
Давно я тут
****

Репутация: +4/-1
Offline Offline

Пол: Мужской
Сообщений: 222



« Ответ #21 : 29.03.2013, 03:23:42 »

достаточно ли  прав для папок 751 и файлам 644? или все же папка 755?
Записан
voland
Профи
********

Репутация: +488/-86
Online Online

Пол: Мужской
Сообщений: 8720


любит наш народ всякое гавно...


« Ответ #22 : 29.03.2013, 03:32:39 »

зависит от владельца файлов
Записан
Go-destroy
Давно я тут
****

Репутация: +4/-1
Offline Offline

Пол: Мужской
Сообщений: 222



« Ответ #23 : 29.03.2013, 06:28:00 »

зависит от владельца файлов
Подскажите как проверить?
И каким образом меняется, если возможно.
Записан
voland
Профи
********

Репутация: +488/-86
Online Online

Пол: Мужской
Сообщений: 8720


любит наш народ всякое гавно...


« Ответ #24 : 29.03.2013, 06:35:50 »

Подскажите как проверить?
И каким образом меняется, если возможно.
man chmod
Записан
dariusii
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 72


« Ответ #25 : 20.04.2016, 03:46:58 »

Извечный вопрос Joomla - "какие права выставлять" так и останется извечным). Наблюдаю тему года с 11го. Ничего не изменилось. Инфы нигде не прибавилось. тысячи блогов о том, как правильно выставлять права, в принципе. Какими инструментами, но какие именно! - инфа в духе "755/644" и не более. Люди уже плюют и ставят 777. Потом забывают возвращать. Сам принцип временных выставлений 777 уже очень странный момент.

готовлю ftp юзера так:
addgroup web-users && addgroup web-developers << создаю группу
usermod -a -G web-developers www-data << биндим группу в апач группу.

site=somesite
mkdir /home/ftp/$site
useradd $site -g web-developers -p 111 -d /home/ftp/$site -s /usr/sbin/nologin
mkdir /home/ftp/$site/$site
chown -R $site:web-developers /home/ftp/$site
mkdir /var/www/$site
chown -R $site:web-developers /var/www/$site
passwd $site < озвзросление пароля

vim /etc/fstab < биндим каталог
mount -a
chmod -w /home/ftp/$site
lftp $site@192.168.88.26
все ок. ходим итц.

делаю права:
chown -R $site:web-developers /var/www/$site
find /var/www/$site -type d -exec chmod 755 {} \;
find /var/www/$site -type f -exec chmod 644 {} \;
chmod 777 -R /var/www/$site/tmp
chmod 777 -R /var/www/$site/cache
(и это еще не все - нужно как-то закрыть доступ по http для вложенных файлов (.htaccess Joomla почему-то рисует, как htaccess.txt, пока не переправишь. И! с ее .htaccess все видно! вложения всех каталогов итц!), но не до жиру. устаканить бы простые вещи.)

Пробую включить ftp в cms Joomla 3.5.1 - хрен там. хорошо. времянка chmod -R 777 /var/www/$site - иногда прокатывает, а иногда нет, что вообще ахтунг. Как это, что иногда пркоатывает, а иногда нет ?? с одними и теми же правами.
Все та же пресловутая "Обнаружена ошибка.
 0 Не удалось произвести запись в файл конфигурации
" и это с 777 правами на все и вся. Ну да. руками меняешь настройки ftp через vim configuration.php. Этот совет давали году в 11м. Ничего не изменилось.
 Глюк Joomla? Я этот DOM Joomla уже Drupal! ее налево. чрутинг выше хоум в vsftpd запретил и делаю чрут путь в настройках cms, как имя каталога, что при входе по ftp. все ок, но не всегда. то да, то унэйбл ту врайт то конфигурэйшн файл. как так?
К слову, по ftp доступ есть всегда. по шеллу всегда, так же. а Joomla постоянно чудит. иногда думаешь - "уж разобрался уже - все работает без ошибок". ан нет. и с 777 иногда тупит. откаты через akeeba спасают, если только. Иначе - права один в один, но ругань, то у gftp, то еще где. То, что многие плагины без 777 не ставятся, вообще непонятно, как так.

Кто-нибудь может сказать, как же в Joomla это все правильно сделать-то? Люди?
« Последнее редактирование: 20.04.2016, 04:28:42 от dariusii » Записан
flyingspook
Moderator
*****

Репутация: +226/-9
Offline Offline

Сообщений: 3534


« Ответ #26 : 20.04.2016, 09:22:10 »


Кто-нибудь может сказать, как же в Joomla это все правильно сделать-то? Люди?
Все прекрасно работает, Joomla тут совершенно стороной идет, chmod это серверные настройки, настраивайте сервер правильно и будет счастье.
Записан
dariusii
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 72


« Ответ #27 : 20.04.2016, 12:32:31 »

2 flyingspook
Да не вопрос. Понятное дело, что "Joomla тут совершенно стороной идет" Azn Однако, может где-то отрегламентирован момент, как правильно под нее настроить сервер? Права доступа, права на определенные каталоги. Не от Васи Пупкина, с какого-то блога читать об этом, а именно официальный пруф. А то справку Joomla читаешь с ее страницы>начало работы, а там все в виде справочника. "What do Unix permissions look like?", как в "передаче discovery channel" и в таком же направлении.
Четко. На такой-то каталог такие-то права. На другой такие-то. некий acl лист.
+Отладка, а не "Не удалось произвести запись в файл конфигурации".
Вот беру апач, сквид, или vsftpd - там могу посмотреть логи, если какие ошибки. Где это в Joomla?
« Последнее редактирование: 20.04.2016, 12:52:20 от dariusii » Записан
flyingspook
Moderator
*****

Репутация: +226/-9
Offline Offline

Сообщений: 3534


« Ответ #28 : 20.04.2016, 18:50:33 »

Права у вех сайтов 755/644 если надо закрыть 750/444-640-440 закрытие каталогов и файлов в каждом случае индивидуальна.
Если сторонние разработчики пишут расширения и под каталоги 777 надо ставить они про это указывают.
Сторонние CMS так же пишут если надо 777 ставить, но стандарт 755/644 и если у кого то что то не получается это повод подумать о настройках сервера или если хостинг писать в ТП и спрашивать.
Ни встречал ни разу за десятилетия проблемы с правами, все настраивается если возникает проблема на уровне apache или nginx, и не забывайте про пользователей папок  Grin.
Записан
Филипп Сорокин
Живу я здесь
******

Репутация: +121/-3
Offline Offline

Пол: Мужской
Сообщений: 1463


« Ответ #29 : 04.05.2016, 11:28:27 »

Начинать нужно с запрета функции chmod и chown в php.ini — иначе все манипуляции с правами будут бессмысленны, так как любой шелл сможет поменять права ваших файлов и снять все ваши запреты. Битовые значения прав, как уже было отмечено выше, всегда выставляются по ситуации. Универсального рецепта нет. Существует 3 вида прав:

  • Права владельца файла
  • Права группы пользователей
  • Публичные права

Если вы имеете аккаунт на shared хостинге, то установка публичных прав xx7 будет означать, что любой пользователь этого хостинга потенциально сможет произвести над файлом любые манипуляции. Хостинги взламывают, вместе с ними взламывают сайты клиентов. Хостинги не афишируют факты взломов, клиенты ничего не знают, думают, что если шелл на сайте появился, то это "само прилетело". Поэтому права xx7 на shared хостингах = самоубийство. Публичные права в этом случае целесообразно для всех файлов и директорий поставить как xx0. Хостеры могут объединять пользователей в группы, поэтому и для групп желательно выставить x0x. То есть, только владелец должен иметь право читать, писать и исполнять файл. Следовательно, в данном случае, нужны права 700 для папок и 600 для файлов. Это позволит ограничить доступ к файлам посторонним пользователям, которые имеются на сервере. В данной конфигурации ниже chmod 700/600 выставить права не получится, потому что в противном случае владелец файлов/пользователь не сможет иметь к ним доступ, например, если захочет отредактировать файлы через FTP или перезалить их. Публичные файлы, например изображения, скрипты, стили, robots.txt, sitemap.xml, другие файлы которые должны быть доступны извне, и папки, в которых они лежат, должны быть открыты публично (644 и 755). Все остальные файлы и папки должны быть закрыты (600 и 700).

При установке прав нужно отталкиваться от того, под каким пользователем стартует пул PHP. Если PHP стартует под пользователем, совпадающим с владельцем файлов и папок (так почти всегда и бывает), то для любого шелла права 755 будет означать 777, а 644 будет означать 666. В этом случае не стоит париться вообще ни о чём — каталоги и файлы "дырявые", и вы не измените это никак. Можно запретить читать и писать файлы самому себе, тем самым вы запретите файлы для чтения и/или записи серверу, но это безумие.

Для того, чтобы запретить что-либо для сервера не во вред себе, нужно отделить себя от сервера, то есть пул будет работать под одним пользователем, вы будете работать под другим пользователем. Вы сможете делать с файлами всё, что захотите, имея права 7xx для директорий, 6xx для файлов, сервер будет иметь права x5x для директорий, x4x для файлов, если вы внесёте себя и сервер в одну группу и установите эту группу по умолчанию для себя (при создании файлов для них будет назначен владелец — Вы и группа-владелец, то есть Вы и сервер). Если Вы на VDS или дедике, владеете им единолично, посторонних пользователей нет вообще, то в этом случае установка группы не требуется. Для файлов можно установить права xx4, для директорий xx5 — собственно, это установлено по умолчанию: 644 и 755.

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

Вы сможете разрешить серверу запись файлов только там, где это необходимо, например в папках logs, tmp, cache, images. Для этого нужно установить права 770 (группа пользователь/сервер) или 707 (пользователь, группы нет, сервер) для этих каталогов, а для файлов на запись, соответственно, устанавливаются права 660 или 606. Если какое-то расширение куда-то пишет файл, то этот файл также можно вычислить по логам и открыть к нему доступ. Тем самым ничего без Вашего ведома в публичных директориях происходить не будет. Если нужно, например, обновить или установить расширения, обновить CMS, то перед этим необходимо открыть все каталоги и файлы на запись рекурсивно с помощью консоли или FTP менеджера, но после массовых манипуляций с файлами, файлы и каталоги необходимо снова закрыть (или же проще — поставить в качестве владельца файлов сервер, обновить расширения/CMS, а потом снова поставить владельцем себя). Вы можете также сделать файл недоступным ни для сервера, ни извне, выставив права 700 и 600, при этом файл останется для Вас открытым (обратите внимание, что на shared хостинге такие права будут означать полный доступ для чтения и записи для сервера).

Всё вышесказанное — ИМХО.
« Последнее редактирование: 04.05.2016, 14:26:27 от Филипп Сорокин » Записан
Страниц: [1] 2  Все   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet