αžŸαž“αŸ’αž›αžΉαž€αž”αž“αŸ’αž›αŸ† SELinux αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ– 42 αž…αž˜αŸ’αž›αžΎαž™αž…αŸ†αž–αŸ„αŸ‡αžŸαŸ†αžŽαž½αžšαžŸαŸ†αžαžΆαž“αŸ‹αŸ—

αž€αžΆαžšαž”αž€αž”αŸ’αžšαŸ‚αž’αžαŸ’αžαž”αž‘αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαŸ€αž”αž…αŸ†αž‡αžΆαž–αž·αžŸαŸαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαž·αžŸαŸ’αžŸαž“αŸƒαžœαž‚αŸ’αž‚αžŸαž·αž€αŸ’αžŸαžΆ "αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž›αžΈαž“αž»αž…".

αžŸαž“αŸ’αž›αžΉαž€αž”αž“αŸ’αž›αŸ† SELinux αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ– 42 αž…αž˜αŸ’αž›αžΎαž™αž…αŸ†αž–αŸ„αŸ‡αžŸαŸ†αžŽαž½αžšαžŸαŸ†αžαžΆαž“αŸ‹αŸ—

αž“αŸ…αž‘αžΈαž“αŸαŸ‡ αž’αŸ’αž“αž€αž“αžΉαž„αž‘αž‘αž½αž›αž”αžΆαž“αž…αž˜αŸ’αž›αžΎαž™αž…αŸ†αž–αŸ„αŸ‡αžŸαŸ†αžŽαž½αžšαžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž’αŸ†αž–αžΈαž‡αžΈαžœαž·αž αžŸαž€αž›αž›αŸ„αž€ αž“αž·αž„αž’αŸ’αžœαžΈαŸ—αž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž›αžΈαž“αž»αž… αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αŸ”

β€œαž€αžΆαžšαž–αž·αžαžŸαŸ†αžαžΆαž“αŸ‹αžŠαŸ‚αž›αž’αŸ’αžœαžΈαŸ—αž˜αž·αž“αžαŸ‚αž„αžαŸ‚αžŠαžΌαž…αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αž‘αžΌαž‘αŸ…β€¦β€

-αž›αŸ„αž€ Douglas Adams, αž˜αž‚αŸ’αž‚αž»αž‘αŸ’αž‘αŸαžŸαž€αŸαžšαž”αžŸαŸ‹ Hitchhiker αž‘αŸ…αž€αžΆαž“αŸ‹ Galaxy

αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αŸ” αž”αž„αŸ’αž€αžΎαž“αž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹αŸ” αž€αžΆαžšβ€‹αž†αŸ’αž›αžΎαž™αž†αŸ’αž›αž„αŸ” αž‚αŸ„αž›αž“αž™αŸ„αž”αžΆαž™αŸ” Horsemen αž”αž½αž“αž“αžΆαž€αŸ‹αž“αŸƒ Apocalypse sysadmin αŸ” αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαž€αž·αž…αŸ’αž…αž€αžΆαžšαž”αŸ’αžšαž…αžΆαŸ†αžαŸ’αž„αŸƒαžšαž”αžŸαŸ‹αž™αžΎαž„ - αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž€αžΆαžšαž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€ αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ αž€αžΆαžšαž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αŸ”αž›αŸ” - αž™αžΎαž„αž€αŸαž‘αž‘αž½αž›αžαž»αžŸαžαŸ’αžšαžΌαžœαž…αŸ†αž–αŸ„αŸ‡αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž”αžŸαŸ‹αž™αžΎαž„αž•αž„αžŠαŸ‚αžšαŸ” αžŸαžΌαž˜αŸ’αž”αžΈβ€‹αžαŸ‚β€‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’β€‹αž‘αžΆαŸ†αž„β€‹αž“αŸ„αŸ‡β€‹αžŠαŸ‚αž›β€‹αž’αŸ’αž“αž€β€‹αž•αŸ’αžŠαž›αŸ‹β€‹αž—αžΆαž‚αžΈβ€‹αž‘αžΈβ€‹αž”αžΈβ€‹αžŽαŸ‚αž“αžΆαŸ†β€‹αžαžΆβ€‹αž™αžΎαž„β€‹αž”αž·αž‘β€‹αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–β€‹αžŠαŸ‚αž›β€‹αž”αžΆαž“β€‹αž–αž„αŸ’αžšαžΉαž„αŸ” αžœαžΆαž˜αžΆαž“αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžŠαžΌαž…αž‡αžΆαž€αžΆαžšαž„αžΆαžš αž›αŸ„αž€ Ethan Hunt αž–αžΈ "αž”αŸαžŸαž€αž€αž˜αŸ’αž˜αŸ– Impossible" αŸ”

αž”αŸ’αžšαžˆαž˜αž˜αž»αžαž“αžΉαž„αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡ αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αž½αž™αž…αŸ†αž“αž½αž“αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž‘αž‘αž½αž›αž™αž€ αžαŸ’αž“αžΆαŸ†αž‚αŸ’αžšαžΆαž”αŸ‹αž–αžŽαŸŒαžαŸ€αžœαžŠαŸ„αž™β€‹αžŸαžΆαžšβ€‹αž–αž½αž€αž‚αŸβ€‹αž‚αž·αžβ€‹αžαžΆβ€‹αž–αž½αž€αž‚αŸβ€‹αž“αžΉαž„β€‹αž˜αž·αž“β€‹αžŠαžΉαž„β€‹αž…αž˜αŸ’αž›αžΎαž™β€‹αž…αŸ†αž–αŸ„αŸ‡β€‹αžŸαŸ†αžŽαž½αžšβ€‹αžŠαŸβ€‹αž’αŸ†β€‹αž“αŸƒβ€‹αž‡αžΈαžœαž·αž αžŸαž€αž›αž›αŸ„αž€ αž“αž·αž„β€‹αž’αŸ’αžœαžΈβ€‹αž‘αžΆαŸ†αž„β€‹αž’αžŸαŸ‹β€‹αž“αŸ„αŸ‡β€‹αž‘αŸαŸ” αž αžΎαž™αžŠαžΌαž…αžŠαŸ‚αž›αž™αžΎαž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆαžŠαžΉαž„ αž…αž˜αŸ’αž›αžΎαž™αž“αŸ„αŸ‡αž‚αžΊ 42αŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ’αž˜αžΆαžšαžαžΈαž“αŸƒ The Hitchhiker's Guide to the Galaxy αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž…αž˜αŸ’αž›αžΎαž™αž…αŸ†αž“αž½αž“ 42 αž…αŸ†αž–αŸ„αŸ‡αžŸαŸ†αžŽαž½αžšαžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž’αŸ†αž–αžΈαž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ αž“αž·αž„αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ” SELinux αž“αŸ…αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”

1. SELinux αž‚αžΊαž‡αžΆαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžΆαžšαž…αžΌαž›αžŠαŸ„αž™αž”αž„αŸ’αžαŸ† αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸαž™αžαžΆαžšαžΆαž›αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž˜αžΆαž“αžŸαŸ’αž›αžΆαž€αž˜αž½αž™αŸ” αž―αž€αžŸαžΆαžš ថត αž“αž·αž„αžœαžαŸ’αžαž»αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž“αžΈαž˜αž½αž™αŸ—αž€αŸαž˜αžΆαž“αžŸαŸ’αž›αžΆαž€αž•αž„αžŠαŸ‚αžšαŸ” αž…αŸ’αž”αžΆαž”αŸ‹αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαžšαžœαžΆαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αžŠαžΆαž€αŸ‹αžŸαŸ’αž›αžΆαž€ αž“αž·αž„αžœαžαŸ’αžαž»αŸ” αžαžΊαžŽαŸ‚αž›αž’αž“αž»αžœαžαŸ’αžαž…αŸ’αž”αžΆαž”αŸ‹αž‘αžΆαŸ†αž„αž“αŸαŸ‡αŸ”

2. αž‚αŸ„αž›αž‚αŸ†αž“αž·αžαžŸαŸ†αžαžΆαž“αŸ‹αž–αžΈαžšαž‚αžΊαŸ– αž€αžΆαžšαžŠαžΆαž€αŸ‹αžŸαŸ’αž›αžΆαž€αŸ” - αž€αžΆαžšαžŸαž˜αŸ’αž‚αžΆαž›αŸ‹ (αž―αž€αžŸαžΆαžš αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž…αŸ’αžšαž€αŸ”αž›αŸ”) αž“αž·αž„ αž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž (αžŠαŸ‚αž›αž‰αŸ‚αž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΈαž‚αŸ’αž“αžΆαž‘αŸ…αžœαž·αž‰αž‘αŸ…αž˜αž€αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αŸ’αžšαž—αŸαž‘) αŸ”

3. αž‘αž˜αŸ’αžšαž„αŸ‹αžŸαŸ’αž›αžΆαž€αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαŸ” user:role:type:level (αžŸαŸ’αžšαŸαž…αž…αž·αžαŸ’αž)αŸ”

4. αž‚αŸ„αž›αž”αŸ†αžŽαž„αž“αŸƒαž€αžΆαžšαž•αŸ’αžαž›αŸ‹αžŸαž“αŸ’αžαž·αžŸαž»αžαž–αž αž»αž€αž˜αŸ’αžšαž·αž (αžŸαž“αŸ’αžαž·αžŸαž»αžαž–αž αž»αž€αž˜αŸ’αžšαž·αž - MLS) αž‚αžΊαžŠαžΎαž˜αŸ’αž”αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš (αžŠαŸ‚αž“) αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž€αž˜αŸ’αžšαž·αžαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž“αžΉαž„αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ” αž§αž‘αžΆαž αžšαžŽαŸ αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαž˜αŸ’αž„αžΆαžαŸ‹αž˜αž·αž“αž’αžΆαž…αž’αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŸαž˜αŸ’αž„αžΆαžαŸ‹αž€αŸ†αž–αžΌαž›αž”αžΆαž“αž‘αŸαŸ”

5. αž’αžΆαž“αžΆαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž…αŸ’αžšαžΎαž“αž”αŸ’αžšαž—αŸαž‘ (αžŸαž“αŸ’αžαž·αžŸαž»αžαž…αŸ’αžšαžΎαž“αž”αŸ’αžšαž—αŸαž‘ - MCS) αž€αžΆαžšαž–αžΆαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸ’αžšαžŠαŸ€αž„αž‚αŸ’αž“αžΆαž–αžΈαž‚αŸ’αž“αžΆαž‘αŸ…αžœαž·αž‰αž‘αŸ…αž˜αž€ (αž§αž‘αžΆαž αžšαžŽαŸ αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž“αž·αž˜αŸ’αž˜αž·αž αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ OpenShift αž”αŸ’αžšαž’αž”αŸ‹αžαŸ’αžŸαžΆαž…αŸ‹ SELinux αž’αž»αž„αŸ”αž›αŸ”)αŸ”

6. αž‡αž˜αŸ’αžšαžΎαžŸαžαžΊαžŽαŸ‚αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžšαž”αŸ€αž” SELinux αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜αŸ–

  • autorelabel=1 β†’ αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš relabeling
  • selinux=0 β†’ αžαžΊαžŽαŸ‚αž›αž˜αž·αž“αž•αŸ’αž‘αž»αž€αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ SELinux αž‘αŸαŸ”
  • enforcing=0 β†’αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„αžšαž”αŸ€αž”αž’αž“αž»αž‰αŸ’αž‰αžΆαž

7. αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαžŠαžΆαž€αŸ‹αžŸαŸ’αž›αžΆαž€αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž‘αžΆαŸ†αž„αž˜αžΌαž›αž‘αžΎαž„αžœαž·αž‰αŸ–

# touch /.autorelabel
#reboot

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αžΆαžšαžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αžΆαž“αž€αŸ†αž αž»αžŸαž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ† αž’αŸ’αž“αž€αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαžαŸ’αžšαžΌαžœαž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜αž“αŸ…αž€αŸ’αž“αž»αž„αžšαž”αŸ€αž”αž’αž“αž»αž‰αŸ’αž‰αžΆαžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž‡αŸ„αž‚αž‡αŸαž™αŸ”

8. αžŠαžΎαž˜αŸ’αž”αžΈαž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžαžΆαžαžΎ SELinux αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžΎαž€αŸ– # getenforce

9. αžŠαžΎαž˜αŸ’αž”αžΈαž”αžΎαž€/αž”αž·αž‘ SELinux αž‡αžΆαž”αžŽαŸ’αžαŸ„αŸ‡αž’αžΆαžŸαž“αŸ’αž“αŸ– # setenforce [1|0]

10. αž€αŸ†αž–αž»αž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžŸαŸ’αžαžΆαž“αž—αžΆαž– SELinuxαŸ– # sestatus

11. αž―αž€αžŸαžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αŸ– /etc/selinux/config

12. តើ SELinux αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž™αŸ‰αžΆαž„αžŠαžΌαž…αž˜αŸ’αžαŸαž…? αž“αŸαŸ‡αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸαž€αžΆαžšαžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαž‚αŸαž αž‘αŸ†αž–αŸαžš ApacheαŸ–

  • αžαŸ†αžŽαžΆαž„αž‚αŸ„αž›αž–αžΈαžšαŸ– /usr/sbin/httpdβ†’httpd_exec_t
  • αžαžαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αŸ– /etc/httpdβ†’httpd_config_t
  • αžαžαž―αž€αžŸαžΆαžšαž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αŸ– /var/log/httpd β†’ httpd_log_t
  • αžαžαž˜αžΆαžαž·αž€αžΆαŸ– /var/www/html β†’ httpd_sys_content_t
  • αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŸαŸ’αž‚αŸ’αžšαžΈαž”αŸ– /usr/lib/systemd/system/httpd.service β†’ httpd_unit_file_d
  • αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš: /usr/sbin/httpd -DFOREGROUND β†’ httpd_t
  • αž…αŸ’αžšαž€αŸ– 80/tcp, 443/tcp β†’ httpd_t, http_port_t

αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ’αž“αž»αž„αž”αžšαž·αž”αž‘ httpd_tαž’αžΆαž…αž’αŸ’αžœαžΎαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αžœαžαŸ’αžαž»αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αž›αžΆαž€ httpd_something_t.

13. αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αž‘αž‘αž½αž›αž™αž€αž’αžΆαž‚αž»αž™αž˜αŸ‰αž„αŸ‹ -Z αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž› αž”αž„αŸ’αž€αžΎαž αž“αž·αž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž”αžšαž·αž”αž‘αŸ–

  • ls -Z
  • id -Z
  • ps -Z
  • netstat -Z
  • cp -Z
  • mkdir -Z

αž”αžšαž·αž”αž‘αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž―αž€αžŸαžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αžšαž·αž”αž‘αž“αŸƒαžαžαž˜αŸαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸ (αžŠαŸ„αž™αž˜αžΆαž“αž€αžšαžŽαžΈαž›αžΎαž€αž›αŸ‚αž„αž˜αž½αž™αž…αŸ†αž“αž½αž“)αŸ” RPMs αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž”αžšαž·αž”αž‘αžŠαžΌαž…αž‡αžΆαž’αŸ†αž‘αž»αž„αž–αŸαž›αžŠαŸ†αž‘αžΎαž„αŸ”

14. αž˜αžΆαž“αž˜αžΌαž›αž αŸαžαž»αž…αž˜αŸ’αž”αž„αž”αž½αž“αž“αŸƒαž€αŸ†αž αž»αžŸ SELinux αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαž›αž˜αŸ’αž’αž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž…αŸ†αžŽαž»αž… 15-21 αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

  • αž”αž‰αŸ’αž αžΆαžŠαžΆαž€αŸ‹αžŸαŸ’αž›αžΆαž€
  • αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž’αŸ’αžœαžΈαž˜αž½αž™αžŠαŸ‚αž› SELinux αžαŸ’αžšαžΌαžœαžŠαžΉαž„
  • αž€αŸ†αž αž»αžŸαž€αŸ’αž“αž»αž„αž‚αŸ„αž›αž€αžΆαžšαžŽαŸ/αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ SELinux
  • αž–αŸαžαŸŒαž˜αžΆαž“αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›

15. αž”αž‰αŸ’αž αžΆαžŠαžΆαž€αŸ‹αžŸαŸ’αž›αžΆαž€αŸ– αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž―αž€αžŸαžΆαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„ /srv/myweb αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžŠαž·αžŸαŸαž’αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžœαž·αž’αžΈαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαžΎαž˜αŸ’αž”αžΈαž‡αž½αžŸαž‡αž»αž›αžœαžΆαŸ–

  • αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžŸαŸ’αž‚αžΆαž›αŸ‹αžŸαŸ’αž›αžΆαž€:
    # semanage fcontext -a -t httpd_sys_content_t '/srv/myweb(/.*)?'
  • αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžŸαŸ’αž‚αžΆαž›αŸ‹αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž˜αžΆαž“αžŸαž‰αŸ’αž‰αžΆαž”αŸ’αžšαž αžΆαž€αŸ‹αž”αŸ’αžšαž αŸ‚αž›αŸ–
    # semanage fcontext -a -e /srv/myweb /var/www
  • αž€αžΆαžšαžŸαŸ’αžŠαžΆαžšαž”αžšαž·αž”αž‘ (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžšαžŽαžΈαž‘αžΆαŸ†αž„αž–αžΈαžš)αŸ–
    # restorecon -vR /srv/myweb

16. αž”αž‰αŸ’αž αžΆαžŠαžΆαž€αŸ‹αžŸαŸ’αž›αžΆαž€αŸ– αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž―αž€αžŸαžΆαžšαž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αž€αžΆαžšαž…αž˜αŸ’αž›αž„αžœαžΆ αž―αž€αžŸαžΆαžšαž“αžΉαž„αžšαž€αŸ’αžŸαžΆαž”αžšαž·αž”αž‘αžŠαžΎαž˜αžšαž”αžŸαŸ‹αžœαžΆαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡αŸ–

  • αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž”αžšαž·αž”αž‘αž‡αžΆαž˜αž½αž™αžŸαŸ’αž›αžΆαž€αŸ–
    # chcon -t httpd_system_content_t /var/www/html/index.html
  • αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž”αžšαž·αž”αž‘αžŠαŸ„αž™αž”αŸ’αžšαžΎαžŸαŸ’αž›αžΆαž€αžαŸ†αžŽαŸ–
    # chcon --reference /var/www/html/ /var/www/html/index.html
  • αžŸαŸ’αžŠαžΆαžšαž”αžšαž·αž”αž‘ (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžšαžŽαžΈαž‘αžΆαŸ†αž„αž–αžΈαžš)αŸ– # restorecon -vR /var/www/html/

17. αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“ SELinux αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŠαžΉαž„αžαžΆ HTTPD αž€αŸ†αž–αž»αž„αžŸαŸ’αžαžΆαž”αŸ‹αž“αŸ…αž›αžΎαž…αŸ’αžšαž€ 8585 αž”αŸ’αžšαžΆαž”αŸ‹ SELinux:

# semanage port -a -t http_port_t -p tcp 8585

18. SELinux αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŠαžΉαž„ αžαž˜αŸ’αž›αŸƒαž”αŸŠαžΌαž›αžΈαž“αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž•αŸ’αž“αŸ‚αž€αžαŸ’αž›αŸ‡αž“αŸƒαž‚αŸ„αž›αž€αžΆαžšαžŽαŸ SELinux αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸ…αž–αŸαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αž’αŸ†αž–αžΈαž‚αŸ„αž›αž€αžΆαžšαžŽαŸ SELinux αžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž‡αžΆαž“αŸ‹αž–αžΈαž›αžΎαŸ” αž§αž‘αžΆαž αžšαžŽαŸ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž…αž„αŸ‹αž±αŸ’αž™ httpd αž•αŸ’αž‰αžΎαž’αŸŠαžΈαž˜αŸ‚αž› αžŸαžΌαž˜αž”αž‰αŸ’αž…αžΌαž›αŸ– # setsebool -P httpd_can_sendmail 1

19. SELinux αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŠαžΉαž„ αžαž˜αŸ’αž›αŸƒαž‘αžΌαž‡αžΈαžαž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž”αžΎαž€/αž”αž·αž‘αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ SELinuxαŸ–

  • αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αžαž˜αŸ’αž›αŸƒαž”αŸŠαžΌαž›αžΈαž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ– # getsebool -a
  • αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž€αžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆαž“αžΈαž˜αž½αž™αŸ—αŸ– # semanage boolean -l
  • αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αžαž˜αŸ’αž›αŸƒαž”αŸŠαžΌαž›αžΈαž“αŸ– # setsebool [_boolean_] [1|0]
  • αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž’αž…αž·αž“αŸ’αžšαŸ’αžαŸƒαž™αŸαž”αž“αŸ’αžαŸ‚αž˜ -PαŸ” αž§αž‘αžΆαž αžšαžŽαŸαŸˆ # setsebool httpd_enable_ftp_server 1 -P

20. αž‚αŸ„αž›αž€αžΆαžšαžŽαŸ/αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ SELinux αž’αžΆαž…αž˜αžΆαž“αž€αŸ†αž αž»αžŸ αžšαž½αž˜αž‘αžΆαŸ†αž„αŸ–

  • αž•αŸ’αž›αžΌαžœαž€αžΌαžŠαž˜αž·αž“αž’αž˜αŸ’αž˜αžαžΆ
  • αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’
  • αž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αž stdout
  • αž›αŸαž…αž’αŸ’αž›αžΆαž™αž―αž€αžŸαžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆ
  • αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“αŸ”
  • αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αžŠαŸ‚αž›αžŸαžΆαž„αžŸαž„αŸ‹αž˜αž·αž“αž›αŸ’αž’

αž”αžΎαž€αžŸαŸ†αž”αž»αžαŸ’αžš (αž€αž»αŸ†αžŠαžΆαž€αŸ‹αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž‘αŸ… Bugzilla; Bugzilla αž˜αž·αž“αž˜αžΆαž“ SLA) αŸ”

21. αž–αŸαžαŸŒαž˜αžΆαž“αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž”αžΆαž“αžŠαžΆαž€αŸ‹αž€αž˜αŸ’αžšαž·αžαžŠαŸ‚αž“αž–αŸ’αž™αžΆαž™αžΆαž˜αŸ–

  • αž•αŸ’αž‘αž»αž€αž˜αŸ‰αžΌαžŒαž»αž›αžαžΊαžŽαŸ‚αž›
  • αž”αž·αž‘αž˜αž»αžαž„αžΆαžš SELinux αžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αžαŸ†
  • αžŸαžšαžŸαŸαžšβ€‹αž‘αŸ…αž€αžΆαž“αŸ‹ etc_t/shadow_t
  • αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž…αŸ’αž”αžΆαž”αŸ‹ iptables

22. αž§αž”αž€αžšαžŽαŸ SELinux αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αž„αŸ’αž€αžΎαžαž˜αŸ‰αžΌαžŒαž»αž›αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαŸ–

# yum -y install setroubleshoot setroubleshoot-server

αž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜αž‘αžΎαž„αžœαž·αž‰ αž¬αž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜αž‘αžΎαž„αžœαž·αž‰ auditd αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αŸ”

23. αž”αŸ’αžšαžΎ

journalctl

αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž αžΆαž‰αž”αž‰αŸ’αž‡αžΈαž“αŸƒαž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž—αŸ’αž‡αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™ setroubleshoot:

# journalctl -t setroubleshoot --since=14:20

24. αž”αŸ’αžšαžΎ journalctl αžŠαžΎαž˜αŸ’αž”αžΈαžšαžΆαž™αž”αž‰αŸ’αž‡αžΈαž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž—αŸ’αž‡αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™αžŸαŸ’αž›αžΆαž€ SELinux αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αŸ” αž§αž‘αžΆαž αžšαžŽαŸ:

# journalctl _SELINUX_CONTEXT=system_u:system_r:policykit_t:s0

25. αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αŸ†αž αž»αžŸ SELinux αž€αžΎαžαž‘αžΎαž„ αžŸαžΌαž˜αž”αŸ’αžšαžΎαž€αŸ†αžŽαžαŸ‹αž αŸαžαž» setroubleshoot αž•αŸ’αžαž›αŸ‹αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αž’αžΆαž…αž’αŸ’αžœαžΎαž‘αŸ…αž”αžΆαž“αŸ”
αž§αž‘αžΆαž αžšαžŽαŸαž–αžΈ journalctl:

Jun 14 19:41:07 web1 setroubleshoot: SELinux is preventing httpd from getattr access on the file /var/www/html/index.html. For complete message run: sealert -l 12fd8b04-0119-4077-a710-2d0e0ee5755e

# sealert -l 12fd8b04-0119-4077-a710-2d0e0ee5755e
SELinux is preventing httpd from getattr access on the file /var/www/html/index.html.

***** Plugin restorecon (99.5 confidence) suggests ************************

If you want to fix the label,
/var/www/html/index.html default label should be httpd_syscontent_t.
Then you can restorecon.
Do
# /sbin/restorecon -v /var/www/html/index.html

26. αž€αžΆαžšαž€αžαŸ‹αžαŸ’αžšαžΆαŸ– SELinux αž€αžαŸ‹αžαŸ’αžšαžΆαž–αŸαžαŸŒαž˜αžΆαž“αž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αž‡αžΆαž…αŸ’αžšαžΎαž“αŸ–

  • / var / log / សអរ
  • /var/log/audit/audit.log
  • /var/lib/setroubleshoot/setroubleshoot_database.xml

27. αž€αžΆαžšαž€αžαŸ‹αžαŸ’αžšαžΆαŸ– αž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αžšαž€αž€αŸ†αž αž»αžŸ SELinux αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αžŸαžœαž“αž€αž˜αŸ’αž˜αŸ–

# ausearch -m AVC,USER_AVC,SELINUX_ERR -ts today

28. αžŠαžΎαž˜αŸ’αž”αžΈαžŸαŸ’αžœαŸ‚αž„αžšαž€αžŸαžΆαžš SELinux Access Vector Cache (AVC) αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™αŸ–

# ausearch -m avc -c httpd

29. αž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ audit2allow αž”αŸ’αžšαž˜αžΌαž›αž–αŸαžαŸŒαž˜αžΆαž“αž–αžΈαž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž αžΆαž˜αžƒαžΆαžαŸ‹ αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž”αž„αŸ’αž€αžΎαžαž…αŸ’αž”αžΆαž”αŸ‹αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž’αž“αž»αž‰αŸ’αž‰αžΆαž SELinux αŸ” αž§αž‘αžΆαž αžšαžŽαŸ:

  • αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž€αžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆαžŠαŸ‚αž›αž˜αž“αž»αžŸαŸ’αžŸαž’αžΆαž…αž’αžΆαž“αž”αžΆαž“αž’αŸ†αž–αžΈαž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžŠαž·αžŸαŸαž’αŸ– # audit2allow -w -a
  • αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž…αŸ’αž”αžΆαž”αŸ‹αž’αž“αž»αžœαžαŸ’αžαž”αŸ’αžšαž—αŸαž‘αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžŠαž·αžŸαŸαž’αŸ– # audit2allow -a
  • αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž˜αŸ‰αžΌαžŒαž»αž›αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αŸ– # audit2allow -a -M mypolicy
  • αž‡αž˜αŸ’αžšαžΎαžŸ -M αž”αž„αŸ’αž€αžΎαžβ€‹αž―αž€αžŸαžΆαžšβ€‹αž’αž“αž»αžœαžαŸ’αžβ€‹αž”αŸ’αžšαž—αŸαž‘ (.te) αž‡αžΆαž˜αž½αž™β€‹αž“αžΉαž„β€‹αžˆαŸ’αž˜αŸ„αŸ‡β€‹αžŠαŸ‚αž›β€‹αž”αžΆαž“β€‹αž”αž‰αŸ’αž‡αžΆαž€αŸ‹ αž αžΎαž™β€‹αž…αž„αž€αŸ’αžšαž„β€‹αž…αŸ’αž”αžΆαž”αŸ‹β€‹αž‘αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αž€αž‰αŸ’αž…αž”αŸ‹β€‹αž‚αŸ„αž›αž€αžΆαžšαžŽαŸ (.pp)αŸ– mypolicy.pp mypolicy.te
  • αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ†αž‘αžΎαž„αž˜αŸ‰αžΌαžŒαž»αž›αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αŸ– # semodule -i mypolicy.pp

30. αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€ (αžŠαŸ‚αž“) αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ’αž“αž»αž„αžšαž”αŸ€αž”αž’αž“αž»αž‰αŸ’αž‰αžΆαžαŸ– # semanage permissive -a httpd_t

31. αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž›αŸ‚αž„αž…αž„αŸ‹αž±αŸ’αž™αžŠαŸ‚αž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαŸ– # semanage permissive -d httpd_t

32. αžŠαžΎαž˜αŸ’αž”αžΈαž”αž·αž‘αžŠαŸ‚αž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ– # semodule -d permissivedomains

33. αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‚αŸ„αž›αž€αžΆαžšαžŽαŸ MLS SELinuxαŸ– # yum install selinux-policy-mls
Π² /etc/selinux/config:

SELINUX=permissive
SELINUXTYPE=mls

αžαŸ’αžšαžΌαžœαž”αŸ’αžšαžΆαž€αžŠαžαžΆ SELinux αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ’αž“αž»αž„αžšαž”αŸ€αž”αž’αž“αž»αž‰αŸ’αž‰αžΆαžαŸ– # setenforce 0
αž”αŸ’αžšαžΎαžŸαŸ’αž‚αŸ’αžšαžΈαž” fixfilesαžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆαžαžΆαž―αž€αžŸαžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαžΆαž€αŸ‹αžŸαŸ’αž›αžΆαž€αž‘αžΎαž„αžœαž·αž‰αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžŠαžΎαž˜αž‘αžΎαž„αžœαž·αž‰αž”αž“αŸ’αž‘αžΆαž”αŸ‹αŸ–

# fixfiles -F onboot # reboot

34. αž”αž„αŸ’αž€αžΎαžαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ‚αž›αž˜αžΆαž“αž‡αž½αžš MLS αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™αŸ– # useradd -Z staff_u john

αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ useraddαž‚αžΌαžŸαž•αŸ‚αž“αž‘αžΈαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžαŸ’αž˜αžΈαž‘αŸ…αž“αžΉαž„αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ SELinux αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹ (αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž“αŸαŸ‡, staff_u).

35. αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž•αŸ‚αž“αž‘αžΈαžšαžœαžΆαž„αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ SELinux αž“αž·αž„ LinuxαŸ– # semanage login -l

36. αž€αŸ†αžŽαžαŸ‹αž‡αž½αžšαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ– # semanage login --modify --range s2:c100 john

37. αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ‚αžŸαŸ’αž›αžΆαž€αžαžαž•αŸ’αž‘αŸ‡αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎ (αž”αžΎαž…αžΆαŸ†αž”αžΆαž…αŸ‹)αŸ– # chcon -R -l s2:c100 /home/john

38. αžŠαžΎαž˜αŸ’αž”αžΈαž˜αžΎαž›αž”αŸ’αžšαž—αŸαž‘αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αŸ– # chcat -L

39. αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž”αŸ’αžšαž—αŸαž‘ αž¬αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αž„αŸ’αž€αžΎαžαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„ αžŸαžΌαž˜αž€αŸ‚αžŸαž˜αŸ’αžšαž½αž›αž―αž€αžŸαžΆαžšαžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

/etc/selinux/_<selinuxtype>_/setrans.conf

40. αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ αž¬αžŸαŸ’αž‚αŸ’αžšαžΈαž”αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžš αžαž½αž“αžΆαž‘αžΈ αž“αž·αž„αž”αžšαž·αž”αž‘αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αŸ–

# runcon -t initrc_t -r system_r -u user_u yourcommandhere

  • -t αž”αžšαž·αž”αž‘αž―αž€αžŸαžΆαžš
  • -r αž”αžšαž·αž”αž‘αžαž½αž“αžΆαž‘αžΈ
  • -u αž”αžšαž·αž”αž‘αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹

41. αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™ SELinux αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž·αž‘αŸ–

  • PodmanαŸ– # podman run --security-opt label=disable …
  • αž’αŸ’αž“αž€αž…αž: # docker run --security-opt label=disable …

42. αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž€αž»αž„αžαžΊαž“αŸαžšαž…αžΌαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž–αŸαž‰αž›αŸαž‰αŸ–

  • PodmanαŸ– # podman run --privileged …
  • αž’αŸ’αž“αž€αž…αž: # docker run --privileged …

αž αžΎαž™αž₯αž‘αžΌαžœαž“αŸαŸ‡αž’αŸ’αž“αž€αžŠαžΉαž„αž…αž˜αŸ’αž›αžΎαž™αžšαž½αž…αž αžΎαž™αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžŸαžΌαž˜αŸ– αž€αž»αŸ†αž—αŸαž™αžŸαŸ’αž›αž“αŸ‹αžŸαŸ’αž›αŸ„ αž αžΎαž™αž”αžΎαž€ SELinux αŸ”

αž―αž€αžŸαžΆαžšαž™αŸ„αž„:

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹