Диалог двух root-ов [*]
- Ты какие права предпочитаешь: 644 или 664 [**]? (Имеется ввиду в доступе к конфигурационному файлу такому-то…)
- Предпочитаю я 600 на момент редактирования и 400 в период работы. А вот давать приходится 666 [***] (Весёлый закадровый смех).
–-
ПРИМЕЧАНИЕ
* root — Корень. Обозначение пользователя №1, то есть администратора с максимальными привилегиями
**
644 — первая цифра наделяет правами пользователя-владельца, вторая —
одноимённую с пользователем-владельцем группу, третья — всех прочих
зарегистрированных в системе пользователей. Так 6 — это право и на
чтение, и на запись в этот файл [лучше только 7 — с дополнительным
правом ещё и на исполнение, но в большинстве своём исполнение
конфигурационных файлов не требуется и даже противопоказано]
Таким
образом 644 — себе можно и читать и писать, а вот всем остальным
[пользователям данного компьютера] — только читать [с уважением
приоткрыв рот].
664 — более свободная настройка прав, когда и себе и
своей группе дали права на чтение и на запись, А вот всем остальным
пользователям компьютера только право на чтение.
*** Второй админ
признаёт, что хвалёная компьютерная БЕЗОПАСНОСТЬ — это полный фуфел,
так он хотел бы влепить строгача, ибо 600 — дать исключительно себе
право на чтение и запись пока это нужно для редактирования
конфиг-файла, а вот сразу после этого ужать права до права только
чтения даже себе, а вот всем остальным не давать никаких прав.
Но
жизнь — сложная штука [разное программное обеспечение, которое
запускается и требует доступа к данному конфигурационному файлу, имеет
разных пользователей-владельцев ИЛИ конфигураионных файлов слишком
много и лень к каждому прикручивать и проверять аккуратно права
безопасности]. И админу приходится самому организовывать здоровенную
дырень в безопасности, называемую 666, давая всем вообще пользователям
компьютера права и на чтение и на запись указанного конфигурационного
файла.
**** - и помните, читатели, что право на смену прав к данному
файлу [НА УРОВНЕ ФАЙЛОВОЙ СИСТЕМЫ] настраивается на уровень выше от
файла:
- ЛИБО «..» [символ в верху панели каталога-директория,
обозначающий текущую папку изнутри, которому нужно дать права 700 или
755]
- ЛИБО «Имя_Каталога» непосредственно к данному каталогу [извне].
Оригинальная
штукень, когда изнутри и снаружи от папки-каталога-директория права на
этот каталог могут стоять почему-то разные - это очень уже тонкий
вопрос и требует длительнейших экспериментов по-факту.
---
CПРАВОЧНО 1:
Битное счисление 111 = десятичное 1*2^2+1*2^1+1*2^0= 1*2+1*2+1*1 = десятичное 7
Десятичное:
1 - исполнение (для каталога = смена прав)
2 - запись
4 - чтение
И, следовательно, всё разрешить = 7
---
CПРАВОЧНО 2:
Страшнейшая "демократическая" пара команд:
cd / && sudo chmod 777 -R ./
# то есть переход в корень OS и дать всем право на всё
просто УНИЧТОЖАЕТ безвозвратно Операционную систему. Проверено.
---
CПРАВОЧНО 3:
На файловых серверах, когда пользователи получают доступ к общедоступному ресурсу из разных OS и из-под разных пользователей файлового сервера, то наступает проблема, когда они не могут нормально работать с документами друг-друга. Пожтому ИСКЛЮЧИТЕЛЬНО к общедоступным папкам в автоматическом режиме с частым интервалом применяется следующая программка (= скрипт), которая сначала ко всем объектам (файлам и папкам) ставит права 666 (= "расхлебай"), а потом повторно проходит там же, ищет исключительно папки и к ним применяет права 777 (то есть ещё и возможность удалять/переименовывать файлы в этих подпапках).
Подробнее см. scripts/chmod.Everyday.scripts/vas_chmode_sh
---
ССЫЛКИ
1.
"СБРОС MySQL root password" http://tula-it.ru/node/1331 "Правда жизни о
дырах и взломе" http://tula-it.ru/comment/5593#comment-5593
Предыстория 1. Идея отдельных/разнотипных носителей для записи
данных [магнитофонная лента -то есть с правом перезаписи пользователем]
и для записи исполнимых инструкций [перфокарты, то есть без права
перезаписи/изменения содержимого пользователем].
---
Предыстория 2. Файловые таблицы FAT/FAT16/FAT32 - без ограничений доступа к ним разных групп пользователей.
Тогдашний
конца 1990-х фурор web-сервера Eserv от Etype, который на уровне
сервера ввёл в отношении файлов и каталогов права dlwrx
По памяти [2]:
d
— удаление. Ценнейшее право [d-блокировка], чтобы при взломе не могли
выполнить угрозу удаления данных, а так же чтобы хакеру было сложно
«заметать следы присутствия». Ибо даже если содержимое файла, "заметая
следы" и стёрты, то сам файл с датой создания мог "светиться" в
каталоге.
l — просмотр содержимого каталога [список файлов]
w — запись
r — чтение
x — исполнение
Соответственно, у веб-администратора появлялась ИДЕОЛОГИЯ [2] вида:
Базы Данных — требуют прав на запись и прочтение
Каталоги с пользовательскими картинками — то же
HTML
классический — только право на чтение + может быть листинг файлов [если
лень описывать содержимое и создавать в каталоге индексные index.htm
файлы]
Исполнимое [PHP ?, CGI?] - к таким каталогам давалось только
право на исполнение, но без права на запись. А со страху ещё и право на
чтение ограничить, чтобы хакер не получил информации.
Выводы опо
предыстории 2. Это была очень перспективная программа. Жаль, пришлось
от неё отказаться в связи с малым платёжеспособным спросом на неё и
резким ростом доступности Линукса.
---
ЧАСТЬ 1. Анализ
недостатков Ext2/3/4 [rwx - безопасность] — когда параметр x в
отношении каталога это всего-навсего просмотр содержимого.
При этом
в отношении целого каталога отсутствует как таковой параметр X —
исполнение/не исполнение того, что выполняется командным
интерпретатором [shell] и параметра P — блокировки исполнения
интерпретируемого кода [того же PHP, perl].
К слову - исполнимое содержимое в современных реализация ПО давным-давно находится даже там, где ему вроде бы совсем нечего делать - в документах MS Word, например. И система NTFS совместно с ядром OS Windows не имеет никаких параметров блокировки такого рода интерпретируемого содержимого. Даже если очень-очень хочется, то было бы логичнее с точки зрения идеологии MS использовать MS Binder (Подшивку), в которонй, например, Excel документ соседствовал бы с программным кодом на Visual Basic, который упрощал бы ту или иную обработку. В результате блокировка вирусоподобного интерпретируемого кода на уровне NTFS была бы вполне решаемой задачей.
Но так как параметра, названного здесь "P"
никто не ввёл в обиход, то в результате вся система безопасности
Операционных Систем и превращается в здоровенное "решето".
...
---
ЧАСТЬ 2. Анализ недостатков CMS Drupal
Когда
в ядро почему-то не встроена защита от записи в /tmp в любых
состояниях, кроме нахождения в режиме обслуживания (и, гарантированно,
под администратором сайта, то есть под тем, кто и выполняет update.php
и связанное с ним).
Когда почему-то ради создания миниатюр с
загружаемого изображения РАЗРЕШЕНО исполнение PHP из общей папки
файловой системы sites/default/files
Что при этом мешало
разработчикам, чтобы выделить отдельную папку под
исполнимое-генерируемое в процессе, чтобы туда в принципе нельзя было
писать файлы со стороны клиента, а только лишь с уровня
php-интерпретатора сервера — не понятно совершенно.
…. {будет время и желание - допишу}
---
Ссылки
1. «Eserv от Etype. Разработчик Андрей Черезов, ЗАО «Компания Етайп»» https://ru.wikipedia.org/wiki/Eserv
2. Курс «Сетевой администратор Windows / Linux» Первые прочтения этого семинара — см. аудиозаписи. http://tula-it.ru/node/126