Security Enhanced Linux atau SELinuxadalah mekanisme keamanan yang dibangun ke dalam kernel Linux yang digunakan oleh distribusi berbasis RHEL.
SELinux menambahkan lapisan keamanan tambahan ke sistem dengan mengizinkan administrator dan pengguna mengontrol akses ke objek berdasarkan aturan kebijakan.
Aturan kebijakan SELinux menentukan bagaimana proses dan pengguna berinteraksi satu sama lain serta bagaimana proses dan pengguna berinteraksi dengan file. Ketika tidak ada aturan yang secara eksplisit mengizinkan akses ke suatu objek, seperti untuk proses membuka file, akses ditolak.
SELinux memiliki tiga mode operasi:
- Menegakkan:SELinux mengizinkan akses berdasarkan aturan kebijakan SELinux.
- Permisif:SELinux hanya mencatat tindakan yang akan ditolak jika dijalankan dalam mode penegakan. Mode ini berguna untuk men-debug dan membuat aturan kebijakan baru.
- Dinonaktifkan:Tidak ada kebijakan SELinux yang dimuat, dan tidak ada pesan yang dicatat.
Secara default, di CentOS 8, SELinux diaktifkan dan dalam mode penegakan. Sangat disarankan untuk menjaga SELinux dalam mode penegakan. Namun, terkadang ini dapat mengganggu fungsi beberapa aplikasi, dan Anda perlu menyetelnya ke mode permisif atau menonaktifkannya sepenuhnya.
Dalam tutorial ini, kami akan menjelaskan untuk menonaktifkan SELinux di CentOS 8.
Prasyarat #
Hanya pengguna root atau pengguna dengan hak sudo yang dapat mengubah mode SELinux.
Memeriksa Mode SELinux #
Gunakan sestatus
perintah untuk memeriksa status dan mode di mana SELinux berjalan:
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: 31
Output di atas menunjukkan bahwa SELinux diaktifkan dan disetel ke mode penegakan.
Mengubah Mode SELinux ke Permisif #
Saat diaktifkan, SELinux dapat dalam mode penegakan atau permisif. Anda dapat mengubah mode sementara dari target menjadi permisif dengan perintah berikut:
sudo setenforce 0
Namun, perubahan ini hanya berlaku untuk sesi runtime saat ini dan tidak bertahan di antara reboot.
Untuk menyetel mode SELinux ke permisif secara permanen, ikuti langkah-langkah di bawah ini:
-
Buka
/etc/selinux/config/etc/selinux/config
file dan aturSELINUX
mod kepermissive
:# 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=permissive # 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
-
Simpan file dan jalankan
setenforce 0
perintah untuk mengubah mode SELinux untuk sesi saat ini:sudo shutdown -r now
Menonaktifkan SELinux #
Alih-alih menonaktifkan SELinux, sangat disarankan untuk mengubah mode menjadi permisif. Nonaktifkan SELinux hanya jika diperlukan agar aplikasi Anda berfungsi dengan baik.
Lakukan langkah-langkah di bawah ini untuk menonaktifkan SELinux pada sistem CentOS 8 Anda secara permanen:
-
Buka
/etc/selinux/config/etc/selinux/config
file dan ubahSELINUX
nilai menjadidisabled
:# 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
-
Simpan file dan reboot sistem:
sudo shutdown -r now
-
Saat sistem di-boot, gunakan
sestatus
perintah untuk memverifikasi bahwa SELinux telah dinonaktifkan:sestatus
Outputnya akan terlihat seperti ini:
SELinux status: disabled