SELinux

SELinux di Ubuntu Tutorial

SELinux di Ubuntu Tutorial

pengantar

SELinux adalah modul kontrol akses wajib (MAC) yang berada di tingkat kernel sistem linux. Ini adalah pengembangan bersama dari Redhat dan NSA yang dirilis sekitar tahun 1998 dan masih dipertahankan oleh komunitas yang antusias. Secara default, Ubuntu menggunakan AppArmor dan bukan SeLinux, yang serupa dalam hal kinerja tetapi lebih populer dalam hal kesederhanaan. Namun, SeLinux dikenal cukup aman karena keterlibatan lembaga pemerintah. SELinux adalah aplikasi open source yang melindungi host dengan mengisolasi setiap aplikasi dan membatasi aktivitasnya. Secara default, proses diblokir dari melakukan aktivitas apa pun kecuali izin eksplisit diberikan. Modul secara native menyediakan dua aturan manajemen tingkat global: Permissive dan Enforcing yang masing-masing mencatat setiap aturan yang dilanggar, dan menolak akses ke permintaan tertentu yang dikirim dari suatu proses. Tutorial ini menunjukkan cara menggunakannya di Ubuntu dengan mudah.

Cara Memasang dan Mengaktifkan

SeLinux adalah aplikasi yang sangat rumit untuk diinstal, karena jika tidak dikonfigurasi dengan benar sebelum reboot pertama, itu akan membuat seluruh sistem operasi tidak dapat di-boot, artinya apa pun di luar layar boot awal hampir tidak dapat dijangkau dengan cara normal.

Juga seperti yang dinyatakan sebelumnya, Ubuntu sudah memiliki sistem kontrol akses wajib tingkat tinggi yang canggih yang dikenal sebagai AppArmor, dan oleh karena itu harus dinonaktifkan sebelum menginstal SeLinux untuk menghindari konflik. Gunakan instruksi berikut untuk menonaktifkan AppArmor dan Mengaktifkan SeLinux.

sudo /etc/init.d/apparmor stop apt-get update && upgrade -yuf apt-get install selinux nano /etc/selinux/config 'set SELINUX ke permissive, SELINUXTYPE ke default' reboot 

Konfigurasi file ini dapat dibuka dengan editor teks apa pun untuk membuat perubahan. Alasan untuk menetapkan aturan permisif ke SETLINUX adalah membuat sistem operasi dapat diakses sambil membiarkan SeLinux diaktifkan. Sangat disarankan untuk menggunakan opsi permisif karena tidak merepotkan, tetapi mencatat pelanggaran aturan yang ditetapkan di SeLinux.

pilihan yang tersedia

SELinux adalah modul yang kompleks dan komprehensif; karena itu berisi banyak fitur dan opsi. Meskipun demikian, sebagian besar opsi ini mungkin tidak berguna untuk semua orang karena sifatnya yang eksotis. Opsi berikut adalah beberapa opsi dasar dan berguna dalam modul ini. Mereka lebih dari cukup untuk mengaktifkan dan menjalankan SELinux.

Periksa statusnya:  Status SELinux dapat diperiksa langsung melalui jendela terminal, yang menunjukkan informasi dasar seperti apakah SeLinux diaktifkan, direktori root SELinux, nama kebijakan yang dimuat, mode saat ini, dll.  Setelah me-reboot sistem setelah menginstal SeLinux, gunakan perintah berikut sebagai pengguna root dengan perintah sudo. Jika menyatakan SeLinux diaktifkan di bagian status, itu berarti aktif dan berjalan di latar belakang.

[dilindungi email]:/home/dondilanga# sestatus

Ubah Tingkat Izin Global: Tingkat izin global menyatakan bagaimana SELinux berperilaku ketika menemukan aturan. Secara default, SeLinux menetapkan dirinya untuk menegakkan yang secara efektif memblokir semua permintaan, tetapi dapat diubah menjadi permisif yang agak lunak terhadap pengguna karena memungkinkan akses, tetapi mencatat aturan yang dilanggar dalam file lognya.

nano /etc/selinux/config 'setel SELINUX ke permisif atau penegakan, SELINUXTYPE ke default' 

Periksa File Log: File log yang menyatakan aturan yang dilanggar oleh setiap permintaan.  Ini hanya menyimpan log jika SeLinux diaktifkan.

grep selinux /var/log/audit/audit.catatan

Aktifkan dan Nonaktifkan Kebijakan dan Perlindungan Apa yang Mereka Tawarkan: Ini adalah salah satu opsi terpenting di SeLinux, karena memungkinkan untuk mengaktifkan dan menonaktifkan kebijakan. SeLinux memiliki sejumlah besar kebijakan bawaan yang menentukan apakah permintaan yang ditentukan diizinkan atau tidak. Beberapa contohnya adalah allow_ftpd_full_access yang menentukan kemampuan layanan FTP untuk login ke pengguna lokal dan membaca menulis semua file di sistem, allow_ssh_keysign yang memungkinkan kunci digunakan saat login ke SSH, allow_user_mysql_connect yang memungkinkan pengguna terhubung ke mysql , httpd_can_sendmail yang menentukan kemampuan layanan HTTP untuk mengirim email, dll…  Dalam contoh kode berikut, ia menginstal policycoreutils-python-utils yang sebenarnya membantu mencantumkan setiap kebijakan secara deskriptif, selanjutnya mencantumkan semua kebijakan yang tersedia ke terminal , akhirnya mengajarkan cara mengaktifkan atau menonaktifkan kebijakan, allow_ftpd_full_access adalah nama kebijakan seperti yang ditunjukkan di terminal yang dikembalikan oleh semanage,

apt-get install policycoreutils-python-utils semanage boolean -l setsebool -P allow_ftpd_full_access AKTIF 

Opsi Lanjutan

Opsi lanjutan adalah opsi yang membantu memperluas fungsionalitas di SELInux. Ada sejumlah besar kombinasi di luar sana karena sifat SeLinux yang komprehensif, jadi artikel ini mencantumkan beberapa yang menonjol dan berguna di antara mereka.

Kontrol Akses Berbasis Peran (RBAC): RBAC memungkinkan administrator untuk beralih ke cara berbasis peran untuk membatasi izin aplikasi. Artinya, pengguna dari grup pengguna tertentu diizinkan untuk mengeksekusi atau melakukan tindakan tertentu yang telah ditentukan sebelumnya. Selama pengguna adalah bagian dari peran, tidak apa-apa. Ini sama dengan beralih ke root ketika menginstal aplikasi di Linux dengan hak administratif.

semanage login -a -s 'myrole' -r 's0-s0:c0.c1023' 

Pengguna dapat mengganti peran mereka dengan perintah berikut.

sudo -r new_role_r -i

Pengguna juga dapat terhubung dari jarak jauh ke server melalui SSH dengan peran yang diaktifkan saat startup.

ssh /[email dilindungi]

Izinkan Layanan untuk Mendengarkan Port Non-Standar: Ini sangat berguna dalam menyesuaikan layanan, misalnya ketika port FTP diubah ke port non-standar untuk menghindari akses yang tidak sah, SELinux harus diinformasikan untuk memungkinkan port tersebut melewati dan berfungsi seperti biasa. Contoh berikut memungkinkan port FTP untuk mendengarkan port 992. Demikian juga, layanan apa pun yang dikembalikan oleh pelabuhan semanage -l bisa diganti.  Beberapa port yang populer adalah http_port_t , pop_port_t, ssh_port_t.

pelabuhan semanage -a -t    mengelola port -a -t ftp_port_t -p tcp 992 

Cara Menonaktifkan

Menonaktifkan SELinux lebih mudah karena diaktifkan dan diinstal. Pada dasarnya ada dua cara untuk menonaktifkannya. Baik sementara atau selamanya. Menonaktifkan SeLinux sementara membuatnya nonaktif untuk sementara waktu hingga boot berikutnya, dan segera setelah komputer dihidupkan kembali keadaan direstart. Di sisi lain, penonaktifan permanen SeLinux akan mematikannya sepenuhnya sehingga membuatnya terkena ancaman di luar sana; maka itu adalah pilihan bijak untuk mengembalikan AppArmor default Ubuntu setidaknya demi keamanan sistem.

Perintah berikut di terminal mematikannya sementara:

setenforce 0 

Untuk menonaktifkan edit secara permanen /etc/selinux/config dan setel SELINUX ke nonaktif.

SuperTuxKart untuk Linux
SuperTuxKart adalah judul hebat yang dirancang untuk memberi Anda pengalaman Mario Kart gratis di sistem Linux Anda. Ini cukup menantang dan menyenang...
Pertempuran untuk Tutorial Westnoth
The Battle for Wesnoth adalah salah satu game strategi open source terpopuler yang bisa kamu mainkan saat ini. Tidak hanya game ini telah dikembangkan...
0 A.D. tutorial
Dari sekian banyak game strategi di luar sana, 0 A.D. berhasil menonjol sebagai judul yang komprehensif dan permainan taktis yang sangat dalam meskipu...