Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2009-04-03 15:37:55

  redelek - Członek DUG

redelek
Członek DUG
Skąd: Warszawa
Zarejestrowany: 2008-07-17

Sprawdzanie usług za pomocą skryptu BASH i mały problem

Witam,

Coś sobie dłubię, ale jakoś się zawiesiłem.
Mój skrypt wygląda tak

Kod:

#!/bin/bash

PORT=('80' '22' '25' '53' '110' '3306' '443')
#-- kolorki
B='\e[1;34m'
R='\e[0;31m'
N='\e[0m'
#-----------
echo "Status monitorowanych uslug: "
echo "---------------------------------------------"
for X in ${PORT[*]}
do
        STATUS=`netstat -tln |grep $X |awk '{print $6}'`
        if [ "$STATUS" != "LISTEN" ]; then
                case $X in
                "80") echo -e "Apache ${R}NIE${N} dziala !!";;
                "22") echo -e "SSH ${R}NIE${N} dziala !!";;
                "25") echo -e "Postfix ${R}NIE${N} dziala !!";;
                "53") echo -e "Bind ${R}NIE${N} dziala !!";;
                "110") echo -e "Dovecot ${R}NIE${N} dziala !!";;
                "3306") echo -e "MySQL ${R}NIE${N} dziala !!";;
                "443") echo -e "Apache SSL ${R}NIE${N} dziala !!";;
                esac
        else
                case $X in
                "80") echo -e "Apache ${B}DZIALA${N} na porcie $X";;
                "22") echo -e "SSH ${B}DZIALA${N} na porcie $X";;
                "25") echo -e "Postfix ${B}DZIALA${N} na porcie $X";;
                "53") echo -e "Bind ${B}DZIALA${N} na porcie $X";;
                "110") echo -e "Dovecot ${B}DZIALA${N} na porcie $X";;
                "3306") echo -e "MySQL ${B}DZIALA${N} na porcie $X";;
                "443") echo -e "Apache SSL ${B}DZIALA${N} na porcie $X";;
                esac
        fi

done

Problem jest w tym , że dla usługi bind jest cały czas komunikat nie działa.
Wydaje mi się , że problem jest w tym

Kod:

STATUS=`netstat -tln |grep $X |awk '{print $6}'`

Dla BIND zwraca mi 4 razy LISTEN, a nie raz jak w przypadku innych usług.
Macie może pomysł na rozwiązanie tego problemiku.

Dzięki
Redelek


Pozdrawiam
Redelek
--------------------------------------------------------
Polecam hosting ViPower https://vipower.pl/panel/aff.php?aff=208, TikTalik https://tiktalik.com/pl/

Offline

 

#2  2009-04-03 16:04:01

  redelek - Członek DUG

redelek
Członek DUG
Skąd: Warszawa
Zarejestrowany: 2008-07-17

Re: Sprawdzanie usług za pomocą skryptu BASH i mały problem

oki poprawiłem tą linijkę

Kod:

netstat -tln |grep $X |awk '{print $6}' |tail -1

i działa świetnie. Jesli komuś się przyda to proszę bardzo. Może ktoś ma pomysł jak go polepszyć to by było super.


Pozdrawiam
Redelek


Pozdrawiam
Redelek
--------------------------------------------------------
Polecam hosting ViPower https://vipower.pl/panel/aff.php?aff=208, TikTalik https://tiktalik.com/pl/

Offline

 

#3  2009-04-03 21:11:17

  czadman - Bicycle repairman

czadman
Bicycle repairman
Skąd: Wrocław
Zarejestrowany: 2005-07-08

Re: Sprawdzanie usług za pomocą skryptu BASH i mały problem

A skąd będziesz wiedział, że ktoś nc nie odpalił na tych portach?


http://www.debian.org/logos/openlogo-nd-50.png

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)