G|Translate: English EN Français FR Deutsch DE Italiano IT Русский RU Español ES

Права доступа к файлу на сервере

5/5 - (1 голос)

Вот такая картинка

Права доступа к файлу на сервере

Система разрешений Linux

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

  • чтение (read))
  • запись (write)
  • выполнение (execute)

Для файлов и каталогов смысл разрешений немного отличается

РазрешениеКодФайлКаталог
Read4Получить содержимое файлаПолучить список содержимого папки.
Write2Изменить содержимое файлаПраво создавать и удалять файлы в этой папке
Execute1Запустить файл как программуРазрешить переход в эту папку

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

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

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

Для кодировки использована 8-ми значная система,цифры от 0 до 7.

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

Если сложить все эти права, то получится 7 – такое право доступа может быть у владельца файла. Группа может иметь право на чтение и запись (4+2) – обозначается 1. 

Можно и через двоичную логику, у нас три вида прав для трех категорий пользователей – всего 9 вариантов 1/0

111111111 (9 единиц в двоичной системе) = 777 (в восьмеричной системе)

Права доступа к файлу на сервере

Общий список: 

  • 7 – r+w+x – чтение, запись, выполнение;
  • 6 – r+w – чтение и запись;
  • 5 – r+x – чтение и выполнение;
  • 4 – r – чтение;
  • 3 – w+x – запись и выполнение;
  • 2 – w – запись;
  • 1 – x – выполнение;
  • 0 – отсутствие каких-либо прав.

А почему цифр обычно три?

А потому что:

  • первая цифра – владелец
  • вторая цифра – группа, к которой относится владелец
  • третья цифра – все остальные (публичные права)

777 – все могут делать всё с файлом или каталогом.

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

Права доступа на файл и каталог

Категория указывает для какой группы пользователей нужно применять права, Есть три категории:

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

Еще есть вариант

  • a – all – все (вместо сочетания ugo).

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

По умолчанию в системах Linux разрешения на создание по умолчанию составляют:

  • 666 для файлов, что дает права на чтение и запись пользователю, группе и другим лицам
  • 777 для каталогов, что означает разрешение на чтение, запись и выполнение для пользователя, группы и другие.

Linux не позволяет создавать файлы с разрешениями на выполнение. Т.е. сначала надо создать файл, а потом отдельно дать ему права на выполнение. Эта политика достаточно хорошо защищает от вирусов.

Разрешения на создание по умолчанию можно изменить с помощью утилиты umask .

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

Рассмотрим эти полномочия подробнее.

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

Данные биты идут первыми в цифровом обозначении прав на файл.

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

У нас есть два основных варианта

Через консоль Linux

Подключаемся через SSH и командами меняем наши права

Управление сервером VPS через SSH (программа PuTTY)

Используем команду chmod

ПРАВА ДОСТУПА К ФАЙЛАМ В LINUX

Для назначения и изменения прав доступа используется команда chmod (сокращенно от change mode). Она вводится в командную строку по следующей логике:

chmod кто=права файл/каталог

Через программы передачи файлов на сервер

Читаем статью

Программы для передачи файлов на удаленный сервер

Тут все просто – графический интерфейс и клик-клик мышкой

Права доступа к файлу на сервере

Подпишитесь в VKontakte - нажмите кнопку
Подпишитесь в Telegram - нажмите кнопку
Наша группа ODNOKLASSNIKI

Вы можете сохранить ссылку на эту страницу себе на компьютер в виде htm файла




Запрос на размещение Вашего рекламного поста (тема и email будут добавлены автоматически в письмо)

В Вашем браузере должна быть настроена обработка ссылок mailto

site_post@bk.ru

или просто скопируйте адрес e-mail



Почитать в разделе

Хостинг VPS/VDS

Для попадания в TOP10  (Яндекс, Гугль) сайт должен уметь отрабатывать много пользователей Много пользователей – это не просто много пользователей в период времени, это много пользователей в один момент времени (т.е. на сайт заходят несколько пользователей одновременно) Apache – он однопоточный, т.е. пользователи по очереди Nginx – он многопоточный – но для статики (картинки в основном + кэш от движка) Nginx +Apache = на 90% хостингов пойдет для чистого html А вот если у нас динамический сайт на php – вот тут нужны ресурсы. Серверу нужно собрать html на основе инструкций php Вот потребление памяти на сборку страницы html из кода php Вот потребление ресурсов процессора Nginx...
(Читать полностью...)

  • Всего статей в разделе: 9
  • Показано статей в списке: 8
  • Сортировка: название по алфавиту

Использование FTP и SFTP

FTP по умолчанию не является защищенным протоколом Задача простая: нужно получить доступ к файлам на сервере к файлам, которые относятся к сайтам, а не ко всему серверу соединение должно быть защищенным По умолчанию у нас есть базовых два варианта: FTP, порт 21, не защищенное соединение, видим выбранную папку с сайтом SFTP, порт 22, защищенное соединение, но видим весь сервер начиная с root Если быть совсем точным - то FTP использует два порта, один для команд, второй - для передачи данных. Соединение с сервером по FTP FTP (англ. File Transfer Protocol) — протокол передачи файлов по сети, появившийся в 1971 году задолго до HTTP и даже до TCP/IP, благодаря чему...
(Читать полностью...)

Как выбрать VPS/VDS по параметрам

Будем выбирать VPS/VDS по параметрам. VPS - virtual private server VDS - virtual dedicated server Читаем статью Чем отличается сервер VPS от VDS Другими словами - виртуальный компьютер у хостера, где Вы можете разместить свой web-проект. Компьютер как настоящий (cpu, память, диск, ОС) - только нарисованный в памяти сервера. Про варианты работы VDS читаем статью Хостинг VPS Основные параметры: система виртуализации (OpenVZ, KVM, Hyper-V) операционная система (Linux, Windows) число ядер процессора диск (SAS, SSD, NVMe) оперативная память RAM трафик и ширина канала панель управления сервером (для настоящих любителей Lunix необязательно) И собственно web-проект...
(Читать полностью...)

Панель управления веб сервером

Хорошая панель управления (она же GUI) должна давать возможность (помимо стандартных функций): сканер-антивирус (для проверки файлов на сервере и базы MySql) возможность создания аккаунтов sFTP   Бесплатные панели управления сервером Читаем статью Бесплатные панели управления серверами в 2021 году Список: VestaCP BrainyCP Fastpanel (от хостера FastVPS) ISPConfig Ajenti ,CWP – Control Web Panel Virtualmin KeyHelp EHCP – Easy Hosting Control Panel Sentora Платные панели управления...
(Читать полностью...)

Порты вебсервера и их основная защита

Для чего сделаны разные порты вебсервера и зачем их защищать? Если у Вас есть сайт, то хакер для взлома может пойди другим путем. Он будет ломать сам вебсервер,  а не отдельный сайт. Для взаимодействия с пользователями (посетителями, админом) вебсервер использует отдельные порты (с номером), по которым доступен соответствующий сервис. Номер порта обычно указывается через двоеточие после IP-адреса. Например, 192.168.1.1:22 - порт для сервиса SSH для администратора (фактически командная строка Linux). В таблице Номер Сервис Описание 20   FTP (File Transfer Protocol) - порт данных Передача файлов на удаленный сервер 21 FTP (File Transfer Protocol) - порт...
(Читать полностью...)

Программы для передачи файлов на удаленный сервер

Как загрузить свои файлы на сервер? Мы можем использовать два разных протокола (SFTP и SCP) и разные программы соответственно WinSCP WinSCP - свободный графический клиент протоколов SFTP и SCP, предназначенный для Windows. Распространяется по лицензии GNU GPL. Обеспечивает защищённое копирование файлов между компьютером и серверами, поддерживающими эти протоколы. Сайт программы https://winscp.net/ Разработчик Мартин Прикрыл (Чехия). Название от команды Linux scp (Secure Copy Command), которая отвечает за копирование файлов с поддержкой SSH.  Если у Вас есть root-доступ - то Вы увидите все папки на сервере, а не только папку var/www (где живет Ваш сайт). Программа предлагает два...
(Читать полностью...)

Управление сервером VPS через SSH (программа PuTTY)

Будем использовать для управления веб-сервером программу для Windows - PuTTY Это фактически командная строка Linux через SSH SSH (англ. Secure Shell — «безопасная оболочка») — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов). Схож по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли. Крайне неплохо будет поставить дополнительную защиту на SSH сервера, т.к. желающих подобрать пароль очень много - весь мировой интернет. А логин обычно root Читаем статью Настраиваем fail2ban Сайт программы...
(Читать полностью...)

Файл PHP.INI

Файл php.ini крайне важен для обработки сервером PHP Ваших скриптов (или скриптов CMS) Как его найти? Проблема в том, что: файлов php.ini может быть несколько для разных версий PHP они могут находиться в разных местах для разных серверов места расположения файлов тоже будут разными для разных способов управления PHP (Apache или варианты CGI) - файл php.ini тоже может запущен из разных мест константы в файле php.ini имеют значение по умолчанию (т.е. когда они явно не указаны) Всё это вместе может приводить к достаточно необычному поведению Вашего проекта при переключении версий PHP или способов запуска. Т.е. меняются не только команды PHP (немного разные для разных...
(Читать полностью...)

Чем отличается сервер VPS от VDS

В чем разница VPS/VDS? Хитрые хостеры отвечают, что это одно и то же. А вот не совсем: VPS - (англ. virtual private server) - виртуальный частный сервер VDS - (англ. virtual dedicated server) - виртуальный выделенный сервер Server - он конечно сервер, но разный. Одна буква P/D - и разница есть. Теперь вот так по разным виртуализациям на живом железе: KVM только Linux - VDS OpenVZ только Linux (модифицированное общее ядро для всех виртуальных машин) - VPS Hyper-V возможны виртуальные сервера на Linux - VDS возможны виртуальные сервера на  Windows - VDS вообще можно любую операционную систему установить - VDS Читаем статью про...
(Читать полностью...)

X

    Пожалуйста, докажите, что вы человек, выбрав флаг.