GNU/Linux >> Belajar Linux >  >> Linux

Mengakses dokumentasi kebijakan SELinux

[Ingin mencoba Red Hat Enterprise Linux? Unduh sekarang secara gratis.]

Ada banyak halaman manual yang sangat baik untuk domain terbatas yang disertakan dengan kebijakan SELinux. Halaman manual ini menjelaskan boolean dan tipe konteks untuk setiap domain. Mereka juga menyertakan contoh semanage perintah untuk menambahkan pemetaan konteks, mengubah boolean, dan lainnya.

Sayangnya untuk sysadmin yang memulai konfigurasi SELinux, halaman manual ini sering kali tidak diinstal secara default. Halaman manual kebijakan SELinux tersedia dari dua lokasi. Repo Kebijakan Referensi hulu memiliki beberapa halaman manual yang dibuat sebelumnya. Sisanya dapat dihasilkan dari konten kebijakan dengan alat yang ditemukan di policycoreutils-devel paket.

Instal dari paket distribusi

Beberapa distribusi membuat halaman manual sebelumnya dan mengemasnya agar dokumentasi mudah ditambahkan ke sistem Anda. Fedora, CentOS, dan Red Hat Enterprise Linux 8 semuanya menyertakan selinux-policy-doc.noarch paket di repositori dasar mereka. Paket ini tidak diinstal secara default, tetapi mudah ditambahkan dengan yum atau dnf perintah:

$ sudo yum install selinux-policy-doc.noarch

Red Hat Enterprise Linux 7 memiliki paket ini juga, tetapi dalam repo "Opsional" yang tidak diaktifkan secara default. Aktifkan repo secara permanen dengan subscription-manager :

$ sudo subscription-manager repo --enable=rhel-7-server-optional-rpms

atau cukup tambahkan repo sementara selama instalasi:

$ sudo yum --enablerepo=rhel-7-server-optional-rpms install selinux-policy-doc.noarch

Sekarang setelah dokumentasi domain SELinux tersedia, cari halaman yang relevan dengan:

$ man -k _selinux

Catatan: Setelah menginstal paket dokumen, Anda mungkin juga perlu memperbarui cache indeks halaman manual sebelum melihat hasil dari pencarian:

$ sudo mandb

Buat halaman manual dari kebijakan

Jika paket dokumen tidak tersedia, atau jika Anda hanya ingin membuat halaman manual untuk domain tertentu, Anda juga dapat membuat halaman manual dari kebijakan. Pertama, instal devel paket dan dependensinya:

$ sudo yum install policycoreutils-devel 

Kemudian, gunakan sepolicy perintah untuk menghasilkan halaman manual tertentu dengan menentukan tipe domain (tipe konteks SELinux yang terkait dengan proses yang sedang berjalan). Misalnya:

$ sepolicy manpage -d httpd_t

Halaman manual yang dihasilkan akan dibuat di /tmp direktori dan dapat dilihat dengan nama:

$ man /tmp/httpd_selinux.8

Ada opsi untuk sepolicy manpage perintah untuk mengganti lokasi keluaran (--path ), buat versi html (--web ), atau buat semua (--all ) halaman. Untuk melihat opsi ini dan opsi lainnya, gunakan:

$ man sepolicy-manpage

Selama pengguna memiliki hak menulis ke jalur keluaran, mereka dapat membuat dan melihat halaman manual.

Pratinjau keajaiban halaman manual ini

Halaman manual SELinux untuk jenis domain semuanya memiliki tata letak yang sama. Seperti halnya kumpulan halaman manual, semakin banyak halaman manual yang Anda baca, semakin mudah untuk memindai atau mempercepat membaca halaman berikutnya.

Setiap halaman manual dimulai dengan bidang NAMA dan DESCRIPTION yang diharapkan dari halaman manual mana pun. Halaman manual domain SELinux kemudian menyertakan bagian ENTRYPOINTS dan PROCESS TYPES. (Titik masuk adalah jenis yang ditetapkan ke file yang dapat dieksekusi, yang ketika diluncurkan sebagai daemon akan bertransisi ke jenis proses terbatas.)

Tidak semua jenis proses adalah daemon, beberapa mungkin merupakan executable interaktif. Misalnya, sshd_exec_t adalah titik masuk yang bertransisi ke sshd_t jenis proses. Selain itu, sshd_t , ssh_t , dan ssh_keygen_t dan juga merupakan contoh tipe proses.

Jenis proses juga dikenal sebagai jenis domain dan merupakan jenis yang dapat ditempatkan ke mode permisif dengan semanage perintah.

Setelah bagian titik masuk dan jenis proses, halaman manual domain SELinux memiliki bagian untuk BOOLEAN, JENIS PORT, FILE YANG DIKELOLA, dan KONTEKS FILE yang berlaku untuk domain itu. Bagian ini menentukan kata kunci dan memberikan contoh untuk modifikasi yang dapat dilakukan dengan semanage memerintah. Mengaktifkan boolean memungkinkan kumpulan aturan yang berbeda untuk kasus penggunaan yang berbeda. Modifikasi konteks file dan port memungkinkan sistem dikonfigurasi untuk menyimpan data di lokasi non-default atau dijalankan di port non-default.

Setiap halaman manual diakhiri dengan daftar COMMANDS yang direferensikan di halaman manual dan halaman manual tradisional AUTHOR dan bagian LIHAT JUGA.

Mulai menjelajah

Dengan targeted kebijakan, httpd halaman domain mungkin yang terpanjang, karena domain itu memiliki boolean dan tipe file paling banyak untuk dideskripsikan. Itu juga salah satu domain pertama yang dibatasi dalam sejarah targeted SELinux kebijakan.

Mulailah dengan domain yang Anda kenal seperti sshd , httpd , atau ntpd . Kemudian cari domain yang relevan dengan lingkungan Anda. Setelah menginstal selinux-docs paket, saya memiliki lebih dari 850 halaman manual untuk dijelajahi di sistem saya!

Dan ingat, pertahankan penegakan SELinux! (Begini caranya.)


Linux
  1. Panduan Pemula untuk SELinux

  2. Daftar semua halaman manual yang tersedia

  3. Apakah saya perlu menulis halaman manual untuk pustaka C?

  1. Ganti halaman manual dengan Tealdeer di Linux

  2. Bagaimana Cara Menggunakan Halaman Man Untuk Mempelajari Cara Menggunakan Perintah?

  3. Membaca Dan Mencari Halaman Man Panjang?

  1. 5 opsi perintah man Linux teratas untuk menjelajahi halaman manual

  2. Mengakses Halaman Manual di Ubuntu 16.04 LTS

  3. Pencarian Tidak Peka Huruf Besar-kecil Di Halaman Manual?