SELinux

SELinux di Ubuntu Tutorial

SELinux di Ubuntu Tutorial

Pengenalan

SELinux adalah modul kawalan akses mandatori (MAC) yang berada di tahap kernel sistem linux. Ini adalah pengembangan bersama Redhat dan NSA yang dikeluarkan sekitar tahun 1998 dan masih dikekalkan oleh komuniti peminat. Secara lalai, Ubuntu menggunakan AppArmor dan bukan SeLinux, yang serupa dari segi prestasi tetapi agak popular dari segi kesederhanaan. Namun, SeLinux diketahui cukup selamat kerana penglibatan agensi kerajaan. SELinux adalah aplikasi sumber terbuka yang melindungi host dengan mengasingkan setiap aplikasi dan membatasi aktivitinya. Secara lalai, proses disekat daripada melakukan sebarang aktiviti kecuali jika kebenaran eksplisit diberikan. Modul ini secara semula jadi menyediakan dua peraturan pengurusan tingkat global: Permisif dan Menegakkan yang masing-masing mencatat setiap peraturan yang dilanggar, dan menolak akses ke permintaan tertentu yang dikirim dari proses. Tutorial ini menunjukkan cara menggunakannya di Ubuntu dengan mudah.

Cara Memasang dan Mengaktifkan

SeLinux adalah aplikasi yang sangat sukar untuk dipasang, kerana jika tidak dikonfigurasi dengan betul sebelum reboot pertama, ia akan menjadikan keseluruhan sistem operasi tidak dapat di-boot, yang bermaksud apa-apa di luar skrin boot awal tidak akan dapat dicapai dengan cara biasa.

Seperti yang dinyatakan sebelumnya, Ubuntu sudah memiliki sistem kawalan akses mandatori tingkat tinggi yang canggih yang dikenali sebagai AppArmor, dan oleh itu ia harus dilumpuhkan sebelum memasang SeLinux untuk mengelakkan konflik. Gunakan arahan berikut untuk mematikan AppArmor dan Aktifkan SeLinux.

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

Konfigurasi file ini dapat dibuka dengan editor teks apa pun untuk membuat perubahan. Sebab untuk menetapkan peraturan permisif kepada SETLINUX adalah menjadikan sistem operasi dapat diakses sambil membiarkan SeLinux diaktifkan. Sangat disarankan untuk menggunakan pilihan yang tidak boleh diterima kerana tidak perlu repot, tetapi mencatatkan peraturan yang dilanggar yang ditetapkan di SeLinux.

Pilihan yang ada

SELinux adalah modul yang kompleks dan komprehensif; oleh itu ia mengandungi banyak ciri dan pilihan. Walaupun begitu, kebanyakan pilihan ini mungkin tidak berguna untuk semua orang kerana sifatnya yang eksotik. Pilihan berikut adalah beberapa pilihan asas dan berguna dalam modul ini. Mereka lebih dari cukup untuk mengaktifkan SELinux.

Periksa status:  Status SELinux dapat diperiksa secara langsung melalui tetingkap terminal, yang menunjukkan maklumat asas seperti apakah SeLinux diaktifkan, direktori root SELinux, nama dasar yang dimuat, mod semasa dan lain-lain.  Setelah reboot sistem setelah memasang SeLinux, gunakan perintah berikut sebagai pengguna root dengan perintah sudo. Sekiranya menyatakan SeLinux diaktifkan di bahagian status, ini bermaksud ia berjalan dan berjalan di latar belakang.

[dilindungi e-mel]: / rumah / dondilanga # sestatus

Ubah Tahap Kebenaran Global: Tahap kebenaran global menyatakan bagaimana SELinux berkelakuan ketika tersandung pada peraturan. Secara lalai, SeLinux menetapkan dirinya untuk melaksanakan yang secara efektif memblokir semua permintaan, tetapi dapat diubah menjadi permisif yang agak lunak terhadap pengguna kerana membenarkan akses, tetapi mencatat peraturan yang dilanggar dalam fail lognya.

nano / etc / selinux / config 'tetapkan SELINUX ke permisif atau penegakan, SELINUXTYPE ke lalai' 

Periksa Fail Log: Fail log yang menyatakan peraturan yang dilanggar oleh setiap permintaan.  Ini hanya menyimpan log sekiranya SeLinux diaktifkan.

grep selinux / var / log / audit / audit.balak

Aktifkan dan Lumpuhkan Dasar dan Perlindungan Apa yang Ditawarkannya: Ini adalah salah satu pilihan yang paling penting dalam SeLinux, kerana memungkinkan untuk mengaktifkan dan mematikan dasar. SeLinux mempunyai sebilangan besar dasar pra-bawaan yang menentukan sama ada permintaan yang ditentukan dibenarkan atau tidak. Beberapa contoh ini adalah allow_ftpd_full_access yang menentukan kemampuan perkhidmatan FTP untuk log masuk ke pengguna tempatan dan membaca menulis semua fail pada sistem, allow_ssh_keysign yang membolehkan kunci digunakan semasa log masuk ke SSH, allow_user_mysql_connect yang membolehkan pengguna menyambung ke mysql , httpd_can_sendmail yang menentukan kemampuan perkhidmatan HTTP untuk menghantar e-mel dan lain-lain ... Dalam contoh kod berikut, ia memasang polisikutil-python-utils yang benar-benar membantu dalam menyenaraikan setiap polisi secara deskriptif, seterusnya menyenaraikan semua dasar yang ada ke terminal , akhirnya ini mengajarkan cara menetapkan atau mematikan kebijakan, allow_ftpd_full_access adalah nama kebijakan seperti yang ditunjukkan di terminal yang dikembalikan oleh semanage,

apt-get install polisikoreutil-python-utils semanage boolean -l setebool -P allow_ftpd_full_access ON 

Pilihan Lanjutan

Pilihan lanjutan adalah pilihan yang membantu memperluas fungsi di SELInux. Terdapat banyak kombinasi di luar sana kerana sifat SeLinux yang komprehensif, jadi artikel ini menyenaraikan beberapa yang terkenal dan berguna di antaranya.

Kawalan Akses Berasaskan Peranan (RBAC): RBAC membolehkan pentadbir beralih ke cara berdasarkan peranan untuk membatasi kebenaran aplikasi. Maksudnya ialah pengguna kumpulan pengguna tertentu dibenarkan untuk melaksanakan atau melakukan tindakan tertentu yang telah ditentukan. Selagi pengguna adalah sebahagian daripada peranan itu tidak mengapa. Ini sama dengan beralih ke root ketika memasang aplikasi di Linux dengan hak pentadbiran.

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

Pengguna boleh menukar peranan mereka dengan arahan berikut.

sudo -r new_role_r -i

Pengguna juga dapat menyambung ke pelayan dari jarak jauh melalui SSH dengan peranan yang diaktifkan pada permulaan.

ssh / [dilindungi e-mel]

Benarkan Perkhidmatan Mendengarkan Pelabuhan Bukan Standard: Ini cukup berguna dalam menyesuaikan layanan, misalnya ketika port FTP diubah menjadi yang tidak standar untuk menghindari akses yang tidak sah, SELinux harus diberitahu dengan sewajarnya untuk memungkinkan port tersebut melewati dan berfungsi seperti biasa. Contoh berikut membolehkan port FTP mendengar port 992. Begitu juga, sebarang perkhidmatan yang dikembalikan oleh port semanage -l boleh diganti.  Beberapa port yang popular adalah http_port_t, pop_port_t, ssh_port_t.

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

Cara Melumpuhkan

Melumpuhkan SELinux lebih mudah kerana diaktifkan dan dipasang. Pada asasnya terdapat dua cara untuk melumpuhkannya. Sama ada sementara atau kekal. Melumpuhkan SeLinux sementara menjadikannya tidak aktif untuk sementara waktu sehingga but seterusnya, dan sebaik sahaja komputer dihidupkan semula keadaan dimulakan semula. Sebaliknya, penonaktifan kekal SeLinux mematikannya sepenuhnya dan mendedahkannya kepada ancaman di luar sana; oleh itu adalah pilihan yang bijak untuk mengembalikan AppArmor lalai Ubuntu sekurang-kurangnya demi keselamatan sistem.

Perintah berikut di terminal mematikannya buat sementara waktu:

setenforce 0 

Untuk penyuntingan yang dilumpuhkan secara kekal / etc / selinux / config dan tetapkan SELINUX untuk dilumpuhkan.

Pasang Dolphin Emulator terkini untuk Gamecube & Wii di Linux
Dolphin Emulator membolehkan anda memainkan permainan Gamecube & Wii pilihan anda di Komputer Peribadi Linux (PC). Menjadi emulator permainan sumber ...
Cara Menggunakan Mesin Cheat GameConqueror di Linux
Artikel ini merangkumi panduan mengenai penggunaan mesin cheat GameConqueror di Linux. Ramai pengguna yang bermain permainan di Windows sering menggun...
Emulator Konsol Permainan Terbaik untuk Linux
Artikel ini akan menyenaraikan perisian emulasi konsol permainan popular yang tersedia untuk Linux. Emulation adalah lapisan keserasian perisian yang ...