Linux. Как вывести количество установленных соединений на сервере с разбивкой по определенным портам?
Linux. Как вывести количество установленных соединений на сервере с разбивкой по определенным портам?
Пример: Порт; текущее кол-во соединений
Ответы (2 шт):
Автор решения: Awerty11111
→ Ссылка
ss - Socket Statistics.
Пример - количество_соединений порт:
ss -tuna | awk '{print $5}' | cut -d: -f2 | sort | uniq -c
Автор решения: arhat
→ Ссылка
$ ss -Htu -o state established |awk -F'[: ]+' '{print $5}' |sort -n |uniq -c
2 ssh
1 46104
1 55472
где используемые ключи для утилиты ss
-H убрать из вывода заголовок
-t вывести TCP сокеты
-u вывести UDP сокеты
-o state established вывести только установленные соединения
если порт нужен чисто в числовом виде то добавляем ключ -n
$ ss -Htun -o state established |awk -F'[: ]+' '{print $5}' |sort -n |uniq -c
2 22
1 46104
1 55472
Пример: Порт; текущее кол-во соединений
$ ss -Htun -o state established |awk -F'[: ]+' '{print $5}' |sort -n |uniq -c |awk '{print $2";"$1}'
22;2
46104;1
55472;1