Penjelasan terperinci dan contoh kod bagi 3 jenis dasar SELinux
SELinux (Security-Enhanced Linux) ialah subsistem keselamatan yang melaksanakan kawalan capaian mandatori pada sistem pengendalian Linux. Ia memastikan keselamatan sistem dengan menentukan peraturan capaian mandatori untuk setiap operasi. Dalam SELinux, terdapat tiga jenis dasar utama: Menguatkuasa, Permisif dan Dilumpuhkan. Artikel ini menerangkan ketiga-tiga jenis dasar ini secara terperinci dan menyediakan contoh kod yang sepadan untuk menunjukkan perbezaannya.
Dalam mod penguatkuasaan, semua akses mesti mengikut peraturan dasar SELinux. Jika peraturan dilanggar, akses ditolak dan dilog. Jenis dasar ini menyediakan tahap keselamatan tertinggi, tetapi juga boleh menghalang aplikasi daripada berjalan atau mengakses sumber yang diperlukan.
Kaedah untuk menetapkan dasar penguatkuasaan adalah seperti berikut:
sudo setenforce 1
Arahan ini akan menetapkan SELinux kepada mod penguatkuasaan. Berikut ialah contoh mudah yang menunjukkan akses ditolak apabila SELinux berada dalam mod penguatkuasaan:
# 创建一个文件 touch testfile # 尝试删除文件 rm testfile
Dalam mod penguatkuasaan, memandangkan peraturan lalai tidak membenarkan pemadaman fail, operasi di atas akan dinafikan dan dilog masuk ke log SELinux.
Dalam mod permisif, SELinux akan merekodkan akses yang melanggar dasar, tetapi tidak akan menafikan akses. Mod ini digunakan untuk nyahpepijat dan menganalisis gelagat sistem dan boleh membantu pentadbir memahami akses yang melanggar dasar. Walaupun akses tidak akan dinafikan, pentadbir masih boleh melihat pelanggaran melalui log.
Cara untuk menetapkan dasar permisif:
sudo setenforce 0
Berikut ialah contoh yang menunjukkan bahawa dalam mod permisif, akses yang melanggar peraturan akan dilog tetapi tidak dinafikan:
# 创建一个文件 touch testfile # 尝试删除文件 rm testfile
Dalam mod permisif, operasi di atas akan dilog masuk dalam SELinux log, tetapi tidak dinafikan.
Dalam mod dilumpuhkan, SELinux dimatikan sepenuhnya dan sistem tidak akan menguatkuasakan peraturan dasar SELinux lagi. Ini bermakna bahawa sebarang proses boleh mengakses mana-mana sumber, yang boleh mengakibatkan sistem yang kurang selamat. Melumpuhkan SELinux biasanya untuk menyelesaikan masalah yang sesetengah aplikasi bercanggah dengan dasar SELinux dan tidak boleh berjalan dengan betul.
Begini cara untuk melumpuhkan SELinux:
sudo setenforce 0
Berikut ialah contoh yang menunjukkan bahawa apabila SELinux dilumpuhkan, tiada akses akan disekat:
# 创建一个文件 touch testfile # 尝试删除文件 rm testfile
Dengan SELinux dinyahdayakan, operasi di atas akan berjaya, tidak Tiada sekatan.
Kesimpulan:
Artikel ini memperkenalkan tiga jenis dasar SELinux: mandatori, permisif dan dilumpuhkan, dan menyediakan contoh kod yang sepadan untuk menunjukkan perbezaannya. Pentadbir boleh memilih jenis dasar yang sesuai berdasarkan keperluan sebenar dan melaraskan tahap keselamatan sistem mengikut situasi. Dasar yang dikuatkuasakan menyediakan tahap keselamatan tertinggi, dasar santai digunakan untuk penyahpepijatan dan analisis, dan dasar yang dilumpuhkan sesuai untuk menyelesaikan masalah tertentu. Dalam aplikasi praktikal, adalah sangat penting untuk memilih dan mengkonfigurasi jenis dasar SELinux dengan betul untuk memastikan keselamatan dan kestabilan sistem.
Di atas adalah analisis terperinci dan contoh kod bagi tiga jenis dasar SELinux saya harap ia akan membantu anda.
Atas ialah kandungan terperinci Analisis mendalam tentang tiga jenis dasar SELinux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!