Π‘ΡΠΊΠΎΠ½ΠΎΠΌΡŒΡ‚Π΅ 15% Π½Π° всСх хостинговых услугах

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ свои Π½Π°Π²Ρ‹ΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ скидку Π½Π° любой Ρ‚Π°Ρ€ΠΈΡ„Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ΄: Skills ΠΠ°Ρ‡Π°Ρ‚ΡŒ
Π ΡƒΠ±Ρ€ΠΈΠΊΠΈ
Linux OS VPS

ПониманиС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ² Linux ΠΈ способы ΠΈΡ… управлСния

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ² Linux β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… аспСктов администрирования систСмы. НСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, управляСтС Π»ΠΈ Π²Ρ‹ производствСнным Π²Π΅Π±-сСрвСром, Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ прилоТСния ΠΈΠ»ΠΈ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ скрипты Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚Π²Π΅Ρ€Π΄ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Linux являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. Если Π²Ρ‹ ΠΎΡˆΠΈΠ±Π΅Ρ‚Π΅ΡΡŒ, Π²Ρ‹ рискуСтС ΡƒΡ‚Π΅Ρ‡ΠΊΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π΅ΡƒΠ΄Π°Ρ‡Π½Ρ‹ΠΌ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ сСрвисами. Если Π²Ρ‹ всС сдСлаСтС ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚ мощная, дСтализированная систСма бСзопасности, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ Π² Π²Π°ΡˆΡƒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ.

Π­Ρ‚ΠΎ руководство ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ: ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ модСль Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π°ΠΌΠΈ собствСнности ΠΈ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ SUID, SGID ΠΈ sticky bit.

МодСль Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ² Linux объяснСна

ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ Ρ„Π°ΠΉΠ»Ρƒ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ Π² систСмС Linux Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π² доступа. Π­Ρ‚ΠΈ ΠΏΡ€Π°Π²Π° Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ трСмя классами ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ трСмя Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ.

Π’Ρ€ΠΈ класса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

КлассОписаниС
Π²Π»Π°Π΄Π΅Π»Π΅Ρ†ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π»Π°Π΄Π΅Π΅Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠΌ
группаВсС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅ Ρ„Π°ΠΉΠ»Π°
ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅Π’ΡΠ΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π² систСмС

Π’Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Π‘ΠΈΠΌΠ²ΠΎΠ»Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
Ρ‡Ρ‚Π΅Π½ΠΈΠ΅rΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ содСрТимого Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ список содСрТимого ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°
записьwИзмСнСниС Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°
Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅xЗапуск Ρ„Π°ΠΉΠ»Π° ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ Π²Ρ…ΠΎΠ΄/ΠΎΠ±Ρ…ΠΎΠ΄ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°

ВмСстС эти Π΄Π΅Π²ΡΡ‚ΡŒ Π±ΠΈΡ‚ΠΎΠ² (Ρ‚Ρ€ΠΈ класса Γ— Ρ‚Ρ€ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ) ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ управлСния доступом для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС.

Как ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ls -l

Π‘Π°ΠΌΡ‹ΠΉ быстрый способ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ls -l:

ls -l myscript.sh

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π°:

-rwxr-xr-- 1 alice devs 2048 Jan 25 10:00 myscript.sh

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ строку Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ символ Π·Π° символом:

Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
-Π’ΠΈΠΏ Ρ„Π°ΠΉΠ»Π° (- = ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», d = дирСктория, l = символичСская ссылка)
rwxΠ Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°: Ρ‡Ρ‚Π΅Π½ΠΈΠ΅, запись, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅
r-xΠ Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π³Ρ€ΡƒΠΏΠΏΡ‹: Ρ‡Ρ‚Π΅Π½ΠΈΠ΅, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ (Π±Π΅Π· записи)
r--Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ…: Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅

Π˜Ρ‚Π°ΠΊ, Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ alice (Π²Π»Π°Π΄Π΅Π»Π΅Ρ†) ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ, Ρ‡Π»Π΅Π½Ρ‹ Π³Ρ€ΡƒΠΏΠΏΡ‹ devs ΠΌΠΎΠ³ΡƒΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ», Π° всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΅Π³ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ.

ИзмСнСниС ΠΏΡ€Π°Π² доступа с chmod

Команда chmod измСняСт ΠΏΡ€Π°Π²Π° доступа ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ. Она ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π΄Π²Π° Ρ€Π΅ΠΆΠΈΠΌΠ°: символичСский ΠΈ числовой (Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Ρ‹ΠΉ).

БимволичСский Ρ€Π΅ΠΆΠΈΠΌ

БимволичСский Ρ€Π΅ΠΆΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π±ΡƒΠΊΠ²Ρ‹ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ для добавлСния (+), удалСния (-) ΠΈΠ»ΠΈ установки (=) ΠΏΡ€Π°Π² доступа:

chmod u+x myscript.sh      # Add execute permission for the owner
chmod g-w myscript.sh      # Remove write permission from the group
chmod o=r myscript.sh      # Set read-only for others (exactly)
chmod a+x myscript.sh      # Add execute for all (owner, group, others)

Π¦Π΅Π»Π΅Π²Ρ‹Π΅ классы: u (ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ/Π²Π»Π°Π΄Π΅Π»Π΅Ρ†), g (Π³Ρ€ΡƒΠΏΠΏΠ°), o (ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅), a (всС).

Числовой (Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Ρ‹ΠΉ) Ρ€Π΅ΠΆΠΈΠΌ

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΏΡ€Π°Π² ΠΈΠΌΠ΅Π΅Ρ‚ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅: r = 4, w = 2, x = 1. Π’Ρ‹ складываСтС ΠΈΡ… вмСстС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ Ρ†ΠΈΡ„Ρ€Ρƒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ класса.

Π’ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Π°ΡΠ”Π²ΠΎΠΈΡ‡Π½Π°ΡΠŸΡ€Π°Π²Π° доступа
7111rwx
6110rw-
5101r-x
4100r--
0000---

РаспространённыС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

chmod 755 myscript.sh   # Owner: rwx | Group: r-x | Others: r-x
chmod 644 file.txt      # Owner: rw- | Group: r-- | Others: r--
chmod 700 script.sh     # Owner: rwx | Group: --- | Others: ---
chmod 600 secret.key    # Owner: rw- | Group: --- | Others: ---

> ΠšΡ€Π°Ρ‚ΠΊΠ°Ρ справка: 755 β€” стандарт для общСдоступных скриптов ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ². 644 β€” стандарт для Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. 600 ΠΈΠ΄Π΅Π°Π»Π΅Π½ для ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²Π°ΠΌΠΈ собствСнности с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ chown ΠΈ chgrp

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅ΡŽΡ‚ смысл Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² контСкстС ΠΏΡ€Π°Π²Π° собствСнности. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ chown ΠΈ chgrp ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΈ Π³Ρ€ΡƒΠΏΠΏΠ΅.

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° Ρ„Π°ΠΉΠ»Π°

chown alice file.txt

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡƒ

chgrp devs file.txt

Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΈ Π³Ρ€ΡƒΠΏΠΏΡƒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ

chown bob:admins file.txt

ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ измСнСния рСкурсивно

Π€Π»Π°Π³ -R примСняСт измСнСния ΠΏΡ€Π°Π² собствСнности ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ ΠΈ всСму Π΅Π³ΠΎ содСрТимому β€” это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈ настройкС ΠΊΠΎΡ€Π½Π΅Π²Ρ‹Ρ… ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π²Π΅Π±-сСрвСра:

chown -R www-data:www-data /var/www/html/

Π­Ρ‚ΠΎ критичСский шаг ΠΏΡ€ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² срСдС VPS Hosting, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ доступ процСсса Π²Π΅Π±-сСрвСра ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ.

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ: SUID, SGID ΠΈ Sticky Bit

Помимо стандартных дСвяти Π±ΠΈΡ‚ΠΎΠ² Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, Linux ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚Ρ€ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π΅ΠΆΠΈΠΌΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

1. SUID β€” Set User ID

ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ ΠΊ: Π˜ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ

Когда Π±ΠΈΡ‚ SUID установлСн Π½Π° исполняСмый Ρ„Π°ΠΉΠ», ΠΎΠ½ запускаСтся с привилСгиями Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° Ρ„Π°ΠΉΠ»Π°, Π° Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΅Π³ΠΎ запустил.

chmod u+s /usr/bin/passwd

ls -l Π²Ρ‹Π²ΠΎΠ΄:

-rwsr-xr-x 1 root root 54256 Jan 10 08:00 /usr/bin/passwd

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° s вмСсто x Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°. Π’ΠΎΡ‚ ΠΊΠ°ΠΊ /usr/bin/passwd ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ /etc/shadow (Ρ„Π°ΠΉΠ», ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠΉ root) Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ запускС ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

> ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ бСзопасности: Π‘ΡƒΠ΄ΡŒΡ‚Π΅ ΠΎΡ‡Π΅Π½ΡŒ остороТны ΠΏΡ€ΠΈ установкС SUID Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ скрипты. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ настроСнный SUID Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» β€” это классичСский Π²Π΅ΠΊΡ‚ΠΎΡ€ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ.

2. SGID β€” Set Group ID

ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ ΠΊ: Π˜ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΈ дирСкториям

  • На Ρ„Π°ΠΉΠ»Π°Ρ…: Π€Π°ΠΉΠ» запускаСтся с привилСгиями Π³Ρ€ΡƒΠΏΠΏΡ‹ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° Ρ„Π°ΠΉΠ»Π°.
  • На дирСкториях: НовыС Ρ„Π°ΠΉΠ»Ρ‹, созданныС Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, автоматичСски Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ Π³Ρ€ΡƒΠΏΠΏΡƒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Π° Π½Π΅ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΡƒΡŽ Π³Ρ€ΡƒΠΏΠΏΡƒ ΡΠΎΠ·Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
chmod g+s /opt/project

ls -l Π²Ρ‹Π²ΠΎΠ΄:

drwxr-sr-x 2 alice devs 4096 Jan 25 10:00 /opt/project

SGID Π½Π° дирСкториях Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π΅Π½ для ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΠ°ΠΏΠΎΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π³Π΄Π΅ нСсколько Ρ‡Π»Π΅Π½ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² согласованном Π²Π»Π°Π΄Π΅Π½ΠΈΠΈ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ для всСх Π½ΠΎΠ²Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ².

3. Sticky Bit

ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ ΠΊ: ДирСкториям

Когда sticky bit установлСн Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π»Π°Π΄Π΅Π»Π΅Ρ† Ρ„Π°ΠΉΠ»Π° (ΠΈΠ»ΠΈ root) ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ» β€” Π΄Π°ΠΆΠ΅ Ссли Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° запись Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ.

chmod +t /shared/folder

ls -ld Π²Ρ‹Π²ΠΎΠ΄ для /tmp:

drwxrwxrwt 10 root root 4096 Jan 28 12:00 /tmp
t Π² ΠΊΠΎΠ½Ρ†Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ sticky bit Π°ΠΊΡ‚ΠΈΠ²Π΅Π½. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ /tmp ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° для записи всСм, Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°.
ПониманиС umask β€” ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
Когда создаСтся Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Linux Π½Π΅ прСдоставляСт Π΅ΠΌΡƒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. ВмСсто этого ΠΎΠ½ примСняСт umask (маску создания Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ), которая Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΠ· значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ umask
umask
Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: 0022

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ umask

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΠ‘ umask `0022`Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
Π€Π°ΠΉΠ»666 (rw-rw-rw-)666 - 022644 (rw-r–r–)
ΠšΠ°Ρ‚Π°Π»ΠΎΠ³777 (rwxrwxrwx)777 - 022755 (rwxr-xr-x)

> ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Linux Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ устанавливаСт Π±ΠΈΡ‚ выполнСния Π½Π° вновь созданныС Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, нСзависимо ΠΎΡ‚ umask.

УстановитС Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ umask

umask 0077    # New files: 600 (rw-------), New dirs: 700 (rwx------)

Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² скриптах, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹. Для постоянного измСнСния Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ umask Π² Ρ„Π°ΠΉΠ» профиля вашСй ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ~/.bashrc ΠΈΠ»ΠΈ /etc/profile).

РСкурсивноС исправлСниС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ

РаспространСнная Π·Π°Π΄Π°Ρ‡Π° Π² Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… условиях β€” сброс Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π²ΠΎ всСм ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, послС Π½Π΅ΡƒΠ΄Π°Ρ‡Π½ΠΎΠ³ΠΎ развСртывания ΠΈΠ»ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠΎ FTP, которая Π½Π°Ρ€ΡƒΡˆΠΈΠ»Π° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. ΠšΠ»ΡŽΡ‡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ для ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ², Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Π±ΠΈΡ‚ выполнСния для ΠΎΠ±Ρ…ΠΎΠ΄Π°.

# Set all directories to 755
find /var/www/myapp -type d -exec chmod 755 {} ;

# Set all files to 644
find /var/www/myapp -type f -exec chmod 644 {} ;

Если вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ исполняСмыС скрипты, ΠΈΡΠΏΡ€Π°Π²ΡŒΡ‚Π΅ ΠΈΡ… ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·ΠΆΠ΅:

chmod 755 /var/www/myapp/bin/*.sh

Π­Ρ‚ΠΎΡ‚ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для всСх, ΠΊΡ‚ΠΎ управляСт ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π²Π΅Π±-хостинга. Если Π²Ρ‹ запускаСтС прилоТСния PHP, Python ΠΈΠ»ΠΈ Node.js Π½Π° VPS с cPanel, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ² β€” ΠΎΠ΄Π½Π° ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнных ΠΏΡ€ΠΈΡ‡ΠΈΠ½ 403 Forbidden ошибок ΠΈ сбоСв выполнСния скрипта.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ справочник Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ для распространСнных сцСнариСв

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉΠ Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠšΠΎΠΌΠ°Π½Π΄Π°
ΠŸΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Π΅Π±-Ρ„Π°ΠΉΠ»Ρ‹ (HTML, CSS, JS)644chmod 644 index.html
Π’Π΅Π±-Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ755chmod 755 /var/www/html
PHP/Python скрипты644 ΠΈΠ»ΠΈ 755Зависит ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° выполнСния
ΠŸΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹Π΅ SSH ΠΊΠ»ΡŽΡ‡ΠΈ600chmod 600 ~/.ssh/id_rsa
.ssh дирСктория700chmod 700 ~/.ssh
ΠžΠ±Ρ‰Π°Ρ дирСктория ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°2775 (SGID)chmod 2775 /opt/project
Доступная для записи всСм врСмСнная дирСктория1777 (sticky)chmod 1777 /tmp/shared
Π€Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ с сСкрСтами600chmod 600 .env

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ² Linux ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ сСрвСра

ПониманиС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ² β€” это Π½Π΅ просто акадСмичСскоС ΡƒΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΠ΅, ΠΎΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ прямыС практичСскиС послСдствия для бСзопасности ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСрвСра.

РаспространённыС ошибки бСзопасности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ:

  • Установка 777 Π½Π° Π²Π΅Π±-Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ. Π­Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ всСм доступ Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅, запись ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ β€” критичСская ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ, Ссли ваш сСрвСр скомпромСтирован ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° PHP-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΡ ΠΊΠΎΠ΄Π°.
  • ΠžΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ доступными для чтСния всСм. Π€Π°ΠΉΠ»Ρ‹ Π²Ρ€ΠΎΠ΄Π΅ .env, wp-config.php ΠΈΠ»ΠΈ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ 600 ΠΈΠ»ΠΈ 640 максимум.
  • Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°. Π”Π°ΠΆΠ΅ Ссли Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ выглядят ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ссли Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, ваш Π²Π΅Π±-сСрвСр ΠΈΠ»ΠΈ Π΄Π΅ΠΌΠΎΠ½ прилоТСния ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΡƒΠΌΠ΅Ρ‚ΡŒ Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ.
  • РСкурсивноС chown Π½Π° систСмных дирСкториях. Запуск chown -R нСостороТно Π½Π° /etc ΠΈΠ»ΠΈ /usr ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΠΎΠΌΠ°Ρ‚ΡŒ всю систСму.

Если Π²Ρ‹ запускаСтС production-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Dedicated Servers, Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ строгой ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… шагов ΠΏΠΎ ΡƒΡΠΈΠ»Π΅Π½ΠΈΡŽ бСзопасности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слСдуСт ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ послС ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ настройки.

Для ΠΊΠΎΠΌΠ°Π½Π΄, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… нСсколькими сайтами ΠΈΠ»ΠΈ прилоТСниями, VPS Control Panels ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· графичСскиС Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρ‹, хотя Π½Π°Π²Ρ‹ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ для ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ.

ΠšΡ€Π°Ρ‚ΠΊΠΈΠΉ справочник ΠΊΠΎΠΌΠ°Π½Π΄

# View permissions
ls -l filename
ls -ld directory/

# Change permissions (symbolic)
chmod u+x file        # Add execute for owner
chmod g-w file        # Remove write for group
chmod o=r file        # Set read-only for others
chmod a+r file        # Add read for all

# Change permissions (numeric)
chmod 755 file        # rwxr-xr-x
chmod 644 file        # rw-r--r--
chmod 600 file        # rw-------
chmod 700 file        # rwx------

# Change ownership
chown user file
chgrp group file
chown user:group file
chown -R user:group directory/

# Special bits
chmod u+s file        # Set SUID
chmod g+s directory   # Set SGID
chmod +t directory    # Set sticky bit

# umask
umask                 # Show current umask
umask 0022            # Set umask for session

# Recursive fixes
find /path -type d -exec chmod 755 {} ;
find /path -type f -exec chmod 644 {} ;

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ² Linux Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ основу бСзопасности систСмы, контроля доступа для Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ развСртывания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. МодСль элСгантна Π² своСй простотС β€” Ρ‚Ρ€ΠΈ класса, Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, нСсколько ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ΠΎΠ² β€” Π½ΠΎ достаточно ΠΌΠΎΡ‰Π½Π° для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ всСго, ΠΎΡ‚ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΎ высоконагруТСнного производствСнного сСрвСра.

ОвладСниС chmod, chown, umask ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, быстром устранСнии ошибок доступа ΠΈ усилСнии Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π²Π°ΡˆΠΈΡ… сСрвСров ΠΎΡ‚ нСсанкционированного доступа.

НСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ с Shared Web Hosting ΠΈΠ»ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ΡΡŒ Π΄ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ управляСмой срСды VPS Hosting, Ρ‚Π²Π΅Ρ€Π΄ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ² Linux β€” это ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктивных Π½Π°Π²Ρ‹ΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π·Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ систСмный администратор ΠΈΠ»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. Π˜Π½Π²Π΅ΡΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ врСмя Π² Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ β€” ваши сСрвСры (ΠΈ ваши ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ) Π±ΡƒΠ΄ΡƒΡ‚ Π²Π°ΠΌ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Ρ‹.