LFCA Cara Meningkatkan Keselamatan Sistem Linux - Bahagian 20

LFCA Cara Meningkatkan Keselamatan Sistem Linux - Bahagian 20

Seperti yang kita semua tahu, pengguna root adalah Raja dan menggunakan keistimewaan tanpa had ke atas sistem Linux. Walau bagaimanapun pengguna bukan akar terhad kepada tugas asas. Di samping.

Isu timbul apabila pengguna biasa mempunyai akses yang tidak terkawal ke sumber atau meningkat ke akar secara tidak sengaja. Ini adalah risiko keselamatan yang serius yang boleh menyebabkan pelanggaran, pengubahsuaian yang tidak diingini, dan dalam senario terburuk, merosakkan sistem. Risiko lain yang berpotensi ialah apabila fail mempunyai kebenaran fail yang kurang selamat. Contohnya, fail boot dengan kebenaran tulis untuk pengguna global dengan mudah boleh diubah suai atau rosak mengakibatkan sistem yang rosak.

[Anda mungkin juga suka: petua berguna untuk mendapatkan data dan linux]

Walaupun kita dapat melaksanakan keselamatan fizikal, rangkaian, dan keselamatan data, pengguna yang berniat jahat dapat memintas langkah -langkah keselamatan dan memanfaatkan kelemahan keselamatan tersebut. Oleh sebab itu, keselamatan sistem fail harus diambil serius. Ia memberikan lapisan pertahanan tambahan dalam menghadapi serangan atau ancaman orang dalam dari pekerja yang berniat jahat yang tidak perlu melakukan pengangkat berat dalam mengelakkan langkah -langkah keselamatan untuk mengakses fail.

Dalam Keselamatan Sistem, kami akan menumpukan perhatian pada perkara utama berikut:

  • Hak Akses - Kebenaran Pengguna dan Kumpulan.
  • Menguatkuasakan dasar kata laluan dengan modul PAM.

Hak Akses - Pemisahan Pengguna dan Kumpulan

Anda mungkin pernah mendengar bahawa segala -galanya di Linux dianggap sebagai fail. Dan jika tidak, itu satu proses. Setiap fail pada sistem Linux dimiliki oleh pengguna dan pengguna kumpulan. Ia juga menanggung kebenaran fail untuk 3 kategori pengguna: pengguna (u), Kumpulan (g), dan lain lain (o). Kebenaran diwakili dalam membaca, menulis dan melaksanakan ( RWX ) untuk setiap kategori pengguna.

RWX RWX RWX Kumpulan Pengguna Lain 

Seperti yang dilihat sebelum ini, di bahagian Asas Linux, anda boleh melihat kebenaran fail menggunakan format panjang arahan LS seperti yang ditunjukkan.

$ ls -l 
Penyenaraian fail di Linux

Hanya untuk merakam, keizinan biasanya diwakili oleh sembilan aksara. Tiga watak pertama mewakili hak akses pengguna sebenar yang memiliki fail. Set watak kedua mewakili keizinan pemilik kumpulan fail. Akhirnya, set terakhir untuk pengguna lain atau global. Watak -watak ini terus -menerus di Baca, tulis, melaksanakan (RWX) pesanan.

Selepas kebenaran, kami mempunyai pemilikan pengguna dan kumpulan, diikuti dengan saiz fail atau direktori, tarikh pengubahsuaian, dan akhirnya nama fail.

Menukar keizinan Fail/Direktori dan Pemilikan

Kebenaran pengguna fail dan direktori boleh diubah suai sesuai dengan yang dianggap sesuai. Peraturan ibu jari adalah menggunakan prinsip keselamatan keistimewaan yang paling sedikit. Ringkasnya, pastikan pengguna mendapatkan hak akses minimum atau keizinan yang diperlukan untuk mendapatkan kerja yang dilakukan.

Prinsip keistimewaan paling tidak membatasi pengguna ke peranan tertentu sahaja dan dengan berbuat demikian, meminimumkan risiko penyerang mengakses dan mengubahsuai data kritikal dengan memanfaatkan akaun pengguna yang rendah. Ia juga mengurangkan permukaan serangan & menghadkan penyebaran malware sekiranya penyerang mengawal sistem anda.

Oleh itu, jika pengguna hanya perlu melihat kandungan fail atau direktori, mereka tidak boleh diberikan atau menulis kebenaran. Di peringkat yang sangat asas, hanya memberikan kebenaran dan pemilikan yang paling sedikit yang diperlukan oleh pengguna untuk menyelesaikan tugas. Kami telah menangani cara mengubahsuai keizinan pengguna dan pemilikan pada fail/direktori menggunakan perintah chmod dan chown dalam topik arahan linux asas.

Mod kebenaran melekit sedikit

Untuk pentadbir sistem mempunyai masa yang lebih mudah menguruskan keizinan, kebenaran khas atau hak akses boleh diberikan kepada seluruh direktori. Salah satu kebenaran khas yang boleh digunakan untuk menyekat penghapusan dan pengubahsuaian fail atau direktori adalah sedikit melekit.

ST Sticky

Dalam senario di mana direktori bersama boleh diakses oleh semua pengguna dalam sistem atau rangkaian, terdapat risiko yang berpotensi untuk memadamkan atau mengubah suai fail di dalam direktori. Ini tidak diingini jika anda ingin mengekalkan integriti kandungan direktori. Dan ini adalah tempat yang melekit masuk.

Bit Sticky adalah kebenaran fail khas yang ditetapkan pada fail atau keseluruhan direktori. Ia hanya memberi pemilik fail/direktori itu kebenaran untuk memadam atau membuat perubahan pada kandungan fail atau direktori. Tiada pengguna lain boleh memadam atau mengubah suai fail/direktori. Ia mempunyai nilai simbolik dari t dan nilai angka dari 1000.

Untuk menghidupkan sedikit melekit pada direktori, gunakan perintah chmod seperti berikut:

$ chmod +t direktori_name 

Dalam contoh di bawah, kami telah menggunakan sedikit melekit ke direktori yang dipanggil ujian. Dalam kes direktori, semua kandungan akan mewarisi kebenaran sedikit melekit. Anda boleh mengesahkan kebenaran bit melekit menggunakan ls -ld perintah. Pastikan anda melihat t simbol pada akhir kebenaran fail.

Ujian $ ls -ld 
Tetapkan Bit Sticky di Linux

Sekiranya pengguna lain cuba memadam direktori atau mengubah suai fail di dalam direktori, mereka disambut dengan Kebenaran ditolak ralat.

Kebenaran sedikit melekit ditolak

Dan itulah insi fail bit tongkat.

Memantau Kebenaran Suid & SGID

The Suid (Tetapkan ID Pengguna) adalah kebenaran fail khas lain yang membolehkan pengguna biasa lain menjalankan fail dengan kebenaran fail pemilik fail. Biasanya dilambangkan dengan nilai simbolik s di bahagian keizinan fail pengguna dan bukannya x yang mewakili melaksanakan kebenaran. Suid mempunyai nilai angka 4000.

The Sgid, (Tetapkan ID Kumpulan) Membolehkan pengguna biasa untuk mewarisi kebenaran kumpulan pemilik kumpulan fail. Bukannya x Untuk melaksanakan kebenaran, anda akan melihat s di bahagian kumpulan kebenaran fail. The Sgid mempunyai nilai angka dari 2000.

Walau bagaimanapun mudah mereka berubah, Suid dan Sgid Kebenaran dikaitkan dengan risiko keselamatan dan harus dielakkan di semua kos. Ini kerana mereka memberikan keistimewaan istimewa kepada pengguna biasa. Sekiranya penceroboh yang berpose sebagai pengguna biasa menyeberangi fail yang boleh dilaksanakan yang dimiliki oleh pengguna root dengan a Suid Bit di atasnya, mereka boleh menggunakan kelemahan itu dan mengeksploitasi sistem.

Untuk mencari semua fail dengan Suid bit ditetapkan di linux jalankan arahan cari sebagai pengguna root.

$ cari / -perm -4000 jenis -f 

Untuk direktori dijalankan:

$ cari / -perm -4000 jenis -d 

Untuk mencari semua fail dengan Sgid Bit set run:

$ cari / -perm -2000 jenis -f 

Untuk direktori melaksanakan:

$ cari / -perm -2000 jenis -d 

Untuk mengeluarkan Suid Bit pada fail, jalankan perintah chmod seperti yang ditunjukkan:

$ chmod u-s/path/to/file 

Untuk mengalih keluar bit SGID pada fail melaksanakan arahan:

$ chmod g-s filename/path/to/file 

Menguatkuasakan dasar kata laluan dengan modul PAM

Tidak biasa bagi pengguna untuk menetapkan kata laluan yang lemah. Bilangan yang baik ditetapkan kata laluan pendek, biasa, dan mudah yang dapat dinafikan untuk mengelakkan melupakannya semasa log masuk. Walaupun kata laluan yang mudah dan lemah dengan mudah boleh dilanggar menggunakan skrip serangan kekerasan.

The Pam modul ( Modul Pengesahan Pluggable ) adalah modul yang membolehkan pentadbir sistem menguatkuasakan dasar kata laluan pada sistem linux. Untuk mencapai ini, anda memerlukan PAM_PWQUALITY modul yang disediakan oleh libpam_pwquality Perpustakaan. The PAM_PWQUALITY Modul memeriksa kekuatan kata laluan terhadap satu set peraturan & kamus sistem dan menentukan pilihan kata laluan yang lemah.

Untuk memasang PAM_PWQUALITY modul dihidupkan Ubuntu 18.04 Dan kemudian versi, jalankan:

$ sudo apt memasang libpam_pwquality 

Untuk RHEL / CENTOS 8, Jalankan arahan:

$ sudo dnf memasang libpwquality 

Fail konfigurasi terdapat di lokasi berikut:

  • Pada sistem Debian - /etc/Pam.D/Common-Password
  • Pada sistem Redhat - /etc/Pam.D/Sistem-Auth

Mengkonfigurasi Dasar Kata Laluan

Sebelum kita mula mengubah suai Pam Fail Konfigurasi, mari kita mula -mula mempertimbangkan mengumpulkan pandangan mengenai kawalan penuaan kata laluan.

Butiran penuaan kata laluan

Ini boleh didapati di /etc/log masuk.Defs fail.

Fail ini mengandungi kawalan kata laluan utama berikut:

  • Pass_max_days: Bilangan maksimum hari kata laluan boleh digunakan.
  • Pass_min_days: Nombor minimum. hari yang dibenarkan antara perubahan kata laluan.
  • Pass_warn_age: Bilangan amaran hari yang diberikan sebelum kata laluan tamat.

Nilai lalai ditunjukkan di bawah.

Penuaan Kata Laluan Linux

The Pass_max_days atribut mengehadkan bilangan hari yang pengguna boleh menggunakan kata laluan mereka. Apabila nilai ini dicapai atau kata laluan tamat, pengguna dipaksa menukar kata laluan mereka untuk log masuk ke sistem. Secara lalai, nilai ini ditetapkan ke 99999, yang diterjemahkan ke 273 tahun. Ini tidak masuk akal sejauh keselamatan kerana pengguna dapat terus menggunakan kata laluan mereka sepanjang hayat mereka.

Anda boleh menetapkan ini dengan nilai yang bermakna, katakan 30 hari seperti yang ditunjukkan.

Pass_max_days 30 

Selepas 30 hari berlalu, pengguna akan dipaksa menukar kata laluan mereka kepada yang lain.

The Pass_min_days atribut menyatakan tempoh minimum yang pengguna boleh menggunakan kata laluan mereka sebelum menukarnya. Apakah maksud ini? Jika, sebagai contoh, nilai ini ditetapkan kepada 15 hari, pengguna tidak akan dapat menukar kata laluan mereka lagi sebelum 15 hari berlalu.

Pass_max_days 15 

The Pass_warn_age atribut Menentukan bilangan hari pengguna akan mendapat amaran mengenai luput kata laluan mereka sebelum tamat tempohnya. Contohnya, anda boleh menetapkan ini hingga 7 hari seperti yang ditunjukkan.

Pass_max_days 7 

CATATAN: Kawalan kata laluan ini tidak berfungsi dengan akaun yang sedia ada. Mereka hanya digunakan untuk akaun baru yang dibuat setelah menentukan peraturan.

Menetapkan kerumitan kata laluan dengan modul PAM

Sebelum anda mengedit /etc/Pam.D/Common-Password fail, buat salinan sandaran. Dalam contoh ini, kami telah mencipta kata laluan biasa.Bak fail salinan sandaran.

$ sudo cp /etc /Pam.D/Common-Password/etc/Pam.D/Common-Password.Bak 

Kemudian buka fail.

$ sudo vim /etc /Pam.D/Common-Password 

Cari garis yang ditunjukkan di bawah.

Kata laluan diperlukan PAM_PWQUALity.Jadi cuba semula = 3 
Menetapkan Kerumitan Kata Laluan dengan Pam

The cuba semula Pilihan Menetapkan bilangan maksimum kali anda dikehendaki memasukkan kata laluan yang betul sebelum mendapat ralat. Secara lalai, ini ditetapkan kepada 3. Ini hanya satu pilihan dan kami akan memasukkan beberapa pilihan.

Tambahkan atribut berikut ke garisan:

minlen = 10 difok = 3 lcredit = -1 uCredit = -1 dcredit = -1 ocredit = -1 reject_username 

Mari kita dapatkan atribut ini.

  • minlen = 10: Menetapkan saiz minimum yang boleh diterima untuk kata laluan. Dalam kes ini, 10 aksara.
  • difok = 3: Ini adalah bilangan maksimum aksara yang ada dalam kata laluan sebelumnya.
  • lcredit = -1: Ini adalah bilangan minimum aksara huruf kecil yang harus hadir dalam kata laluan.
  • Ucredit = -1: Adalah bilangan maksimum aksara huruf kecil yang harus hadir dalam kata laluan.
  • dcredit = -1: Bilangan minimum aksara angka yang harus ditakrifkan dalam kata laluan.
  • Ocredit = -1: Bilangan minimum watak khas e.g @, #, & yang harus ditakrifkan dalam kata laluan.
  • REJECT_USERNAME: Pilihan ini mencetuskan penolakan kata laluan jika kata laluan adalah nama pengguna sama ada dalam format lurus atau terbalik.

Sekiranya anda cuba membuat pengguna baru yang kekurangan dasar kata laluan, anda akan bertemu dengan kesilapan seperti yang ditunjukkan.

Buat pengguna baru di linux
Ringkasan

Ini menyimpulkan topik mengenai keselamatan sistem dan asas keselamatan secara umum. Di seluruh bab, kami telah memberi penerangan tentang langkah -langkah keselamatan asas yang boleh anda laksanakan untuk melindungi sistem Linux anda dari pengguna yang berniat jahat seperti penggodam atau pekerja yang tidak puas hati.

Menjadi Yayasan Linux Bersertifikat IT Associate (LFCA)