Sysctl je alat koji se koristi za izmenu parametara kernela u realnom vremenu. Podešavanjem ovih parametara, sistem administratori mogu fino podesiti performanse sistema i bezbednosna podešavanja bez potrebe za ponovnim pokretanjem (reboot) servera. Parametri kojima upravlja Sysctl smešteni su u direktorijumu /proc/sys i omogućavaju preciznu kontrolu nad različitim aspektima Linux kernela, uključujući umrežavanje, upravljanje memorijom i rad sa procesima.

Ključni Sysctl parametri za učvršćivanje (Hardening) kernela

Ispod su navedeni kritični Sysctl parametri koji mogu pomoći u jačanju bezbednosti vašeg Linux servera:

1. Mrežna zaštita

Zaštita od SYN Flood napada
 
net.ipv4.tcp_syncookies = 1
 SYN flood napadi iskorišćavaju proces TCP rukovanja kako bi preopteretili server. Omogućavanje TCP SYN kolačića (postavljanjem vrednosti na 1) pomaže u ublažavanju ovog napada osiguravajući da se odgovor šalje tek nakon što je rukovanje završeno.

Omogućavanje zaštite od IP spoofing-a
 
net.ipv4.conf.all.rp_filter = 1
 net.ipv4.conf.default.rp_filter = 1
 Filtriranje povratne putanje (RPF) pomaže u sprečavanju napada lažiranjem IP adresa osiguravajući da paketi dolaze iz validnih izvora. Postavljanje ovog parametra na 1 nameće strože provere dolaznih paketa.

2. Ublažavanje DoS napada

Ograničavanje dolaznih konekcija
 
net.ipv4.tcp_max_syn_backlog = 2048
 net.core.somaxconn = 1024
 Ovi parametri povećavaju maksimalni broj konekcija koje mogu biti u redu za čekanje, što je ključno za upravljanje legitimnim skokovima u saobraćaju bez podleganja napadima uskraćivanja usluge (DoS).

3. Ublažavanje eksploatacije kernela

Randomizacija rasporeda adresnog prostora kernela (KASLR)
 
kernel.randomize_va_space = 2
 Postavljanjem ovog parametra na 2 omogućava se potpuna randomizacija virtuelnog adresnog prostora kernela, što napadaču otežava predviđanje lokacije specifičnih funkcija ili podataka u memoriji.

Onemogućavanje Core Dumps (izbačaja memorije)
 
fs.suid_dumpable = 0
 Sprečavanje core dump-ova ograničava mogućnost zlonamernih korisnika da steknu uvid u pokrenute procese na vašem serveru, što može biti presudno za analizu eksploita.

4. Osiguravanje deljene memorije

Postavljanje bezbednih dozvola za deljenu memoriju
 
kernel.shmgroup = 0
 Konfiguracijom parametara deljene memorije kernela možete osigurati da samo privilegovani korisnici imaju pristup deljenoj memoriji, čime se smanjuju potencijalni vektori napada.

5. Sprovođenje ograničenja sistemskih resursa

Kontrola ograničenja procesa
 
kernel.pid_max = 32768
 Ograničavanje broja procesa koje jedan korisnik može kreirati pomaže u ublažavanju rizika od “fork bombi” i drugih vrsta napada iscrpljivanjem resursa.

6. Osiguravanje IPC-a

Restrikcija međuprocesne komunikacije
 
kernel.ipc.rmid_forced = 1
 Prisilno čišćenje svih IPC objekata procesa koji su završeni pomaže u izbegavanju zaostalih IPC resursa koje bi napadači mogli iskoristiti.

Primena i trajno čuvanje konfiguracije

Da biste odmah primenili izmene bez ponovnog pokretanja, koristite:
 sysctl -p

Međutim, da bi promene bile trajne, trebate urediti fajl /etc/sysctl.conf ili kreirati novi fajl u direktorijumu /etc/sysctl.d/:

Otvorite konfiguracioni fajl:
 
sudo nano /etc/sysctl.conf

Dodajte parametre na kraj:
 
net.ipv4.tcp_syncookies = 1 (i ostale po potrebi)

Sačuvajte i izađite, pa ponovo primenite:
 
sysctl -p

Zaključak

Učvršćivanje Linux servera nije jednokratna aktivnost, već kontinuiran proces koji zahteva redovnu procenu i ažuriranje bezbednosnih postavki. Podešavanje Sysctl parametara pruža suštinski sloj odbrane, pretvarajući vaš server u tvrđavu koju je teško probiti.

Avatar photo

By Admin

Leave a Reply