- Serwer na Linuxie ;)
- Serwer WWW + PHP
- Nmap, którego ściagniesz z tej strony
- Znajomość Admina sieciowego
Na początek instalujemy Nmapa, instrukcje znajdziesz tu
Następnie sprawdzamy czy działa, np na Onecie który ma adres ip 213.180.130.200
Wydajemy polecenie
| nmap -sP 213.180.130.200 |
Powinnieneś otrzymać
| Starting nmap V. 2.53 by fyodor@insecure.org ( www.insecure.org/nmap/ ) Host f1virt.onet.pl (213.180.130.200) appears to be up. Nmap run completed -- 1 IP address (1 host up) scanned in 3 seconds |
Działa :)
Poleceniem, które jest poniżej sprawdzane są włączone kompy
| nmap -sP -oN /home/httpd/html/status.log 192.168.1.1-21 |
Opis opcji:
-oN /home/httpd/html/status.log - zapisywanie do pliku określonego w ścieżce
192.168.1.1-21 - zakres sprawdzanych ip
Teraz ustawiamy polecenie, aby wykonywało się automatycznie co 5 minut, w tym celu edytujemy plik /etc/crontab tudzież /var/spool/cron/root lub coś innego i dopisujemy linijkę:
| 0,5,10,15,20,25,30,35,40,45,50,55 * * * * nmap -sP -oN /home/httpd/html/status.log 192.168.1.1-21 |
Restartujemy crona
Za ok 5 minut sprawdzamy plik /home/httpd/html/status.log, który powinien wyglądać mniejwjęcej tak:
| # Nmap (V. nmap) scan initiated 2.53 as: nmap -sP -oN /home/httpd/html/status.log 192.168.1.1-21 Host komp1 (192.168.1.1) appears to be up. Host komp2 (192.168.1.2) appears to be up. # Nmap run completed at Thu Jan 10 14:15:02 2002 -- 21 IP addresses (2 hosts up) scanned in 1 second |
Teraz najważniejsza część, czyli jak to przetrawić by wyszły z tego obrazki na stronę ?
Wystarczy wstawić w odpowiednim mjejscu na stronie (z rozszerzeniem .php / .phtml / .php3) kod:
| $baza = "/home/httpd/html/status.log"; $plik = file($baza); $success = 0; $sn = 0; $en = count($plik); do { if(stristr($plik[$sn],"komp1")) { $dataex = explode("|",$plik[$sn]); $success++; echo 'Wlaczony'; } $sn++; } while($sn < $en); if($success == 0) { echo 'Wylaczony'; } ?> |
Oczywiście w miejsce gdzie w kodzie jest komp1 wpisujemy odpowiednią nazwę z pliku status.log.
Pamiętaj o wpisaniu odpowiednich ścieżek dostępu do wszystkich plików