Разрешения CHMOD 777, 755, 655, 644 и более для файлов Linux

{title}

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

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

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

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

Сегодня мы рассмотрим, как устанавливать разрешения в среде Linux .

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

1. Типы разрешений в Linux


Во всех системах Unix есть механизм, который позволяет нам, как администраторам, определять типы доступа к определенному файлу или папке.

В рамках этого механизма управления средами Unix есть два типа переменных, которые мы должны знать и понимать их функции:

классы

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

разрешений

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

Теперь, когда мы щелкнем правой кнопкой мыши по файлу или папке и перейдем к опции « Свойства», мы увидим следующее:

{title}

В рамках этой схемы мы выделяем три (3) типа классов:

владелец

Является ли человек, который создал файл или папку

группа

В рамках этого параметра мы определим группу пользователей, которые будут иметь доступ к файлу или папке

другие

Этот параметр включает в себя частных пользователей
Теперь у нас есть три типа прав для редактирования наших файлов или папок:

чтение

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

письменность

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

пробег

Активируя эту опцию, которая по умолчанию отключена, мы можем выполнять файлы.

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

2. Понимание кодов ошибок разрешения в Linux


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

В средах Unix каждое разрешение имеет следующее значение:

  • Чтение: 4
  • Написание: 2
  • Исполнение: 1

Мы должны научиться играть с этими числами следующим образом, чтобы наш опыт работы с Linux был лучшим.

Если мы хотим получить разрешение на запись, мы будем использовать 6 (4 + 2 = чтение + запись)

Если мы хотим, чтобы пользователь запускался, мы будем использовать 7 (4 + 2 + 1 = чтение + запись + выполнение)

$config[ads_text5] not found

Теперь у нас есть следующая таблица значений:

  • 0: без разрешений
  • 1: выполнение
  • 2: Написание
  • 3: Чтение и письмо
  • 4: Чтение
  • 5: Чтение и исполнение
  • 6: Чтение и письмо
  • 7: Чтение, письмо и исполнение

3. Наиболее распространенные виды разрешений


Наиболее распространенные типы разрешений или их комбинации:

666 (RW / RW / RW)

Эта опция позволяет всем пользователям читать и писать в файл.

777 (RWX / RWX / RWX)

Эта опция позволяет всем пользователям читать, писать и выполнять в файле или папке

755 (RWX / RW / RW)

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

$config[ads_text6] not found

644 (RW / R / R)
С этим разрешением владелец может читать и писать в файл, в то время как другие могут только читать.

700 (RWX / ---)

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

Как мы видим, у нас есть разные варианты установки соответствующих разрешений в Linux.

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


Процедура установления разрешения очень проста. Просто зайдите в терминал и запустите следующий синтаксис:

$config[ads_text5] not found

Тип разрешения chmod File_path

Например:

 chmod 666 /home/Solvetic/Solvetic.webp 
У нас есть эти интересные опции, чтобы установить лучшие параметры безопасности в наших файлах и папках.

Видя это в системах Linux с текстами песен, вы можете увидеть что-то вроде этого в полном разрешении Linux:

0 = --- = нет доступа
1 = --x = исполнение
2 = -w- = запись
3 = -wx = написать и выполнить
4 = r-- = читать
5 = rx = прочитать и выполнить
6 = rw- = читать и писать
7 = rwx = читать, писать и выполнять

Если мы хотим предоставить несколько разрешений, мы должны добавить их.

Если, например, мы используем команду chmod 777 :

 CHMOD 777 
Мы говорим, что мы даем 3 типам пользователей максимальное разрешение, давая им чтение, выполнение и запись, и если мы добавили 4 + 2 + 1, поэтому мы используем три раза 7. Если мы хотим дать разрешения на запись для чтения, то это будет 4+ 2 = 6, если мы хотим просто прочитать, то это будет 4. Если мы хотим прочитать и выполнить, мы бы добавили 4 + 1 = 5. Отсюда и разные комбинации.
 CHMOD 755 
В этом случае chmod 755 мы даем разрешение на чтение и выполнение (4 + 1) всем пользователям, кроме владельца, который завершил его (чтение, запись, выполнение 4 + 2 + 1).
 CHMOD 666 
Этот тип команды chmod предназначен для предоставления прав на чтение и запись всем, кроме выполнения (4 + 2). Каждый может получить доступ к файлу, прочитать его содержимое и изменить его.
 CHMOD 644 
Этот chmod 644 часто используется для запрета записи кому-либо, кроме владельца. (755 аналогично, чтение и выполнение и для владельца все разрешения) Этот chmod 644 более ограничительный (только чтение) и (безумие, поступок для владельца).

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

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

{title}

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

$config[ads_text6] not found

{title}

Мы надеемся, что это помогло вам понять работу разрешений в системах Linux / Unix. Давайте перейдем к двум другим командам для управления разрешениями.

5. Что это такое и как использовать команду CHOWN Linux


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

Что такое чоун?

Chown (Изменить владельца) - это команда, которая позволяет нам изменять владельца или владельца файла или папки в файловой системе.

$config[ads_text5] not found

Эта команда является частью пакета coreutils, который включен по умолчанию во все дистрибутивы Linux, и используя Chown, мы можем указать нового владельца либо по имени, либо по идентификатору пользователя в системе (UID).

Выбранные параметры

Мы можем определить ряд параметров для использования Chown, которые являются:

  • -c: Этот параметр позволяет нам определить изменения, которые будут иметь файл.
  • -R: Смена владельца каталогов рядом с их содержимым.
  • -v: (многословно) Отображает более информативный вывод информации.
  • --version: версия Chown отображается на экране.
  • --dereference: этот параметр действует на символические значения, а не на место назначения.
  • --reference: этот параметр изменяет владельца файла в зависимости от владельца другого файла.
  • -h: Когда речь идет о символических ссылках, смените владельца места назначения вместо самой ссылки.

    $config[ads_text6] not found

    Синтаксис, который мы должны учитывать при использовании Chown, следующий:

     chown (options) user (: group) файл (ы) или каталог (ы) 
    Для этого исследования мы будем использовать Ubuntu 16.

    Ниже мы увидим несколько примеров использования Chown.

    Изменить владельца файла

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

     ls -lart имя файла 
    Мы создали файл solvetic.txt, поэтому вводим следующее:
     ls -lart solvetic.txt 
    Это покажет владельца, а также разрешения, которые он в настоящее время имеет и дату создания.

    Теперь мы установим, что владельцем этого файла будет root, для этого введем следующее:

     chown root solvetic.txt 
    Теперь мы снова запускаем ls -lart solvetic.txt и видим нового владельца:

    {title}

    Модификация группы файла

    Мы можем создать новую группу для наших файлов, используя chown, для этого мы должны выполнить следующий процесс:

    Используйте команду ls - l (Имя файла) для отображения текущей группы файлов.

    В этом случае мы будем использовать ls -l solvetic.txt. Далее мы будем использовать следующий синтаксис для соответствующей модификации:

     поддержка chown: solvetic.txt 
    (Поддержка - это название новой группы).

    {title}

    Смотрите текущую версию Chown

    Для этого просто введите следующее:

     chown –version 

    {title}

    Изменить владельца папки и все в ней

    Для этой задачи мы будем использовать следующий синтаксис:

     chown -R папка пользователя 
    В этом случае мы сделаем пользователя root владельцем папки, в этом случае мы введем следующее:
     chown -R root Solvetic 

    Изменить группу, если пользователь принадлежит к определенной группе

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

    Например, если файл solvetic.txt находится в группе решателей, новая группа будет называться поддержкой. Для этого мы будем использовать параметр –from

    Сначала мы будем использовать ls -l solvetic.txt для просмотра группы, к которой принадлежит файл. Позже мы будем использовать синтаксис –from: current group): (новая группа), чтобы указать, что если файл принадлежит, то в этом случае группа растворителей становится группой поддержки.

    {title}

    Скопируйте владельца одного файла в другой

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

    В этом случае у нас есть два файла:

    • solvetic.txt =, чей владелец решает проблемы
    • tests.txt = владелец которого является root.

    $config[ads_text5] not found

    Мы будем использовать синтаксис:

     chown –reference = solvetic.txt tests.txt 
    Так что владелец tests.txt такой же, как solvetic.txt

    {title}

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

    6. Что это такое и как использовать команду CHATTR Linux

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

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

    $config[ads_text5] not found

    Хотя сегодня есть несколько способов сделать это, мы увидим команду, которая имеет широкий спектр опций для изменения атрибутов в любом дистрибутиве Linux: Chattr

    Что такое Chattr?

    Chattr (Change Attribute - Change Attributes) - это команда, которую мы можем легко реализовать с различными параметрами, которые позволят нам защитить файлы от случайного удаления или непреднамеренных изменений .

    Одним из больших преимуществ chattr является то, что он защищает файлы, даже если тот, кто пытается их удалить, имеет права root.

    Все атрибуты, которые могут быть реализованы с помощью chattr, поддерживаются родными системами Linux, такими как ext2, ext3, ext4 и btfrs, что позволяет этой утилите иметь гораздо большую степень безопасности.

    $config[ads_text5] not found

    Общий синтаксис использования chattr следующий:

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

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

    операторы

    • +: Позволяет указанным атрибутам быть добавленными к атрибутам, уже существующим в файле
    • -: позволяет удалить указанные атрибуты из атрибутов
    • =: Позволяет указанным атрибутам заменять существующие атрибуты в файле.

    $config[ads_text6] not found

    опции

    • -V: Это позволяет нам получить более информативный вывод chattr, включая версию программы.
    • -R: эта опция изменяет атрибуты каталогов и их содержимое в порядке убывания.
    • -v: Это позволяет нам визуализировать версию программы.

    $config[ads_text5] not found

    атрибуты

    • a: позволяет открывать файл только в режиме прикрепления для записи.
    • A: Позволяет не изменять дату последнего доступа или времени.
    • c: Позволяет сжать файл автоматически.
    • d: Определите, что выбранный файл не является кандидатом для резервного копирования при использовании инструмента дампа.
    • D: Обращаясь к каталогу, он позволяет синхронно записывать данные на диск.
    • e: относится к файлу или папке с использованием расширений (экстентов), используемых для сопоставления блоков.
    • j: Он используется в файловых системах ext3 и ext4 и позволяет установить, что файл записывается в журнал, когда мы смонтировали его с опциями data = order или data = writeback .
    • i: позволяет файлу быть неизменным, то есть его можно удалить или отредактировать.
    • S: Указывает, что изменения, внесенные в файл, будут синхронно записаны на диск.
    • s: с этим атрибутом блоки, используемые на жестком диске, будут записаны с нулями (0).
    • u: установив этот атрибут при удалении файла, его содержимое сохраняется для последующего восстановления.

    Использование Chattr в Ubuntu
    Теперь давайте посмотрим практические примеры того, как реализовать chattr на дистрибутивах Linux, для этого случая мы будем использовать Ubuntu 16.

    Мы создали папку с именем Solvetic и файл tests.txt. Если мы хотим защитить эти файлы, мы будем использовать следующий синтаксис (мы будем использовать sudo, чтобы иметь привилегии суперпользователя).

     sudo chattr + i Solvetic / test.txt 

    {title}

    Как мы видим, хотя информация не была развернута, изменения были обработаны.

    Проверка атрибутов
    Для проверки реализованных нами атрибутов мы будем использовать lsattr и увидим следующее:

    $config[ads_text6] not found

    {title}

    Если мы попытаемся удалить файл tests.txt, будучи суперпользователем, мы увидим, что это невозможно, мы будем использовать следующий синтаксис:

     sudo rm test.txt 

    {title}

    Установка исходных значений
    Если мы хотим, чтобы наши файлы не имели атрибутов chattr, мы будем использовать следующий синтаксис:

     sudo chattr -i имя файла 
    В нашем примере это будет следующим:
     sudo chattr -i Solvetic / test.txt 
    Теперь мы можем попытаться удалить файл и увидим, что это уже возможно, потому что мы удалили атрибуты:

    {title}

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

     Файлы / etc / passwd и / etc / shadow 
    Чтобы защитить эти файлы, мы должны ввести следующее:
     sudo chattr + i / etc / passwd 
     sudo chattr + i / etc / shadow файлы 
    Другим примером того, как мы можем использовать диаграмму в Linux, является использование параметра, для которого он позволяет нам открывать файл в режиме вложения, для этого мы создали файл solvetic.txt

    $config[ads_text5] not found

    Позже мы будем использовать команду:

     sudo chartt + a Solvetic.txt 
    Чтобы установить этот параметр в файл.

    Мы можем увидеть атрибуты файла, используя lsattr.

    Теперь мы пытаемся что-то отредактировать в файле, используя команду echo, и увидим, что отображается сообщение Операция не разрешена. Если мы теперь используем символы >>, мы можем прикрепить что-то к тексту.

    {title}

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