Freesco, NND, CDN, EOS http://forum.freesco.pl/ |
|
Logowanie połaczen ? http://forum.freesco.pl/viewtopic.php?f=40&t=18925 |
Strona 1 z 1 |
Autor: | adi399 [ piątek, 4 października 2013, 21:33 ] |
Tytuł: | Logowanie połaczen ? |
hej jaki program pod cdn2 do logowania połączeń klientów, potrzebuje bo uke się upomina o logi :/ chodzi głownie o polaczenia czyli z czym klient sie laczy same ip w postaci godzina data Loklane_Ip >> Zenetrzne IP:Port chce gromadzić na oddzielnym serwerze ftp dzieki |
Autor: | Albercik [ sobota, 5 października 2013, 06:59 ] |
Tytuł: | Re: Logowanie połaczen ? |
np: ulog, tcpdump. |
Autor: | adi399 [ sobota, 5 października 2013, 09:10 ] |
Tytuł: | Re: Logowanie połaczen ? |
dzięki a który wydajniejszy mniej zasobny ? |
Autor: | Maciek [ sobota, 5 października 2013, 10:42 ] |
Tytuł: | Re: Logowanie połaczen ? |
Można logować ruch za pomocą iptables. Znacznie mniej dokuczliwe dla sieci niż dajmy na to tcpdump. Ważne jest tylko pierwsze połączenie i port. a to, czy potem bylo 100 czy 2000 to już nie ma znaczenia dla identyfikacji ewentualnego chuligana. przykład: iptables -A FORWARD -m state --state NEW -j LOG --log-prefix NEW: A taka jest postać logu. Jan 24 22:54:17 fw kernel: [13783950.252133] NEW:IN=eth0 OUT=eth1 SRC=192.168.0.1 DST= 192.168.0.1 LEN=58 TOS=0x00 PREC=0x00 TTL=116 ID=20202 PROTO=UDP SPT=1024 DPT=34384 LEN=38 Jan 24 22:54:17 fw kernel: [13783950.253592] NEW:IN=eth1 OUT=eth0 SRC= 192.168.0.3 DST= 192.168.0.4 LEN=60 TOS=0x00 PREC=0x00 TTL=61 ID=55311 DF PROTO=TCP SPT=35255 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 Jan 24 22:54:17 fw kernel: [13783950.254956] NEW:IN=eth0 OUT=eth1 SRC= 192.168.0.5 DST= 192.168.0.6 LEN=52 TOS=0x00 PREC=0x00 TTL=116 ID=20203 DF PROTO=TCP SPT=57052 DPT=34384 WINDOW=8192 RES=0x00 SYN URGP=0 Jan 24 22:54:17 fw kernel: [13783950.259859] NEW:IN=eth0 OUT=eth1 SRC= 192.168.0.7 DST= 192.168.0.8 LEN=52 TOS=0x00 PREC=0x00 TTL=110 ID=28595 DF PROTO=TCP SPT=14067 DPT=18569 WINDOW=8192 RES=0x00 SYN URGP=0 |
Autor: | adi399 [ sobota, 5 października 2013, 14:19 ] |
Tytuł: | Re: Logowanie połaczen ? |
defakto muszę zrzucać to do pliku co jeden dzień i trzymać przez 12 mc :/ gdzie ta regułka zrzuca informacje do logu /var/log/iptables ? |
Autor: | Albercik [ sobota, 5 października 2013, 14:48 ] |
Tytuł: | Re: Logowanie połaczen ? |
Nie zgodzę się z Maćkiem z twierdzeniem, że tcpdump obciąży bardziej system niż logowanie po iptables, ale rozwiązań może być mnóstwo, jedno z nich poniżej, nie jest to mojego autorstwa: #!/bin/bash killall tcpdump sleep 3 echo "działam" katalog=`date '+%m-20%y'` if [ ! -d "/home/logi/logi/$katalog" ] then echo "nie ma katalogu więc go tworzę" mkdir /home/logi/logi/$katalog fi nazwaPliku=tcpdump`date '+%d'`_`date '+%m'`_20`date '+%y'`.log tcpdump -w /home/logi/logi/$katalog/$nazwaPliku -qni eth1 'tcp[tcpflags] & (tcp-syn) != 0' & ################################################################################### # # Interfejs eth1 jest lanem. # Logi czytamy za pomocą tcpdump i np grep-em np: # tcpdump -qn -r tcpdump03_09_08.log # gdzie tcpdump03_09_08.log to plik z logami # # Jak chcesz zobaczyć kto np łączył się z adresem IP 10.10.10.10 to wpisujesz: # # tcpdump -qn -r tcpdump03_09_08.log | grep 10.10.10.10 # ################################################################################## |
Autor: | Maciek [ sobota, 5 października 2013, 15:57 ] |
Tytuł: | Re: Logowanie połaczen ? |
adi399 pisze: gdzie ta regułka zrzuca informacje do logu /var/log/iptables ? Możesz sobie pisać ten log do dowolnego pliku. >>/costam/costam/log Możesz dodać odpowiednie wpisy do logrotate i zrobić skrypty w cronie, które będą zrzucać logi w jakieś inne miejsce. Może kompresować je w tygodniowych paczkach, albo whatever. Tylko twoja fantazja cię ogranicza. |
Autor: | adi399 [ sobota, 5 października 2013, 18:22 ] |
Tytuł: | Re: Logowanie połaczen ? |
Maciek pisze: iptables -A FORWARD -m state --state NEW -j LOG --log-prefix NEW: A taka jest postać logu. Jan 24 22:54:17 fw kernel: [13783950.252133] NEW:IN=eth0 OUT=eth1 SRC=192.168.0.1 DST= 192.168.0.1 LEN=58 TOS=0x00 PREC=0x00 TTL=116 ID=20202 PROTO=UDP SPT=1024 DPT=34384 LEN=38 Jan 24 22:54:17 fw kernel: [13783950.253592] NEW:IN=eth1 OUT=eth0 SRC= 192.168.0.3 DST= 192.168.0.4 LEN=60 TOS=0x00 PREC=0x00 TTL=61 ID=55311 DF PROTO=TCP SPT=35255 DPT=80 WINDOW=14600 RES=0x00 SYN URGP=0 Jan 24 22:54:17 fw kernel: [13783950.254956] NEW:IN=eth0 OUT=eth1 SRC= 192.168.0.5 DST= 192.168.0.6 LEN=52 TOS=0x00 PREC=0x00 TTL=116 ID=20203 DF PROTO=TCP SPT=57052 DPT=34384 WINDOW=8192 RES=0x00 SYN URGP=0 Jan 24 22:54:17 fw kernel: [13783950.259859] NEW:IN=eth0 OUT=eth1 SRC= 192.168.0.7 DST= 192.168.0.8 LEN=52 TOS=0x00 PREC=0x00 TTL=110 ID=28595 DF PROTO=TCP SPT=14067 DPT=18569 WINDOW=8192 RES=0x00 SYN URGP=0 iptables -A FORWARD -m state --state NEW -j LOG --log-prefix NEW: >> /etc/000.txt Dałem tak i nic nie loguje mhymm |
Autor: | Albercik [ sobota, 5 października 2013, 21:34 ] |
Tytuł: | Re: Logowanie połaczen ? |
Maciek pisze: Możesz sobie pisać ten log do dowolnego pliku. >>/costam/costam/log Nie sprawdziłeś tego Maćku, to nie ma prawa działać. Połączenia logowane są w /var/log a przekierowanie do pliku nie ma prawa działać, bo przekierowujesz tylko w chwili wpisywania reguły. Nic nie pójdzie do tekściaka, wszystko do /var/log. Aby było ok to musisz to wyłączyć z everything.log, bo sobie naprodukujesz logów jak mrówków. Możesz oczywiście przekierować logi w inne miejsce, możesz wyłączyć te logi z everything.log, ale już ingerujesz w system i zmieniasz pewne systemowe zasady. Jeszcze na dokładkę taki dokument : http://www.kk.jgora.pl/~liber/zajecia/a ... ozenia.pdf |
Autor: | Maciek [ sobota, 5 października 2013, 21:50 ] |
Tytuł: | Re: Logowanie połaczen ? |
Dopisałem z palca: iptables -I FORWARD -m state --state NEW -j LOG --log-prefix NEW: (dlatego jest -I zamiast -A) i loguje to w syslog: Oct 5 21:37:45 eos kernel: NEW:IN=eth1 OUT=eth0 SRC=192.168.1.5 DST=194.204.152.34 LEN=55 TOS=0x00 PREC=0x00 TTL=127 ID=31310 PROTO=UDP SPT=60679 DPT=53 LEN=35 Faktycznie do zadanego pliku nie pisze. Coś zatem podałem źle. Nie pamiętam. Stosowałem to dawno temu. Sprawdź do jakiego pliku pisze u ciebie domyślnie. Mój system to EOS, nie wiem, może u ciebie będzie to inny plik? Co do określenia pliku to spróbuj tak: iptables -I FORWARD -m state --state NEW -j LOG --log-prefix NEW: 2>/var/log/jakisplik |
Autor: | adi399 [ niedziela, 6 października 2013, 10:36 ] |
Tytuł: | Re: Logowanie połaczen ? |
łał faktycznie działa logowanie zdarzeń a wielkość pliku rośnie w zastraszającym tempie, heh ale nie udało mi się zmusić do zapisywania logu do oddzielnego pliku :/ jakieś sugestie dziękuje Macku |
Autor: | Albercik [ niedziela, 6 października 2013, 15:28 ] |
Tytuł: | Re: Logowanie połaczen ? |
Maciek pisze: Dopisałem z palca: iptables -I FORWARD -m state --state NEW -j LOG --log-prefix NEW: (dlatego jest -I zamiast -A) W tym wypadku -I i -A nie powoduje różnicy. W CDN2 domyślnie pojawiło się w everything.log . Jeśli nie chcesz używac tcpdumpa, tylko to co proponuje Maciek to chyba jedynym sensownym wyjściem będzie wrzucić to do crona, przed zadziałaniem logrotate: #!/bin/bash plik_txt=log_`date '+%d'`_`date '+%m'`_20`date '+%y'`.log cat /var/log/log_w_ktorym_zrzucaja_sie_polaczenia.log | grep NEW: > /storage/do/logow/$plik_txt w CDN2 /var/log/log_w_ktorym_zrzucaja_sie_polaczenia.log = everything.log log raz na dobę będzie filtrował "NEW:" , a wielkością logu systemowego już zajmie się logrotate. |
Autor: | Maciek [ niedziela, 6 października 2013, 19:06 ] |
Tytuł: | Re: Logowanie połaczen ? |
Ja bym to zrobił jeszcze inaczej. Zrzucanie powinno się oczywiście rozpocząć przed logrotate. Dla pewności nazwę pliku w cron.daily poprzedziłbym jedynką, np. 1-logi.sh. Cytuj: #!/bin/bash TODAY=`date +%Y-%m-%d` cat /var/log/log_w_ktorym_zrzucaja_sie_polaczenia.log | grep NEW: > /miejsce-docelowe/$TODAY.log A to dlatego, że mając rok logów i chcąc coś znaleźć w nich z konkretnej daty, łatwiej zacząć filtrować od roku, potem miesiąc i dzień. PS. I nie wiem, czy czasem nie powinno być >> zamiast >. Pojedyncza strzałka może spowodować, że każdy kolejny wpis wyczyści poprzedni, ale to rzecz jasna trzeba sprawdzić. |
Autor: | Albercik [ niedziela, 6 października 2013, 22:39 ] |
Tytuł: | Re: Logowanie połaczen ? |
Maciek pisze: PS. I nie wiem, czy czasem nie powinno być >> zamiast >. Pojedyncza strzałka może spowodować, że każdy kolejny wpis wyczyści poprzedni, ale to rzecz jasna trzeba sprawdzić. Przecież zmienia się data z każdym dniem, więc nie robi róznicy, czy będzie to >> czy > |
Autor: | adi399 [ poniedziałek, 7 października 2013, 09:07 ] |
Tytuł: | Re: Logowanie połaczen ? |
ja to myślę tak Stop iptables skopiowanie pliku logow przetworzenie pliku logow grep NewConn do pliku sciezka.today.log skasowanie pliku logow bez grepa wyslanie pliku logow na serwer ftp skasowanie pliku logow wyniku grepa start iptable nie będę mial smietnika na dysku ps jak przy pomocy wget wgrac cos na serwer ftp ? cos w stylu wget put ftp://login:haslo/serwer_FTP.pl /tmp/$TODAY.log #!/bin/bash /usr/sbin/iptables -D FORWARD -m state --state NEW -j LOG --log-prefix NewConn: plik_txt=log_`date '+%d'`_`date '+%m'`_20`date '+%y'`.log cp /var/log/log_w_ktorym_zrzucaja_sie_polaczenia.log /tmp/logi.log cat /var/log/logi.log | grep NewConn: > /tmp/$TODAY.log rm /tmp/logi.log wget WYSYLANIE NA FTP rm /tmp/$TODAY.log /usr/sbin/iptables -l FORWARD -m state --state NEW -j LOG --log-prefix NewConn: |
Strona 1 z 1 | Strefa czasowa UTC+2godz. |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |