Jeigu Jūsų serveris lėtai veikti, gali būti, kad jame naudojamas neoptimizuotai parašytas programinis kodas, nekorektiškai sukonfigūruotos tarnybos ir panašiai, tačiau pasitaiko ir atveju kai serveris atakuojamas
DoS (ang. Denial of Service) arba
DDoS (Distributed Denial of Service). Taip pat gali būti, kad serveris dalyvauja
botnet veikloje, kai serveris kartu su kitais serveriais atakuoja išorinius tinklus. Pasitaikius vienam iš šių atvejų naudinga būtų atlikti skenavimus su programomis
ClamAV ar
RootKit Hunter bei kitomis saugos programomis, kurios padėtų nustatyti tokią veiklą.
Apkrautame serveryje gali būti vykdomas didelis susijungimų kiekis ir gali būti sunku nuspėti tai legalus prisijungimas ar ne. Žemiau pateiksime komandas, kurios padės identifikuoti vykdomus susijungimus.
- Atlikus šią komandą bus pateikiami visi susijungimai su serveriu esamu metu (pateikiami tik nustatyti susijungimai):
netstat -na
- Konkretaus srauto (susijungimų kiekį) iš vieno IP adreso nustatymui naudojama ši komanda:
netstat -an | grep :80 | sort
- Žemiau pateikiama komanda naudinga norint nustatyti, kiek aktyvių SYN_RECV yra vykdoma serveryje. Kiekis turėtų būti ganėtinai mažas, optimalus kiekis yra mažiau nei 5. DoS atakų metu ar didelio srauto laiškų siuntimo, kiekis gali būti gana didelis. Tačiau kiekis visada priklauso ir nuo sistemos, todėl didelis kiekis gali būti ir vidutinis aktyviai naudojamame serveryje.
netstat -n -p|grep SYN_RECV | wc -l
- Taip pat galite patikrinti IP adresus dalyvaujančius šioje veikloje:
netstat -n -p | grep SYN_RECV | sort -u
- Galite patikrinti visą sąrašą IP adresų, kurie siunčia SYN_RECV susijungimų statusus:
netstat -n -p | grep SYN_RECV | awk '{print $5}' | awk -F: '{print $1}'
- Naudokite netstat komandą apskaičiuoti ir pateikti skaičių kiek kiekvienas IP adresas susijungia su serveriu:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
- Sekanti komanda pateiks susijungimų kiekį, kurį atlieka konkretus IP adresas naudojantis TCP ar UDP protokolus.
netstat -anp |grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
- Taip pat galite peržiūrėti atpažintus susijungimus vietoje visų susijungimų (bus pateikiamas susijungimų kiekis kiekvienam IP adresui):
netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
- Žemiau pateikiama komanda pateiks sąrašą IP adresų ir susijungimų kiekį, kurie yra atlikę susijungimą su serverio 80 prievadu (80 prievadas naudojamas pagrinde HTTP protokolui):
netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1
Pateiktos komandos Jums padės nustatyti ar atliekami susijungimai su serveriu nėra
DoS/DDos ar
Botnet veiklos požymiai. Nustačius, kad susijungimai yra nepageidautini, galėsite juos užblokuoti ir taip sustabdyti vykdomą veiklą bei pagerinti serverio darbą.