Freesco, NND, CDN, EOS http://forum.freesco.pl/ |
|
MRTG-2 - kompy online http://forum.freesco.pl/viewtopic.php?f=35&t=3833 |
Strona 1 z 2 |
Autor: | Anonymous [ środa, 3 marca 2004, 23:34 ] |
Tytuł: | MRTG-2 - kompy online |
Mam zainstalowaną paczkę mrtg-2 pracującą razem z TrafManager 1.0 Co jakiś czas obserwuję w statystykach ilość komputerów online w ilości 15 sztuk - jak to możliwe skoro mam tylko 2 kompy wewnątrz i jeden mini serwer www (www.emetec.com.pl) - jak dorobić (bo zapewne się da) żeby online.sh w katalogu bin z pakietu mrtg-2 zapisywał IP i ewentualnie datę/czas stanu online tych "nadmiarowych" kompów do jakiegoś pliku tekstowego ?? Dzieki za ewentualne odpowiedzi... |
Autor: | mat1l9s [ czwartek, 4 marca 2004, 16:31 ] |
Tytuł: | |
a nie możesz odczytać godziny z wykresu ? |
Autor: | Anonymous [ piątek, 5 marca 2004, 01:01 ] |
Tytuł: | |
Cytuj: zapisywał IP i ewentualnie datę/czas stanu online tych "nadmiarowych" kompów
najbardziej jednak zależy mi na IP - godzinę to ja widzę... około 14-tej 15 kompów więcej...niewiele to daje informacji...prawda? |
Autor: | mat1l9s [ piątek, 12 marca 2004, 16:27 ] |
Tytuł: | |
edytujesz plik /mnt/router/etc/atd w główną pętlę while (czyli między "while" a "done" wpisujesz takie coś: potem restartujesz router i co minutę w katalogu /mnt/router/ip-* będziesz miał w plikach zrzut z lista IP oraz MACadresem kto w danej minucie siedział dobra rada - kasuj codziennie te wszystkie pliki bo bedzie tego trochę |
Autor: | Anonymous [ niedziela, 14 marca 2004, 22:42 ] |
Tytuł: | |
@mat1l9s - dzięki - działa oczywiście znakomicie ![]() ja tymczasowo dopisałem sobie wcześniej w skrypcie online.sh z pakietu mrtg-2 takie coś: cat /proc/net/arp > /mnt/home/www/lista.txt i mogłem sobie przez www śledzić w danej chwili co się dzieje... |
Autor: | mat1l9s [ poniedziałek, 15 marca 2004, 15:24 ] |
Tytuł: | |
no i co to za intruzi ? bo u mnie też się tacy czasem zdarzają i nie wiem czy ktoś się po prostu podszywa czy coś innego |
Autor: | Anonymous [ wtorek, 16 marca 2004, 11:15 ] |
Tytuł: | |
jak na razie cisza...ale monituje to regularnie...już teraz żaden się nie prześliźnie. Wcześniej był gostek w sieci LAN do której moje Freesco jest podłączone co namiętnie buszował... zmieniał IP, MAC u siebie podszywając się za różne kompy - wiele razy obserwowałem to za pomoca ettercap'a - być może to on...zobaczy się...w każdym razie dam znać co to za wzrost zaIPowania ![]() Muszę jeszcze troszkę się poduczyć i zrobić inny skrypt - żeby to funkcjonowało jako jeden plik dostępny np przez www - ale to najmniejszy problem... najważniejsze jest to żeby dodawał nową linię do tego pliku z logami tylko wtedy kiedy w arp pojawi się w danej linii przy numerze IP 0x02 (chyba, nie mam teraz dostępu do serwera) czyli jeśli dane IP się podłącza. Nie mam zielonego pojęcia czy da się za pomocą komend shella analizować odczytywaną linię z arp (?). Wyjściowy format byłby taki np: data godzina IP interfejs 16.03.04 15:14 192.168.2.13 eth0 dodatkowo można - jeśli już byłbym w stanie analizować wpis w arp (0x02 , 0x00) to można dodać do logów jeszcze czas jaki dane IP było podłączone... rozpędziłem się troszeczkę... @mat1l9s - jako zaawansowany user, może podpowiesz czy takie operacje na plikach jak analiza linii są możliwe? może porywam sie na coś niemożliwego? |
Autor: | mat1l9s [ wtorek, 16 marca 2004, 19:10 ] |
Tytuł: | |
są możliwe cat /folder/polik | while read zmienna1 zmienna2 zmienna3; do przetwarzanie zmienna1 zmienna2 zmienna3 done ale pamiętaj za tym "done" nie widzisz już zmienna1 zmienna2 zmienna3 - za done się kończy zakres ich widzialności niestety - więc musisz przetworzyć je wewnątrz tamtej pętli z tą widzialnością zmiennych jest tak tylko w przypadku tej konktrenetj pętli read, normalnie to jest w całym programi zmienna widziana (tą petla jest jakby podprogram dlatego nie ma widoczności poza nim) |
Autor: | Anonymous [ środa, 17 marca 2004, 02:50 ] |
Tytuł: | |
@mat1l9s - serdzeczne dzięki:) zaczynam to powoli łapać... na razie mam bezmyślny skrypt który co minutę przepisuje praktycznie wszystko ale jutro dopiszę żeby sprawdzał czy w ostatnich kilku liniach pliku "lista" nie wpisywał czasem tego co zechce zapisywać w danej chwili oraz analizę zmiennej "zm_fl" - czyli z pliku arp kolumny Flags - jak przypuszczam jest to wskaźnik czy dane IP/MAC nadal znajduje się w arp cache we freesco - więc wogóle nie jest mi potrzebne logowanie linii gdzie Flags przy danym kompie jest == 0x00 #!/bin/sh cat /proc/net/arp | while read zm_ip zm_hw zm_fl zm_ma zm_sm zm_in; do if [ "$zm_ip" != IP ]; then (echo $(date) $zm_ip $zm_fl $zm_ma $zm_in >> /mnt/home/reaper/lista) fi done nie wiem jeszcze jak przecedzić z lekka date bo stanowczo za dużo wysyła informacji - w sumie potrzebne jest tylko numer dnia, godzina i minuta ewentualnie sekunda natomiast rok, miesiąc i nazwa dnia jest zupełnie niepotrzebna... |
Autor: | mat1l9s [ środa, 17 marca 2004, 07:37 ] |
Tytuł: | |
/bin/date --h co to za zmienna $IP ? |
Autor: | Anonymous [ środa, 17 marca 2004, 09:45 ] |
Tytuł: | |
która $IP? $zm_ip ?? efekt działania jest taki: natomiast jeśli chodzi o warunek: to służy on jedynie eliminacji pierwszej linii nagłówkowej z pliku arp ![]() |
Autor: | mat1l9s [ środa, 17 marca 2004, 13:50 ] |
Tytuł: | |
reaper7 pisze: natomiast jeśli chodzi o warunek:
to służy on jedynie eliminacji pierwszej linii nagłówkowej z pliku arp ![]() ok juz rozumiem |
Autor: | Anonymous [ środa, 17 marca 2004, 20:19 ] |
Tytuł: | |
W sumie zrobiłem:) Dodałem w warunku kompy występujące w mojej sieci - jest ich niewiele więc nie ma problemu...teraz będzie meldował jedynie o OBCYCH ![]() ![]() Dzięki mat1l9s za wszelkie wskazówki - te o date też ![]() Pozwoliłem sobie zmienić online.sh z pakietu mrtg-2 - w sumie pasuje mi to 6-cio minutowe wykonywanie skryptu. Wygląda on następująco: #!/bin/sh L=`cat /proc/net/arp | wc -l`; L=$(expr $L - 2); echo $L cat /proc/net/arp | while read zm_ip zm_hw zm_fl zm_ma zm_sm zm_in; do if [ "$zm_ip" != IP -a "$zm_ip" != '192.168.2.1' -a "$zm_ip" != '192.168.0.2' -a "$zm_ip" != '192.168.0.3' -a "$zm_ip" != '192.168.0.4' ]; then (echo '|'$(/bin/date +%m.%d' '%T)' | '$zm_ip' | '$zm_fl' | '$zm_ma' | '$zm_in'|' >> /mnt/home/www/lista.txt) sendmail reaper1@dhouse < /mnt/home/www/lista.txt fi done natomiast plik wynikowy dostępny z www tak: |03.17 18:59:46 | 192.168.2.1 | 0x2 | 00:50:BA:C7:30:09 | eth0| |03.17 19:00:09 | 192.168.2.1 | 0x2 | 00:50:BA:C7:30:09 | eth0| tymczasowo jestem zadowolony - to w sumie mój pierwszy skrypcik i bardzo mi się podoba - jak kogoś przyłapię to wzrośnie moje zadowolenie ![]() ![]() trochę z C np != (różny, nierówny) , dlatego próbowałem z && a tu nici i dopiero po godzinie znalazłem "-o" ... ma ktoś może jakiegoś pdf'a z komendami shella? z przykładami składniowymi np?? |
Autor: | mat1l9s [ środa, 17 marca 2004, 20:20 ] |
Tytuł: | |
było mi akurat potrzebne to naskrobałem takie cóś: #!/bin/sh cat /proc/net/arp | grep eth1 | while read zm_ip zm_hw zm_fl zm_ma zm_sm zm_in; do intruz=1 for i in `grep $zm_ip /etc/justice.hst`; do if [ "$i" = "$zm_ip" ]; then intruz=0; fi done if [ $intruz = 1 ]; then echo `date` - $zm_ip, $zm_ma >> /mnt/router/packages/intruzi.txt; fi done |
Autor: | Anonymous [ czwartek, 18 marca 2004, 09:12 ] |
Tytuł: | |
Oooo - to ładne jest ![]() ![]() Ja natomiast złapałem kogoś ale nadal nie wiem kto to...i to nie na mojej sieci tylko tej "wyżej" do której jestem podłączony ... dlatego też musiałbym w Twoim skrypcie nie wycedzać tylko z interfejsu eth1. U mnie wygląda to na jakis zaawansowany skaner - ktoś ma "zlogowane" wszystkie kompy z sieci do której jestem podłączony - ten ktoś ma wszystkie IP i adresy MAC. Wygląda to tak: (uwaga długie ![]() |03.17 21:27:22|192.168.2.16|0x2|00:08:54:02:12:B7|eth0| |03.17 21:27:25|192.168.2.17|0x0|00:00:00:00:00:00|eth0| |03.17 21:27:27|192.168.2.18|0x2|00:C0:CA:12:D3:BC|eth0| |03.17 21:27:29|192.168.2.2 |0x2|00:30:4F:1C:22:10|eth0| |03.17 21:27:31|192.168.2.19|0x0|00:00:00:00:00:00|eth0| |03.17 21:27:32|192.168.2.3 |0x0|00:00:00:00:00:00|eth0| |03.17 21:27:35|192.168.2.20|0x0|00:00:00:00:00:00|eth0| |03.17 21:27:36|192.168.2.4 |0x2|00:02:44:34:30:8F|eth0| |03.17 21:27:38|192.168.2.21|0x0|00:00:00:00:00:00|eth0| |03.17 21:27:40|192.168.2.5 |0x2|00:00:22:22:22:52|eth0| |03.17 21:27:42|192.168.2.22|0x0|00:00:00:00:00:00|eth0| |03.17 21:27:44|192.168.2.6 |0x0|00:00:00:00:00:00|eth0| |03.17 21:27:46|192.168.2.23|0x0|00:00:00:00:00:00|eth0| |03.17 21:27:51|192.168.2.7 |0x0|00:00:00:00:00:00|eth0| |03.17 21:27:52|192.168.2.24|0x0|00:00:00:00:00:00|eth0| |03.17 21:27:54|192.168.2.8 |0x2|00:C0:F0:5B:41:5D|eth0| |03.17 21:27:57|192.168.2.25|0x0|00:00:00:00:00:00|eth0| |03.17 21:27:59|192.168.2.9 |0x0|00:00:00:00:00:00|eth0| |03.17 21:28:01|192.168.2.26|0x0|00:00:00:00:00:00|eth0| |03.17 21:28:03|192.168.2.10|0x0|00:00:00:00:00:00|eth0| |03.17 21:28:05|192.168.2.27|0x0|00:00:00:00:00:00|eth0| |03.17 21:28:07|192.168.2.28|0x2|00:30:4F:2D:44:22|eth0| |03.17 21:28:09|192.168.2.12|0x0|00:00:00:00:00:00|eth0| |03.17 21:28:11|192.168.2.29|0x0|00:00:00:00:00:00|eth0| |03.17 21:28:13|192.168.2.13|0x2|00:C0:DF:0E:A0:B5|eth0| |03.17 21:28:15|192.168.2.30|0x0|00:00:00:00:00:00|eth0| |03.17 21:28:17|192.168.2.14|0x0|00:00:00:00:00:00|eth0| |03.17 21:28:19|192.168.2.15|0x2|00:30:4F:28:F4:7D|eth0| tak że nie można określić kto to robi ![]() Chyba że zrobić założenie takie: gościu nie skanuje sam siebie - ale wtedy jeśli warunek "robienia logów" w naszym skrypcie zostaje spełniony, musiałbym także zrobić choćby pingowanie tej sieci "wyżej" na eth0 - zapisując wynik do pliku - potem przez porównanie zobaczyć który komp jest na liście 2 a nie ma go na liście 1 - może to by się udało... Muszę pomyśleć jak to napisać...chyba że masz jakieś inne rozwiązanie... Edit: Poukładałem sobie to "alfabetycznie" względem IP - jednak wszyskie kompy są ![]() ![]() ![]() |
Autor: | mat1l9s [ czwartek, 18 marca 2004, 23:27 ] |
Tytuł: | |
zamieszałeś, już nie wiem o co chodzi |
Autor: | Anonymous [ piątek, 19 marca 2004, 00:08 ] |
Tytuł: | |
ja sam tego nie rozumiem:) Moja sieć wygląda tak: -> 3 kompy (192.168.0.2 do 0.4 - choć to nie wszystko prawdziwe kompy ![]() -> router na freesco z eth1 192.168.0.2 i eth0 192.168.2.11 -> sieć dostawcy czyli ta "wyżej" od adresu 192.168.2.2 do 2.30 z gate na 2.1 więc tak naprawdę to co loguje mi się z arp to wypadki na eth0 - czyli z sieci do której mój router jest podłączony a nie z mojej wewnętrznej... Admin sieci 2.1 - 2.30 o niczym nie wie - byłem u niego dzisiaj i on tego nie robi. |
Autor: | Anonymous [ środa, 5 maja 2004, 10:02 ] |
Tytuł: | c.d. |
ja wyczailłem nastepującą rzecz (w sumie to info do mat1l9s i jego wrsji mrtg) wystarczy wyłączyć arp i mrtg pokazuje na wykresach porawną ilość komputerów w sieci - jeśli kogoś z moich przedmówców interesuje jeszcze ta sprawa to sprawdzcie czy u Was będzie podobnie i dajcie znać (nie dokończyłem mysli to dopisuję później) może mat1l9s zmodyfikowałby coś w swojej wersji mrtg żeby nie "gryzło" się to z arp-em ? pozdr. @ll p. |
Autor: | mat1l9s [ środa, 26 maja 2004, 20:17 ] |
Tytuł: | |
dobrze wyczaiłeś ale nie wiem czy jest sens to robić, te statystyki sa takie nuuudne ... ![]() |
Autor: | Anonymous [ wtorek, 1 czerwca 2004, 18:02 ] |
Tytuł: | |
mat1l9s pisze: dobrze wyczaiłeś ale nie wiem czy jest sens to robić, te statystyki sa takie nuuudne ...
![]() hmmm ... nudne nie nudne - pojęcie względne, ale fajnie byłoby gdyby arp nie gryzł się z mrtg, osobiście bardzo bym się cieszył gdybym mógł oglądać na wykresach ilość kompów jaka była w sieci o określonej porze (a przy okazji arp też robiłby swoją robotę) ![]() pozdr. p. |
Strona 1 z 2 | Strefa czasowa UTC+2godz. |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |