Права пользователя linux centos

Сервер: Пользователи, группы, права доступа в CentOS

Создание пользователя, добавление в группу, назначение разрешений.

Файл /etc/passwd содержит список пользователей

  • Регистрационное имя. Регистрационные имена должны быть уникальными и состоять не более чем из 32 символов. Они могут содержать любые символы, кроме двоеточия и символа новой строки. Они не должны начинаться с цифры.
  • Зашифрованный пароль или «заполнитель» пароля. В данном поле возможно присутствие символа «х», символа «*» или набора случайных символов и чисел. В первом случае указывается, что пароль храниться в файле /etc/shadow. Во втором случае говорится, что данная учетная запись временно отключена. В последнем случае указывается непосредственный пароль пользователя в зашифрованном виде.
  • Идентификатор пользователя — это 32-битное целое число, которое уникально идентифицирует пользователя в системе. По умолчанию, идентификаторы меньше 500 зарезервированы для служебных учетных записей. Регулярные пользователи имеют идентификаторы, начиная с 500.
  • Идентификатор группы по умолчанию. Как и идентификатор пользователя, идентификатор группы (GID) является 32-битным целым числом. Идентификатор 0 зарезервирован для группы с именем root, идентификатор 1 — для группы bin, а 2 — для группы daemon. Группы определяются в файле /etc/group, а поле идентификатора группы в файле /etc/passwd задает стандартный («эффективный») идентификатор на момент регистрации пользователя в системе. Этот идентификатор не играет особой роли при определении прав доступа; он используется лишь при создании новых файлов и каталогов. Новые файлы обычно включаются в эффективную группу своего владельца, но если у каталога установлен специальный бит setgid (02000) или файловая система смонтирована с опцией grpid, новые файлы принадлежат группе владельца каталога. По умолчанию, в ОС Linux для каждого нового пользователя создается новая группа с таким же регистрационным именем и идентификатором.
  • Поле персональных данных. Поле GECOS в основном используется для хранения персональной информации о каждом пользователе. Оно не имеет четко определенного синтаксиса. Структура данного поля может быть произвольной, но команда finger интерпретирует разделенные запятыми элементы данного поля в следующем порядке: полное имя; номер офиса и здания; рабочий телефон; домашний телефон.
  • Домашний каталог. Войдя в систему, пользователь попадает в свой домашний каталог. Если на момент регистрации этот каталог отсутствует, выводится сообщение о его отсутствии. Если в качестве значения поля домашнего каталога по умолчанию DEFAULT_HOME в файле /etc/login.defs установлено «no», продолжение регистрации пользователя будет невозможно; в противном случае пользователь попадает в корневой каталог. По умолчанию, домашние каталоги пользователей создаются в каталоге /home. При добавлении в систему нового пользователя в его домашний каталог копируются все файлы из каталога /etc/skel, в котором содержаться персональные конфигурационные файлы командного интерпретатора и различных программ.
  • Командный интерпретатор. В качестве регистрационной оболочки, как правило, задается интерпретатор команд, например, /bin/sh или /bin/csh, но, в принципе, это может быть любая программа. По умолчанию используется интерпретатор bash. Пользователи могут менять интерпретатор с помощью команды chsh. Файл /etc/shells содержит список тех интерпретаторов, которые доступны для выбора.

Файл /etc/group содержит имена групп и списки членов каждой группы

  • Имя группы. По умолчанию при создании нового пользователя создается также его группа с таким же именем, как и регистрационное имя пользователя.
  • Зашифрованный пароль или символ х, указывающий на использование файла /etc/gshadow;
  • Идентификатор группы.
  • Список членов, разделенный запятыми без пробелов.
Читайте также:  Файл образа диска поврежден windows 10

Файл /etc/shadow доступен для чтения только пользователю root и предназначен для хранения зашифрованных паролей

  • Регистрационное имя. Регистрационное имя берется из файла /etc/passwd. Оно связывает записи файлов /etc/passwd и /etc/shadow.
  • Зашифрованный пароль.
  • Дата последнего изменения пароля. Данное поле обычно заполняется командой passwd.
  • Минимальное число дней между изменениями пароля. В данном поле задается количество дней, спустя которые пользователь сможет снова изменить пароль.
  • Максимальное число дней между изменениями пароля. Максимальное время жизни пароля определяется суммой значений данного и седьмого полей.
  • Количество дней до истечения срока действия пароля, когда выдается предупреждение. В данном поле задано количество дней, оставшихся до момента устаревания пароля, когда программа login должна предупреждать пользователя о необходимости изменить пароль.
  • Количество дней по истечении срока действия пароля, когда учетная запись отключается.
  • Срок действия учетной записи. По окончанию этого срока пользователь не сможет зарегистрироваться в системе, пока администратор не сбросит значение поля. Если поле содержит пустое значение, учетная запись всегда будет активной.
  • Зарезервированное поле, которое в настоящее время всегда пустое.

Код был обновлён. Предыдущий рейтинг:

  • Бесполезный код — 0 голосов
  • Костыль — 0 голосов
  • Полезный код — 2 голоса

Источник

Права доступа к файлам в Linux

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

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

Основные права доступа к файлам в Linux

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

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

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

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

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

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

Читайте также:  7 tft oc linux домофон

Специальные права доступа к файлам в 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 — другие пользователи.
Читайте также:  Kali linux 64 bit installer что это

Действие может быть одно из двух, либо добавить — знак «+», либо убрать — знак — «-«. Что касается самих прав доступа, то они аналогичны выводу утилиты 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:

Источник

Создание пользователя с правами root на CentOS 7

При первом запуске Linux доступна только учётная запись ROOT-пользователя с «безграничными» привилегиями. Она нужна для администрирования системы и работы со специализированным ПО.

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

  • Выполнение зловредного кода из неофициальных скриптов, скачанных из интернета.
  • Взлом учётной записи суперпользователя через сетевое ПО с серьёзными уязвимостями.
  • Банальные ошибки юзера при составлении команд, затрагивающих системные файлы или параметры.

Поэтому решать повседневные задачи рекомендуется с обычной учётной записи. Её права распространяются на общедоступные команды и некоторые пользовательские каталоги, а это значит, что случайно нарушить работу системы не получится. О том, как создать пользователя в CentOS и расширить его права для доступа к утилите «sudo», будет рассказано в данной инструкции.

Добавление пользователя

Зарегистрировать учётную запись в системе можно с помощью следующего алгоритма:

  1. Чтобы добавить пользователя, необходимо открыть терминал и выполнить команду от имени администратора (ROOT):

Вместо «username» в примерах нужно вводить желаемое имя пользователя.

  1. Назначить пароль для созданной учётной записи:

С помощью приведённой команды можно также задать пароль ROOT или любому другому пользователю.

Новая учётная запись зарегистрирована, но её права доступа на данном этапе существенно ограничены. Нужно добавить пользователя в группу «Wheel», чтобы получить возможность выполнять команды от имени администратора (ROOT), вводя перед командой слово «sudo».

Как добавить пользователя в группу администраторов Wheel

Дать права пользователю в CentOS для доступа к утилите «sudo» можно следующей командой:

Для переключения учётной записи в терминале нужно ввести:

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

Проверка работы утилиты «sudo»

Уже на данном этапе создание пользователя с правами ROOT закончено. Остаётся только убедиться, действительно ли новый пользователь обладает привилегиями администратора. Для этого нужно войти в созданную учётную запись CentOS и попробовать выполнить команду, требующую прав администратора. Например, попытаться просмотреть файлы в директории ROOT-пользователя:

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

Начни экономить на хостинге сейчас — 14 дней бесплатно!

Источник

Оцените статью