CodeGym /Kurslar /Docker SELF /Linux-da təhlükəsizlik əsasları

Linux-da təhlükəsizlik əsasları

Docker SELF
Səviyyə , Dərs
Mövcuddur

Linux-da təhlükəsizlik əsasları

1. Linux-də təhlükəsizlik prinsipləri

Linux-də təhlükəsizlik hər şeydən əvvəl "imtiyazların minimallaşdırılması" və etibarlı giriş nəzarəti strategiyasıdır. Linux-u çoxqatlı müdafiəyə malik bir qala kimi düşünün: nə qədər irəliləsəniz, bir o qədər yoxlama olur. Amma əvvəlcə sistemi qoruyan üç əsas prinsipə baxaq.

Giriş hüquqlarının bölünməsi: istifadəçilər, qruplar və root

Linux-un sabitliyi və təhlükəsizliyinin sirri giriş hüquqlarının ciddi bölünməsindədir. Sistemdə üç növ obyekt var:

  • İstifadəçilər (users): fərdi hesablar. Bu, ailə şənliyində iştirakçılarınıza oxşayır — hərəsi öz keçidi ilə.
  • Qruplar (groups): istifadəçilərin yığınları. Bəzi tapşırıqlar üçün bütün qrupun ümumi keçidi olur — məsələn, "Nənənin şəkilləri" qovluğuna giriş üçün.
  • Root: bütün hüquqlara malik olan superistifadəçi. Root, Linux dünyasında Supermen kimidir. O, hər şey edə bilər və bu həm üstünlük, həm də böyük məsuliyyət deməkdir.

Linux bu modeli fayllara, tətbiqlərə və ya sistem funksiyalarına girişin məhdudlaşdırılması üçün istifadə edir. Hətta kimsə adi istifadəçi ilə sistemə giriş əldə etsə belə, o, nüvəyə və ya kritik fayllara zərər verə bilməz.

İmtiyazların minimallaşdırılması

Hamıya root-girişi paylaşmaq lazım deyil. Təsəvvür edin ki, iş yerinizdə hər kəsin pul seyfinin açarları var. Kimsə mütləq açarlarını itirəcək. Linux-da bir qayda var: istifadəçilərə yalnız öz tapşırıqlarını yerinə yetirmək üçün lazım olan hüquqları verin.

Əsas təhlükələr

  • Viruslar: hə, Linux tamamilə qorunan deyil, amma bu sistemin arxitekturasına görə viruslarla daha az rast gəlinir.
  • Şəbəkə hücumları: SSH-i hackləmə, DDoS hücumları, DNS-in dəyişdirilməsi.
  • Proqram təminatındaki zəifliklər: köhnə paketlər və qorunmamış kitabxanalar pis niyyətlilər üçün giriş qapısı ola bilər.

2. Təhdidlərin qarşısının alınması

İndi gəlin vacib addımları nəzərdən keçirək ki, sizin Linux-server sizə sadiq şəkildə xidmət etməyə davam etsin və hakerlər üçün bir alətə çevrilməsin.

Sistemin müntəzəm yenilənməsi

Müasir bir nümunə: sistem yeniləmələri – antivirus yeniləmələri kimidir. Onsuz ən müasir müdafiə də yeni təhdidlər qarşısında təsirsiz qalacaq. Komanda:

sudo apt update && sudo apt upgrade

sizin Linux-u formada saxlamağa imkan verir.

Vacib fayllara girişin idarə olunması

Elə fayllar var ki, onları yad gözlərdən gizlətmək daha yaxşıdır. Məsələn, /etc/sudoers faylı – inzibati üstünlüklərə çıxışı olan istifadəçilərin siyahısıdır. Onu yalnız visudo vasitəsilə redaktə etmək olar, təsadüfi səhvlərin qarşısını almaq üçün.

root istifadəsinin məhdudlaşdırılması

Bilirsiniz ki, root – gücdür, amma ondan sui-istifadə etməyə dəyməz. Daha yaxşısı adi istifadəçi ilə işləmək və ehtiyac olduqda müvəqqəti imtiyazlar əldə etmək üçün sudo istifadə etməkdir.


3. Təhlükəsizlik alətləri

Linux-da təhlükəsizlik uğrunda mübarizəyə hansı alətlər kömək edə bilər? Gəlin daxili və xarici həllərə nəzər salaq.

Daxili mexanizmlər

  • firewalld və iptables: şəbəkə trafikinə nəzarət üçün firewall-lar. Çətin səslənir, amma biz baxacağıq!
  • SELinux (Security-Enhanced Linux): hansı proseslərin fayllara çıxışı olmasına icazə verdiyini yoxlayan xüsusi əlavələr.
  • ACL (Access Control Lists): standart giriş hüquqlarının genişləndirilmiş versiyası.

Xarici alətlər

  • Lynis: təhlükəsizlik auditi üçün alət.
  • OpenSCAP: sistemlərin təhlükəsizlik standartlarına uyğunluğunu yoxlamaq üçün alətlər dəsti.

Şifrə siyasətinin qurulması

Şifrəniz nə qədər mürəkkəbdir... ah, deməyin! Ən yaxşısı, dərhal etibarlı şifrə siyasəti təmin edin. Şifrənin minimum uzunluğu və mürəkkəbliyi PAM vasitəsilə təyin edilir.

sudo nano /etc/security/pwquality.conf

Parametrlər nümunəsi:

minlen = 12
minclass = 3

4. Praktiki nümunə: təhlükəsizliyin ilkin sazlanması

İndi qollarınızı çırmalayın! Sınaq sistemi üçün sadə bir təhlükəsizlik siyasəti quracağıq.

İstifadəçilərin qeydiyyatı

İki istifadəçi yaradaq: administrator və adi istifadəçi.

sudo adduser admin
sudo adduser user1
sudo usermod -aG sudo admin

İndi admin inzibati hüquqlara malikdir, user1 isə malik deyil.

Vacib fayllara giriş nəzarəti

Nginx konfiqurasiya faylına giriş məhdudlaşdırılır:

sudo chmod 600 /etc/nginx/nginx.conf

Firewall ilə işləmək

Serverimizi qorumaq üçün ufw (Uncomplicated Firewall) quraşdırıb sazlayırıq:

sudo apt install ufw
sudo ufw enable

Yalnız SSH və HTTP trafikinə icazə veririk:

sudo ufw allow 22
sudo ufw allow 80

Yoxlanışı aktiv edirik:

sudo ufw status

5. Tipik səhvlər

Təhlükəsizlik haqqında danışarkən, nə etməli olduğumuzu bilməkdən əlavə, nələrdən çəkinməli olduğumuzu da anlamaq vacibdir.

Səhv 1: root ilə işləmək

Bir çox yeni başlayanlar tənbəllik edirlər və root hesabı ilə işləyirlər. Bu çox təhlükəlidir: istənilən səhv və ya hücum sistem üçün ölümcül ola bilər.

Səhv 2: Yenilənməmiş paketlər

Bir admin deyirdi: "Yeganə yaxşı server — yenilənmiş serverdir". Köhnə proqram təminatı hücumlar üçün ideal hədəfdir.

Səhv 3: Təhlükəsiz olmayan şifrələr

"password123" ən məşhur şifrələrdən biridir. Həmin şifrəni istifadə edən insan olmayın.


6. Praktiki tətbiqlər: bu nəyə lazımdır?

Linux təhlükəsizliyini qurmaq sizə təkcə işdə yox, həm də müsahibələrdə lazım olacaq. Firewall-larla (bəndamə), SELinux və giriş hüquqlarının ayarları ilə işləməyin əsaslarını bilməyiniz işəgötürənləri təsirləndirəcək. Məsələn, şirkətin serverini DDoS hücumlarından qoruya və ya layihələr üzərində komanda ilə işləmək üçün hüquqları tənzimləyə bilərsiniz.

Əgər proqramlaşdırma ilə məşğul olursunuzsa, sistemin qorunması kodunuzun rəqiblərə keçməməsi və müştəri məlumatlarının təhlükəsiz qalması deməkdir. Bu, sadəcə qondarma paranoya deyil, müasir sənayenin real tələbatıdır.

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION