Skip to main content

SELinux Haqqında

Salam dostlar (İT Mütəxəssislər),

Bu məqaləmdə "SElinux" haqqında daha ətraflı bəhs edəcəm. Beləliklə, məqalə nəzəri və praktiki olmaqla iki hissəyə bölünür ki, ilk olaraq "SELiux" haqqında nəzəri məlumatları təqdim edirəm:

Nəzəri məlumatlar

"SElinux" nədir?

ABŞ-ın Milli Təhlükəsizlik Agentliyi (NSA) tərəfindən yaradılan və "linux kernel"-in təhlükəsizlik modulu olan "Security-Enhanced Linux (SElinux)" sistem üçün təhlükəsizlik arxitekturasıdır ki, sistemə istifadəçi qoşulması və icazələrini məhdudlaşdırmaqla, eləcə də sistemdə yer alan proqram, tətbiq, proses və fayllar üçün giriş nəzarət mexanizmlərini müəyyən etməklə sistemin təhlükəsizliyini daha da artırmış olur.

"SElinux" bizə nə üçün lazımdır?

Fərz edək ki, "SElinux" aktiv (enable) vəziyyətdə olmayan hər hansı bir "server"-də bir neçə veb saytın daxil olduğu veb "server" istifadə olunur. Bu zaman həmin veb saytlarda "vulnerable" olan hər hansı bir kod mövcud olarsa və ya həmin veb saytlara girişə müəyyən icazənin təmin olunması üçün "firewall"-da bir neçə portun açılması həyata keçirilərsə, bu da hakerlərə həmin "vulnerable" kod və ya açıq portlar vasitəsilə sistemə təhlükəli müdaxilə və hücumların təşkilinə müəyyən şərait yaratmış ola bilər. Əgər bu cür hal baş verərsə, onda hakerlər zərərverici skriptlər vasitəsilə həmin veb "server" proseslərinə giriş icazəsini əldə etməklə sistemə nəzarətin ələ keçirilməsini təmin edə bilərlər. Məhz buna görə də sistemdə "SElinux"-un tamamilə deaktiv (disable) edilməsi məqsədəuyğun görünmür.

"SElinux"-un rejimləri (modes)

"SELinux" "Disable", "Permissive" və "Enforcing" rejimlərində (3 mode) fəaliyyət göstərir:

  • "Disabled" rejimində "SELinux" tamamilə qeyri-aktiv vəziyyətdə olur. Bu rejim qəti şəkildə tövsiyyə edilmir. Əgər "SELinux" aktivləşdirilibsə (enable), ya "Permissive" rejimdə, ya da "Enforcing" rejimdə olacaqdır;
  • "Permissive" rejimdə "SELinux" təhlükəsizlik siyasətinin tətbiq edilməsini "enforce" etməsə də, lakin loq jurnallarına nəzarətin təmin edilməsini həyat keçirə bilir;
  • "Enforcing" rejimdə "SELinux" təhlükəsizlik siyasətinin tətbiq edilməsi, o cümlədən obyektlərin etiketlənməsi və loq jurnallarına nəzarətin təmin edilməsi və s. həyat keçirir. Bu rejim "Linux" əməliyyat sistemində standard (default) olaraq yer alır.

"SELINUX"-da "sestatus" əmrinin incələnməsi

"SELinux"-un mövcud vəziyyətini və hansı (disable, permissive and enforcing) rejimdə fəaliyyət göstərməsini müəyyən etmək üçün "sestatus" əmrindən istifadə edilir. İndi isə aşağıdakı nümunədə "sestatus" əmrinin nəticəsi olaraq verilmiş bəzi məlumatları incələyək:

[root@srv1 ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

  • SELinux status: - "SELinux"-un aktiv (enabled) və deaktiv (disabled) vəziyyətinin statusunu göstərir, hal-hazırda status aktiv (enabled) vəziyyətdədir;
  • SELinux mount: - "SELinux" tərəfindən daxili olaraq idarə və istifadə olunan bu qovluq fayl sisteminin montaj nöqtəsi hesab olunur. Praktiki olaraq həmin qovluq üçün "ls -l" əmrini icra edirik və qeyd edim ki, "/sys/fs/selinux/ qovluğu daxilində görünən qovluq və fayllar "SELinux" tərəfindən idarə olunur, həmin qovluq və fayllarla praktiki cəhətdən manipulyasiya edilməsi məqsədəuyğun deyil;

[root@srv1 ~]# ls -l /sys/fs/selinux/
total 0
-rw-rw-rw-.   1 root root    0 Aug 27 16:47 access
dr-xr-xr-x.   2 root root    0 Aug 27 16:47 avc
dr-xr-xr-x.   2 root root    0 Aug 27 16:47 booleans
-rw-r--r--.   1 root root    0 Aug 27 16:47 checkreqprot
dr-xr-xr-x. 134 root root    0 Aug 27 16:47 class
--w-------.   1 root root    0 Aug 27 16:47 commit_pending_bools
-rw-rw-rw-.   1 root root    0 Aug 27 16:47 context
-rw-rw-rw-.   1 root root    0 Aug 27 16:47 create
-r--r--r--.   1 root root    0 Aug 27 16:47 deny_unknown
--w-------.   1 root root    0 Aug 27 16:47 disable
-rw-r--r--.   1 root root    0 Aug 27 16:47 enforce
dr-xr-xr-x.   2 root root    0 Aug 27 16:47 initial_contexts
-rw-------.   1 root root    0 Aug 27 16:47 load
-rw-rw-rw-.   1 root root    0 Aug 27 16:47 member
-r--r--r--.   1 root root    0 Aug 27 16:47 mls
crw-rw-rw-.   1 root root 1, 3 Aug 27 16:47 null
-r--r--r--.   1 root root    0 Aug 27 16:47 policy
dr-xr-xr-x.   2 root root    0 Aug 27 16:47 policy_capabilities
-r--r--r--.   1 root root    0 Aug 27 16:47 policyvers
-r--r--r--.   1 root root    0 Aug 27 16:47 reject_unknown
-rw-rw-rw-.   1 root root    0 Aug 27 16:47 relabel
dr-xr-xr-x.   2 root root    0 Aug 27 16:47 ss
-r--r--r--.   1 root root    0 Aug 27 16:47 status
-rw-rw-rw-.   1 root root    0 Aug 27 16:47 user
--w--w--w-.   1 root root    0 Aug 27 16:47 validatetrans

  • SELinux root directory: - "SELinux" əməliyyatları üçün vacib olan bütün konfiqurasiya faylları məhz "/etc/selinux/" qovluğunda yer alır;
  • Loaded policy name: - "SELinux"-un standard (default) yüklənmə siyasəti "targeted" siyasətidir;
  • Current mode (cari vəziyyət): - "enforcing" rejimindədir və bu hissəyə xüsusi diqqət yetirilməlidir.

Qeyd:

"SELinux"-un rejimləri (enforcing, permissive və disabled modes) haqqında yuxarıdakı -"SElinux"-un rejimləri sütununda ətraflı məlumat verilmişdir;

  • Mode from config file: - "current mode" ilə bərabər göstərir və "current mode"-da əks olunan rejim (mode) növünün həmçinin "config file"-da əks olunduğunu bildirir;
  • Policy MLS status: - "MLS" siyasətinin cari və standard olaraq aktiv (enabled) vəziyyətdə olduğunu göstərir;
  • Policy deny_unknown status: - adından da göründüyü kimi, naməlum və şübhəli bir vəziyyətin "deny" edilməsi ilə bağlı bir siyasət toplusudur və standard (default) olarq "allowed" qeyd edilmişdir;
  • Memory protection checking: - yaddaşın qorunmasının yoxlanılması prosesidir ki, burada əsas məqsəd müvafiq giriş icazələri olmayan hər hansı bir tapşırığın yaddaşa daxil olmasının qarşısını almaqdır;
  • Max kernel policy version: - maksimum nüvə siyasəti versiyası cari "SELinux" siyasətinin cari versiyasını göstərir və hal-hazırda bu versiya 33-dür.

Praktiki məlumatlar

"SElinux" rejimlərinin dəyişdirilməsi

"SElinux" rejimləri istər müəyyən əmr vasitəsilə, istərsə də konfiqurasiya faylına keçid etməklə dəyişdirilə bilər ki, bu zaman dəyişikliyin qüvvəyə minməsi üçün sistem yenidən başladılır (restart):

  • konfiqurasiya faylı vasitəsilə - "/etc/selinux/config"
  • "setenforce" əmri vasitəsilə - "setenforce 0" (permissive mode), "setenforce 1" (enforcing mode)

Fərz edək ki, bir "ftp" istifadəçi "home" qovluğuna giriş əldə etmək istəyir və bunun üçün o "shell"-də aşağıdakı əmri icra edir:

[root@srv1 ~]# ftp linuxlab01.com

Bu zaman "linuxlab01.com" server sistemində aşağıdakı proseslər baş verəcəkdir:

  • "FTP" server üçün "syscall" (systemcall) yaradılacaq;
  • "SELinux" deaktivdirsə, "syscall" normal şəkildə fəaliyyət göstərəcək;
  • "SELinux" aktivdirsə, "syscall" onun vasitəsilə fəaliyyət göstərəcək;
  • "SELinux" "Syscall"-ı "/var/log/audit/audit.log" faylına daxil edəcək;
  • "SELinux" aktiv (enable) vəziyyətdə və "permissive" rejimindədirsə, onda "syscall" normal şəkildə fəaliyyət göstərəcək;
  • "SELinux" aktiv (enable) vəziyyətdə və "enforcing" rejimindədirsə, "syscall" "security policy" baxımından yoxlanıldıqdan sonra, yalnız hər hansı bir icazəyə malik olduğu halda fəaliyyət göstərəcək.

"SELinux" bizə hal-hazırda olan rejimin (mode) dəyişdirilməsi imkanını verir və "SELinux"-un cari vəziyyətini təyin etmək üçün yenidən "sestatus" əmrini icra edirik:

[root@srv1 ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

İndi isə bir nümunəyə nəzər salaq:

Fərz edək ki, bir "ftp" istifadəçi "home" qovluğuna giriş əldə edə bilmir və bu zaman problemin aradan qaldırılması, eləcə də problemin "SELinux" ilə bağlı olub-olmadığını müəyyən etmək üçün "SELinux"-un cari "enforcing" rejimini "permissive" rejiminə dəyişməliyik:

  • Əgər həmin "ftp" istifadəçi "enforcing" rejimdə deyil, "permissive" rejimdə "home" qovluğuna girişi əldə edə bilirsə, bu zaman güman və ya ehtimal edə bilərik ki, "SELinux" həmin "ftp" istifadəçini blok edir;
  • Əgər bir "ftp" istifadəçi "permissive" rejimdə "home" qovluğuna girişi əldə bilmirsə, bu zaman əmin ola bilərik ki, problem "SELinux" ilə əlaqəli deyil, çünki "SELinux" bloklama prosesini "permissive" rejimdə icra etmir.

Yuxarıda qeyd etdiyim kimi, "SELinux"-da rejim (mode) dəyişikliyi "setenforce 0" və "setenforce 1" əmrləri vasitəsilə icra olunur ki, bu zaman "setenforce 0" əmri "SELinux"-u "permissive" rejimə, "setenforce 1" əmri isə "SELinux"-u "enforcing" rejimə dəyişir.

Hal-hazırda gördüyünüz kimi, "SELinux" rejimi "enforcing" rejimindədir və indi həmin rejimi "setenforce 0" əmrini icra etməklə "permissive" rejimə dəyişək və nəticəni görmək üçün yenidən "sestatus" və ya "getenforce" əmrlərini icra edək:

[root@srv1 ~]# setenforce 0

Gördüyünüz kimi, hal-hazırda "sestatus" əmrinin nəticəsi olaraq "SELinux"-un rejimi "permissive" rejimə dəyişdi:

[root@srv1 ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   permissive
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

Gördüyünüz kimi, hal-hazırda "getenforce" əmrinin nəticəsi olaraq "SELinux"-un rejimi "permissive" rejimə dəyişdi:

[root@srv1 ~]# getenforce
Permissive

Qeyd:

"SELinux"-un rejiminin "permissive" rejimdə olduğunu "sestatus" və "getenforce" əmrləri vasitəsilə müşahidə etsək də, lakin "SELinux"-un "/etc/selinux/config" konfiqurasiya faylında hələ də "enforcing" rejimdə olduğunu müşahidə edirik ki, sistemə edilən "reboot" əmri belə "/etc/selinux/config" konfiqurasiya faylının "enforcing" rejiminə təsirsiz olur:

[root@srv1 ~]# cat /etc/selinux/config


# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of these three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

İndi isə "SELinux"-un rejimini yenidən "setenforce 1" əmrini icra etməklə "permissive" rejimdən "enforcing" rejimə dəyişərək, "sestatus" və "getenforce" əmrləri vasitəsilə nəticəyə baxaq:

[root@srv1 ~]# setenforce 1

"sestatus" əmrinin nəticəsi:

[root@srv1 ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

"getenforce" əmrinin nəticəsi:

[root@srv1 ~]# getenforce
Enforcing

Linux, "SELinux"-un standart rejimini müəyyən etmək üçün başlanğıcda (startup) "/etc/selinux/config" konfiqurasiya faylını oxuyur. Əgər rejim "enforcing" və ya "permissive" olaraq təyin edilərsə, Linux "SELinux" üçün lazımi kitabxana faylları (library) yükləyəcək, əgər rejim "disabled" olaraq təyin edilərsə, bu zaman Linux "SELinux" ilə əlaqəli heç bir kitabxan fayllarını yükləməyəcəkdir. Məhz buna görə də sistemdə aktiv sessiya zamanı "setenforce" əmrindən fərqli olaraq "SELinux"-un "/etc/selinux/config" konfiqurasiya faylında "enforcing", "permissive" və "disabled" rejimləri (aktiv/enable və deaktiv/disable) arasında dəyişiklik etmək və bu dəyişikliyin qüvvəyə minməsini "reboot" prosesi olmadan təmin etmək mümkün deyil.

İndi isə praktiki olaraq "/etc/selinux/config" konfiqurasiya faylına daxil olaraq "SELinux"-un standard (default) rejimi olan "enforcing" rejimini "disabled" rejimə dəyişərək sistemdə "reboot" əmrini icra edək:

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#   enforcing - SELinux security policy is enforced.

#   permissive - SELinux prints warnings instead of enforcing.

#   disabled - No SELinux policy is loaded.

SELINUX=disabled

# SELINUXTYPE= can take one of these three values:

#   targeted - Targeted processes are protected,

#   minimum - Modification of targeted policy. Only selected processes are protected.

#   mls - Multi Level Security protection.

SELINUXTYPE=targeted

"reboot" əmrinin icra edilməsindən sonra "cat" əmrinin nəticəsi:

[root@srv1 ~]# cat /etc/selinux/config


# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

"getenforce" əmrinin nəticəsi:

[root@srv1 ~]# getenforce
Disabled

Daha əvvəl qeyd etdiyim kimi, əgər "SELinux"-un standard (default) rejimi (deaktiv) "disabled" rejimə dəyişilərsə, yükləmə prosesi (boot process) "SELinux" ilə əlaqəli heç bir kitabxana fayllarını yükləməyəcəkdir ki, bu zaman lazımi kitabxana faylları mövcud olmadan "SELinux"-un yenidən "setenforce" əmri vasitəsilə (enable) "permissive" və "enforcing" rejimə dəyişdirilməsi mümküsüz olur:

[root@srv1 ~]# sestatus
SELinux status:                 disabled

[root@srv1 ~]# getenforce
Disabled

[root@srv1 ~]# setenforce 0
setenforce: SELinux is disabled

[root@srv1 ~]# setenforce 1
setenforce: SELinux is disabled

Məhz buna görə də, "SELinux"-da deaktiv "disabled" rejimdən (enable) "permissive" və "enforcing" rejimə keçid yalnız "/etc/selinux/config" konfiqurasiya faylında ediləcək dəyişiklik və bu dəyişikliyin qüvvəyə minməsi üçün isə sistemə ediləcək "reboot" prosesi vasitəsilə həyata keçir:

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of these three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

"reboot" əmrinin icra edilməsindən sonra "cat" əmrinin nəticəsi:

[root@srv1 ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

[root@srv1 ~]# getenforce
Enforcing

[root@srv1 ~]# setenforce 0

[root@srv1 ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   permissive
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

[root@srv1 ~]# getenforce
Permissive

[root@srv1 ~]# setenforce 1

[root@srv1 ~]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33

[root@srv1 ~]# getenforce
Enforcing

SELinux ilə bağlı vacib məqamlar:

  • "SELinux" 3 rejimdə - "enforcing", "permissive" və "disabled" rejimlərində fəaliyyət göstərir;
  • "Disabled" rejimdə "SELinux" heç bir "syscall"-a müdaxilə etmir;
  • "Permissive" rejimdə "SELinux" hər "syscall"-u qeyd etsə də, lakin heç bir "access request"-i filtirləmir;
  • "Enforcing" rejimdə "SELinux" hər "syscall"-u qeyd edərək təhlükəsizlik baxımından konfiqurasiya edilmiş "security policy"-lərə əsasən "SELinux" sorğuya icazə verib-verməməsini müəyyən edəcək;
  • "SELinux"-u rejimləri (enforcing, permissive, disabled) və siyasətləri (targeted, minimum, mls) "/etc/sysconfig/selinux/ faylında saxlanılır;
  • "Enforcing" rejimi "SELinux"-un standard (default) rejimidir;
  • "SELinux" deaktiv (disable) rejimdədirsə, "setenforce" əmrinin icrası ilə rejim dəyişikliyi ilə bağlı hər hansı bir proses həyata keçmir;
  • "SELinux" aktiv (enable) rejimdədirsə, "setenforce" əmrinin icrası ilə rejim dəyişikliyi ilə bağlı hər bir proses həyata keçir;
  • "SELinux" deaktiv (disabled) rejimdədirsə, "SELinux"-dan heç nə keçməyəcək;
  • "SELinux" aktiv (enable) rejimdədirsə, hər şey "SELinux" vasitəsilə həyata keçəcəkdir.

SELinux Policy

"SELinux" standart "DAC" (Discretionary Access Control) əvəzinə "MAC"-ı (Mandatory Access Control) təmin edir ki, bu da həyata keçirilməsi başqa cür mümkün olmayan bəzi təhlükəsizlik siyasətlərinin təmin edilməsinə imkan verir. Sistemin təhlükəsizliyinin qorunması üçün "SELinux" öz təhlükəsizlik siyasətindən istifadə edir ki, "SELinux" təhlükəsizlik siyasəti əsasən hansı prosesin hansı fayl, kataloq və portlara aid ola biləcəyini müəyyən edən qaydalar toplusudur. Müəyyən edilmiş bu qaydalar toplusu ilə proqram yalnız müəyyən fayllara və həmin faylların funksionallığı üçün tələb olunan proseslərə icazəni təmin edə bilir.

Beləliklə, "SELinux" həmin proqram, fayl və proses növlərini necə müəyyən edə bilir?

"SELinux"-un siyasətləri proqram tərtibatçıları (application developers) tərəfindən yazılır. Bu zaman proqram tərtibatçıları onların tətbiqinin tam olaraq hansı funksiyanı icra edəcəyini və hansı növ faylların işləməsinin lazım olduğunu müəyyən edirlər. Məsələn: "Apache" (Linux Web Sever) proqram tərtibatçıları "Apache Web Sever"-in işləməsi üçün hansı növ faylların və bu fayllar üzərində hansı növ icazələrin tələb olunduğunu müəyyən etdikləri üçün, beləliklə "SELinux" siyasətində proqram tərtibatçıları nəinki "Apache Web Sever" üçün, hətta digər tətbiqlər üçün də vacib qaydalar toplusunun yaradılmasını həyata keçirirlər. "SELinux" proqram və ya proseslə əlaqəli resursları müəyyən etmək üçün kontekstdən istifadə edir. Kontekst Linux fayl sisteminin hər bir obyektinə (fayl, kataloq, proqram, port, proses və s.) təyin edilmiş təhlükəsizliklə bağlı məlumatların toplusudur ki, "SELinux" girişə nəzarət qərarı (access control decision) vermək üçün məhz bu kontekstdən istifadə edir.

No alt text provided for this image

Ümumiyyətlə "SELinux"-un 3 əsas və müxtəlif siyasəti növü vardır:

  • Targeted - standard siyasətdir və yalnız hədəflənmiş proseslərə "access control" nəzarətini həyata keçirir və həmin hədəflənmiş proseslər də "SELiux" tərəfindən qorunur;
  • Minimum - hədəflənmiş siyasətin cüzi modifikasiyası olan bu siyasətdə yalnız seçilmiş proseslər "SELinux" tərəfindən qorunur;
  • MLS (Multi Level Security Protection) - demək olar ki, "SELinux" rejimi və siyasətlərindən asılı olaraq bu siyasət olduqca mürəkkəb bir siyasət sayılır. "MLS" siyasəti müxtəlif səviyyəli proseslərə "access control" tətbiq edir ki, hər səviyyədə olan istifadəçi girişi üçün fərqli qaydalar mövcud olur. Lakin istifadəçilər müəyyən bir səviyyədə prosesi həyata keçirmək üçün düzgün icazəyə malik olmadıqda bu zaman məlumat əldə edə bilmirlər. "MLS" sistem təhlükəsizliyi üçün "SELinux"-da "Bell-LaPadula (BLP)" modelini həyata keçirir ki, bu model təhlükəsizlik baxımından məlumat axınına nəzarət etmək üçün fayl, proses və digər sistem obyektlərinə etiketləri (labels) tətbiq edir.Dostlar,

    Güman edirəm ki, "SELinux" haqqında ətraflı bu məqaləm maariflənməniz istiqamətində faydalı olar.

    Təşəkkür edirəm və uğurlar!
    Hörmətlə,
    Araz Əhmədov

Comments

Post a Comment

Popular posts from this blog

How To Install WordPress On Rocky Linux 9

WordPress is widely recognized as the preferred platform for building websites and blogs due to its ease of use and wide range of customization features. Suppose you’re considering installing WordPress on Rocky Linux, an open-source operating system known for its reliability. In that case, you’ll find the process to be quite straightforward when coupled with the LAMP stack – Linux, Apache, MySQL, and PHP. In the following article, we will guide you through each step of setting up WordPress on Rocky Linux using LAMP, allowing you to get your website or blog up and running smoothly in no time. So, let’s dive into the process! Install WordPress On Rocky Linux 9 Step 1: Update Your System in Rocky Linux Step 2: Installation process of LAMP Step 3: Install WordPress in Rocky Linux 9 Step 4: Configuration of Database Step 5: Configuration of WordPress Step 6: Configuration of Firewall settings Step 7: Log in to WordPress Step 1: Update Your System in Rocky Linux Before installing any new sof...

Fayl Bərpa Alqoritmləri

  Salam dostlar, Bu yazımda sizə fayl bərpa proqramlarının (Recuva, Wondershare, EaseUS Data Recovery və s.) faylları bərpa etməsi haqqında bəhs etmək istərdim ki, məhz bu proqramlar silinmiş məlumatların (şəkil, video, sənəd və s.) geri qaytarılması üçün xüsusi alqoritmlərdən istifadə edir. Bu prosesin texniki tərəflərini izah etmək üçün əvvəlcə bir neçə əsas anlayışı bilmək lazımdır: Silinmiş faylların vəziyyəti Əksər fayl sistemlərində (məsələn, NTFS, FAT32, exFAT) fayl silindikdə, həmin fayl fiziki olaraq diskin üzərindən silinmir ki, bu zaman: Fayl sistemində faylın olduğu yer boş olaraq işarələnir və həmin sahə üzərində yeni məlumat yazıla bilməsi üçün icazə verilir; Faylın "metadata"-ları (fayl adı, ölçüsü, yaradılma tarixi və s.) xüsusi strukturlarda saxlanılır (məsələn, NTFS-də MFT / Master File Table). Bu səbəbdən, fayl silindikdən dərhal sonra onu bərpa etmək mümkündür, çünki həmin məlumat fiziki olaraq diskin üzərində qalır. Ancaq yeni məlumat həmin yerə yazıldıqd...

Antivirus Mexanizmi

Salam dostlar, Bu yazımda sizə antivirus mexanizminin necə işlədiyi haqqında bəzi məlumatları təqdim etmək istərdim. Belə ki, bildiyiniz kimi antivirus proqramları kompüterlərin təhlükəsizliyini təmin etmək üçün ən vacib alətlərdən biridir ki, məhz virusları aşkar etmək, onların qarşısını almaq və onları zərərsizləşdirmək üçün nəzərdə tutulmuşdur. Beləliklə: 🔍 Virusun aşkarlanması Antivirus proqramları, əsasən, iki - imza əsaslı və davranış əsaslı üsulla virusları aşkar edir: İmza əsaslı aşkarlama (signature-based detection) - bu üsul, virusların əvvəlcədən müəyyən edilmiş imzaları (məlumat bazası) ilə müqayisə olunmasına əsaslanır. Hər bir virusun unikal bir imzası (kod parçası) olur və antivirus proqramı bu imzaları tanımaq üçün məlumat bazasını mütəmadi olaraq yeniləyir ki, bu üsul yalnız virusları aşkarlaya bilir; Davranış əsaslı aşkarlama (behavior-based detection) - bu üsul, virusun davranışına əsaslanaraq zərərli fəaliyyətləri müəyyən edir. Yəni, bir virusun fayllara icazəsiz...