Как контролировать запущенные программы с открытыми портами?

Когда ваши данные ограничены::

perl -F'[:]' -lane '
   push @e, join $", splice @F, -1;
   push @A, join $", @F;
   length($A[-1]) > $maxW and $maxW = length($A[-1])}{
   print $_, $" x ($maxW - length), "\t", shift @e for @A;
' file

Результаты

alice bob cathy david   elon
unix linux              bsd

если вы хотите, чтобы последние 2 элемента были разделены, измените -1в списке аргументов spliceна -2, в результате чего:


alice bob cathy david elon
unix            linux bsd

Пояснение

  • Сохраните массив @e, который содержит последние -N-е элементы для каждой строки.
  • Поддерживать массив @A, который содержит каждую h строку после того, как последние -N элементов были удалены из текущей строки.
  • Определяем максимальную ширину этих обрезанных линий.
  • После того, как все строки прочитаны, мы печатаем каждую усеченную строку + дифференциальные пробелы таким образом, что усеченные -длины строк выравниваются (после пробелов справа )+ TAB + последние -N элементов.
0
15.10.2020, 12:22
2 ответа
#! /bin/bash

while :; do
    running=$(netstat -plnt)
    if [ "$running" != "$newrunning" -a -n "$firstrun" ]; then
        diff -u  <(echo "$newrunning") <(echo "$running") | mail -s "New listeners!" user@example.com
    fi
    newrunning=$(netstat -plnt)
    firstrun=1
    sleep 1
done

Этот сценарий (должен быть запущен под root, очевидно, )будет уведомлять вас о любых новых/удаленных приложениях, которые открывают прослушиваемые порты.

1
18.03.2021, 22:57

Здесь можно установить список приложений

Можно добавить в cronjob

#!/bin/bash
known_apps="sshd|nginx|mysqld|redis"
netstat=$(netstat -plnt | awk 'FNR > 2' | egrep -v "$known_apps")

if [[ $? -eq 0 ]]; then
   echo "other apps, running"
   send mail command including $netstat
fi

Если вам не нужен cronjob, вместо ifиспользуйтеwhile

while true;
do
   echo "other apps, running"
   sendmail command include $netstat 
   sleep 2  (or how often you want this loop to run )
done

Он будет просто уведомлять вас о новых приложениях

1
18.03.2021, 22:57

Теги

Похожие вопросы