Задайте UID и GID към Linux файлове и директории

Setuid и Setgid са Unix термини, съкращения съответно за „Set User ID“ и „Set Group ID“. Setuid, наричан понякога и „suid“, и „setgid“ са разрешения за достъп, които могат да бъдат присвоени на файлове или директории в Unix-базирана операционна система. Те се използват предимно, за да позволят на системните потребители да изпълняват временно повишени привилегировани двоични файлове, за да изпълняват конкретна задача.

Тези разрешения са както следва:

ЗАДАВАЙТЕ UID

 set-user-ID-при изпълнение
Позволява, когато файлът се изпълнява, той да се извършва под привилегиите на собственика. Например, ако трябва да упражняваме root права, за да имаме достъп до определен модул, да записваме в дневници, да четем / записваме устройства и т.н.
SGID, set-group-ID-on-execution позволява, когато файлът се изпълнява, той да се извършва под привилегиите на групата, която притежава файла.

Превръщането на SET UID и GID във файлове и директории, обикновено към последните, ще позволи "наследяване" на характеристики от предишната директория към следващата и всички файлове / директории, които са генерирани / създадени / копирани в директориите SET GID ще има характеристиките от родителската директория.

GID обикновено е разрешен, така че потребителите на група да могат да работят с файловете от същата група, UID ще може да променя собственика на файла и разрешенията за друго лице в ГРУПАТА, ако опцията „кликване“ е активна .

ЗАДАВАЙТЕ GID
SET GID е интересна опция, ако и много потребители ще имат достъп до обща система за съхранение

  • SAMBA
  • FTP
  • HTTP
  • Бази данни

Пример за внедряване на SET UID и GID


От терминала изпълняваме следните задачи:

Създаваме примерна директория:

 [root @ root] МКДИР ПРИМЕР
Ние изброяваме директорията:
 [root @ root] vdir
Променяме разрешенията за директорията, така че да имат достъп само потребителите от групата „програмисти“, разрешенията са параметри на команда chmod и са следващите
+ s: за да активирате режима на suid
g + s: за активиране на плътен режим
 [root @ root] # chown user.programmers
 [root @ root] # chmod g + s ПРИМЕР 
 [root @ root] # vdir
Изброяваме директорията и ще видим съдържанието
 4 drwxrwxrwx 2 потребителски програмиста ПРИМЕР
По подразбиране никой потребител, който не принадлежи към групата "програмисти", няма да може да работи с файловете в тази директория. От друга страна, потребителите на групата ще могат да работят с файловете в зависимост от техните атрибути, които имат потребителите, ако имат разрешения само за четене или писане.

Някои софтуер и услуги като Samba, FTP, HTTPТе имат специални характеристики, които не се уреждат от тези правила и ги допълват, като ги обогатяват.

Сега, когато сме създали SET UID и GID, ако създадем файл или директория в примера от всеки потребител, той ще наследи характеристиките, които сме дефинирали по -рано, независимо от това кой го е създал и разрешенията, които има.

Като пример можем да кажем, ако създадем файл report.txt в директорията EXAMPLE и потребителят, който го е създал, е root, и въпреки това групата е програмисти, групата, към която ще принадлежи файлът, ще бъде програмист.
Тъй като директорията EXAMPLE е с атрибутите: drwxrwsrwx, което показва, че директорията е SET GID, всички създадени в нея файлове ще принадлежат на потребителя и на групата, посочена от SET GID.

Ако видим списък с няколко файла, той ще изглежда така:

 4 drwxr-Sr-x 2 jose програмисти 4096 home.html 4 drwxr-Sr-x 2 carlos програмисти 4096 dependencies.txt 4 drwxr-Sr-x 2 root програмисти 4096 report-project.odf
Надявам се този урок да ви помогне.

Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка
wave wave wave wave wave