GNU/Linux >> Belajar Linux >  >> Linux

Panduan Pemula untuk SELinux

SELinux adalah singkatan dari “Linux yang Ditingkatkan Keamanan “. Keamanan standar Linux didasarkan pada Discretionary Access Control (DAC). Dengan DAC, akses ke file dan perangkat hanya didasarkan pada identitas dan kepemilikan pengguna. Setiap file dapat memiliki izin baca, tulis, dan eksekusi untuk pemilik file, grup, dan pengguna lain.

SELinux dibuat oleh Badan Keamanan Nasional AS untuk memberikan tingkat kontrol yang lebih halus atas file, proses, pengguna, dan aplikasi dalam sistem. Ini adalah peningkatan ke kernel Linux, dan mengimplementasikan jenis keamanan yang berbeda yang disebut Mandatory Access Control (MAC). Kebijakan MAC dikelola secara terpusat daripada dikelola oleh pengguna.

SELinux berjalan dalam salah satu dari tiga mode:

  • Menegakkan :Akses ditolak ke pengguna dan program kecuali diizinkan oleh aturan kebijakan keamanan SELinux.
  • Permisif :Aturan kebijakan keamanan tidak diterapkan, tetapi SELinux mengirimkan pesan penolakan ke file log.
  • Dinonaktifkan :SELinux tidak memberlakukan kebijakan keamanan karena tidak ada kebijakan yang dimuat di kernel. Hanya aturan DAC yang digunakan untuk kontrol akses.

Menampilkan mode SELinux

Anda dapat menggunakan status perintah untuk menampilkan mode SELinux serta beberapa informasi tambahan tentang SELinux.

# 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
Max kernel policy version:      28

Anda dapat menggunakan getenforce perintah untuk menampilkan mode SELinux. Perintah ini menampilkan mode saat ini:“Menegakkan ”, “Permisif “,” atau “Dinonaktifkan “.” Contoh:

# getenforce
Enforcing

Mengubah mode SELinux

Sebagian besar waktu Anda akan melihat orang mengubah mode "penegakan" menjadi "permisif" untuk menyelesaikan masalah yang terkait dengan izin file/proses. Ini bukan praktik terbaik untuk diterapkan, tetapi merupakan salah satu cara yang paling banyak digunakan dan tercepat untuk mengatasi masalah di Linux. Anda dapat menggunakan perintah setenforce untuk mengubah mode menjadi “Enforcing (1) ” atau “Permisif (0) “. Contoh:

# setenforce 0 
# getenforce 
Permissive

Boolean

SELinux juga menyediakan “Boolean “, yang memungkinkan bagian dari kebijakan SELinux diubah pada saat dijalankan, tanpa memuat ulang atau mengkompilasi ulang kebijakan SELinux. Anda dapat menampilkan daftar Boolean, informasi status, dan deskripsi Boolean dengan menjalankan perintah berikut:

# semanage boolean -l
SELinux boolean                State  Default Description
privoxy_connect_any            (on   ,   on)  Allow privoxy to connect any
smartmon_3ware                 (off  ,  off)  Allow smartmon to 3ware
mpd_enable_homedirs            (off  ,  off)  Allow mpd to enable homedirs
xdm_sysadm_login               (off  ,  off)  Allow xdm to sysadm login
....

Anda dapat mengubah status Boolean tertentu menjadi aktif atau nonaktif dengan menggunakan setsebool memerintah. Misalnya, untuk mengaktifkan ftp_home_dir Boolean ke:

# setsebool ftpd_use_nfs on

Gunakan getsebool perintah untuk menampilkan status Boolean tertentu. Contoh:

# getsebool ftpd_use_nfs
ftpd_use_nfs --> on


Linux
  1. Panduan terminal Linux untuk pemula

  2. Panduan sysadmin untuk SELinux:42 jawaban untuk pertanyaan besar

  3. Mengakses dokumentasi kebijakan SELinux

  1. Panduan pemula untuk multipathing Device Mapper (DM)

  2. CentOS / RHEL 7 :Panduan pemula untuk systemd

  3. Panduan Pemula untuk NFS di CentOS / RHEL

  1. CentOS / RHEL 7 :Panduan pemula untuk firewalld

  2. CentOS / RHEL :Panduan pemula untuk cron

  3. Panduan pemula untuk editor vi (referensi baris perintah)