{"id":1281,"date":"2011-02-09T12:39:16","date_gmt":"2011-02-09T11:39:16","guid":{"rendered":"http:\/\/www.plagosus.net\/blog\/?p=1281"},"modified":"2012-10-26T19:48:59","modified_gmt":"2012-10-26T18:48:59","slug":"kako-odrediti-broj-aktivnih-konekcija-na-server","status":"publish","type":"post","link":"https:\/\/www.plagosus.net\/blog\/tech\/sysop\/kako-odrediti-broj-aktivnih-konekcija-na-server\/","title":{"rendered":"Kako odrediti broj aktivnih konekcija na server?"},"content":{"rendered":"<p style=\"text-align: justify;\">Bilo da imate <strong>ku\u0107ni server<\/strong> za multimedijalne i sl fajlove ili u firmi imate ra\u010dunar koji ima funkciju <strong>servera za skladi\u0161tenje podataka<\/strong> ili \u010dak <strong>web server<\/strong>. moglo bi vas zanimati koliko ima aktivnih konekcija sa tim ra\u010dunarom. Kad god se neki klijent pove\u017ee sa serverom, ostvaruje se (min) jedna konekcija izme\u0111u ta dva ra\u010dunara, a ukoliko je va\u0161em serveru dozvoljen javni pristup sa Interneta mo\u017ee se desiti da u nekom trenutku server bude preoptere\u0107en brojem konekcija koji treba da opslu\u017ei. Ovo je posebno zna\u010dajno za web servere. Sve ovo va\u017ei i ukoliko imate <strong>dedicated hosting<\/strong> za sajt.<\/p>\n<p style=\"text-align: justify;\">Da\u0107u vam par primera kako mo\u017eete pratiti broj trenutno aktivnih konekcija na server, za koji imate <strong>SSH prastup<\/strong>. Mo\u0107i \u0107ete da pratite broj i da vidite <strong>listu konekcija<\/strong> svakog klijenta po IP adresama, \u0161to mo\u017ee poslu\u017eiti za eventualnu detekciju i analizu u <strong>DoS napada<\/strong> na va\u0161 server. Ukoliko jedan IP ostvaruje ogroman broj konekcija, verovatno se radi upravo o ovakvom DoS napadu na va\u0161 server. Za ovakve stvari, koristi se alat pod nazivom <span style=\"color: #3366ff;\"><strong>netstat<\/strong><\/span>.<\/p>\n<p style=\"text-align: justify;\">Za detaljniji opis rada komande <span style=\"color: #3366ff;\">netstat<\/span> ukucajte u konzoli:<\/p>\n<p>[bash]<br \/>\nman netstat<br \/>\n[\/bash]<\/p>\n<p style=\"text-align: justify;\">Ukoliko nemate instaliran <span style=\"color: #3366ff;\">netstat<\/span>, on obi\u010dno dolazi u kompletu sa <a href=\"http:\/\/www.question-defense.com\/2010\/01\/09\/what-linux-rpm-package-installs-netstat\" target=\"_blank\">nekim drugim<\/a> alatima. Za Fedoru linux, dovoljno je instalirati <span style=\"color: #3366ff;\">net-tools<\/span> komandom:<\/p>\n<p>[bash]<br \/>\nyum install net-tools<br \/>\n[\/bash]<br \/>\n<!--more--><\/p>\n<p style=\"text-align: justify;\">Ukoliko imate netstat, evo i par korisnih komandi koje bi valjalo znati:<\/p>\n<h2>Korisne netstat komande<\/h2>\n<p>[bash]<br \/>\nnetstat -na<br \/>\n[\/bash]<br \/>\nPrikazuje sve aktivne konekcije sa Internetom i broji samo uspostavljene veze.<br \/>\n[bash]<br \/>\nnetstat -an | grep :80 | sort<br \/>\n[\/bash]<br \/>\nPrikazuje (sortitano) aktivne konekcije na portu 80. Zgodno za proveru da li ima puno konekcija sa jedne IP adrese.<br \/>\n[bash]<br \/>\nnetstat -n -p | grep SYN_REC | wc -l<br \/>\n[\/bash]<br \/>\nPrikazuje koliko ima aktivnih SYNC_REC-ova na serveru. Ovaj broj bi trebao da je jako mali, po mogu\u0107stvu manji od 5. Ova vrednost obi\u010dno ska\u010de u slu\u010daju DoS ili mail bomb napada.<br \/>\n[bash]<br \/>\nnetstat -n -p | grep SYN_REC | sort -u<br \/>\n[\/bash]<br \/>\nLista svih IP adresa, umesto samo brojnog stanja iz prethodnog slu\u010daja.<br \/>\n[bash]<br \/>\nnetstat -n -p | grep SYN_REC | awk &#8216;{print $5}&#8217; | awk -F: &#8216;{print $1}&#8217;<br \/>\n[\/bash]<br \/>\nLista svih jedinstvenih IP adresa, klijenata koji \u0161alju SYN_REC konekcije.<br \/>\n[bash]<br \/>\nnetstat -ntu | awk &#8216;{print $5}&#8217; | cut -d: -f1 | sort | uniq -c | sort -n<br \/>\n[\/bash]<br \/>\nPrikazuje broj konekcija koju svaki IP uspostavlja sa serverom.<br \/>\n[bash]<br \/>\nnetstat -anp | grep &#8216;tcp\\|udp&#8217; | awk &#8216;{print $5}&#8217; | cut -d: -f1 | sort | uniq -c | sort -n<br \/>\n[\/bash]<br \/>\nIzlistava broj konekcija koje klijenata (IP) povezanih putem TCP ili UDP protokola.<br \/>\n[bash]<br \/>\nnetstat -ntu | grep ESTAB | awk &#8216;{print $5}&#8217; | cut -d: -f1 | sort | uniq -c | sort -nr<br \/>\n[\/bash]<br \/>\nPrikazuje samo broj <span style=\"text-decoration: underline;\">uspostavljenih<\/span> umesto svih konekcija, kao i broj za svaki IP posebno.<br \/>\n[bash]<br \/>\nnetstat -plan | grep :80 | awk {&#8216;print $5&#8217;} | cut -d: -f 1 | sort | uniq -c | sort -nk 1<br \/>\n[\/bash]<br \/>\nPrikazuje listu IP adresa i broj konekcija koji svaka uspostavlja sa serverom na portu 80.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bilo da imate ku\u0107ni server za multimedijalne i sl fajlove ili u firmi imate ra\u010dunar koji ima funkciju servera za&#8230;<\/p>\n","protected":false},"author":2,"featured_media":1743,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[210],"tags":[5,46,150,124],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/posts\/1281"}],"collection":[{"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/comments?post=1281"}],"version-history":[{"count":0,"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/posts\/1281\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/media\/1743"}],"wp:attachment":[{"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/media?parent=1281"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/categories?post=1281"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.plagosus.net\/blog\/wp-json\/wp\/v2\/tags?post=1281"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}