Перевірте кількість активних з'єднань на порт 80?


27

У мене є веб-сервер, мені потрібно перевірити кількість підключень на моєму сервері в даний момент часу,

я використовував наступне

netstat -anp |grep 80 |wc -l

це повернулося с

2542

але з моєї аналітики google я знаю, що одночасних користувачів не більше 100.

is this correct ? 
if not how to i get the active number of connections ? 
is this sign of a victim of DOS attack how do i know that ?

З ssви можете вибирати порт і вказати трохи швидше: ss -nt dport == :80 and state connected.
eckes

Кількість з'єднань - це не кількість користувачів. Кожен веб-переглядач може одночасно відкривати декілька з'єднань. Навпаки, хоча рідше, кілька користувачів, які використовують один і той же проксі, можуть з'являтися лише через одне з'єднання.
Патрік Мевзек

Відповіді:


50

Спробуйте просто підрахувати Встановлені з'єднання:

netstat -anp | grep :80 | grep ESTABLISHED | wc -l

Крім того, будьте обережні, щоб не використовувати двокрапку у своєму операторі grep port. Якщо шукати 80, це може призвести до помилкових результатів від PID та інших портів, які, як буває, мають у своєму виведенні символів 80.


5
grep -w 80вирішує цю проблему і усуває подібні речі 8093.
Майкл Хемптон

1
так, ти маєш рацію: 80 може також ввести помилкові позитиви.
d34dh0r53

@MichaelHampton І grep -w 80, і: 80 також вважатимуть вихідні http-з'єднання, якщо такі є. netstat -ntp | awk '{print $ 4}' | grep -w 80. І так, я дуже переймаюся кольором двоколісного :) :).

Цей вдосконалений .. netstat -an | grep -w 80 | grep -i встановлений | awk {'print $ 5'} | вирізати -d: -f1 | сортувати | uniq -c | sort -n
user169015

2

Отримавши @ d34dh0r53 відповідь на один крок "далі" (до відповіді з "ширшою" перспективою), ви також можете перевірити всі з'єднання, відсортовані відповідно до їх стану, виконавши наступне:

netstat -ant | grep :<port_num> | awk '{print $6}' | sort | uniq -c | sort -n

наприклад:

netstat -ant | grep :8000 | awk '{print $6}' | sort | uniq -c | sort -n

Можливим виходом може бути:

1 CLOSING
1 established
1 FIN_WAIT2
1 Foreign
2 CLOSE_WAIT
6 FIN_WAIT1
7 LAST_ACK
7 SYN_RECV
37 ESTABLISHED
44 LISTEN
297 TIME_WAIT

Сподіваємось, це допоможе і будь-ласка, підніміть будь-які розробки та / або коментарі щодо вищезазначеного.

Ура,

Хлопець.


1

Ви можете просто помістити туди свою IP-адресу, замість того, щоб турбуватися про те, щоб зв'язати декілька грепсів, сідів і страхів разом.

netstat -anp | grep -c $(hostname -i):80

Використання $(hostname -i)дозволить використовувати цю команду в будь-якому вікні, статичному / динамічному IP-адресі тощо.


0
ss -tn src :80 or src :443

Це покаже всі з'єднання з локальними портами 80 або 443 (додати / змінити порт (і), якщо потрібно).

Відмова: Я розумію, що це давнє питання, але це все ще найкращий результат у Google, тому я думаю, що він заслуговує на відповідь, використовуючи сучасні комунальні послуги.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.