Syslog vom Router

F

flugopa

Hallo,

sicherlich könnt ihr mir helfen.
ich habe einen router der die syslog (auf port udp 514) verteilt.
unter windows kann ich das verfolgen...

nun bin ich am umstieg auf linux und benötige eine funktion die mir anzeigt wenn arcor mal wieder die ip-adressen ändert.

1. router syslog -> linux-pc
(wie muss die (/etc/syslog.conf aus sehen?)
wäre prima, wenn ich heute schon mal die syslog lesen könnte.
2. script schreit wenn z.B. neue ip kommt

selinux + iptables wurde erstmal deaktiviert.

Wer kann helfen?
 
Ob dein Router remote Logdateien schreibt, wage ich zu bezweifeln.
Aber das must du den Unterlagen deines Routers entnehmen.
Immerhin gibt es die Möglichkeit per Perl oder wget das vom Router per Webinterface ausgelieferte html-Dokument zu parsen.
Dazu musst du dir den Quelltext ansehen, und deinen Aufruf entsprechend gestalten.
Da kann Keiner eine allgemeingültige Lösung sagen.

Gruß Wolfgang
 
Wenn der Router in der Lage sein Syslogmeldungen im Netz verschickt reicht es IIRC aus syslogd mit dem zusätzlichen Parameter -h <Routerip> zu starten. Vor Urzeiten habe ich das mal so gemacht, gebe aber keine Garantie auf Korrektheit. Im Zweifel: man syslogd und/oder google.
 
Ob dein Router remote Logdateien schreibt, wage ich zu bezweifeln.
Aber das must du den Unterlagen deines Routers entnehmen.
Immerhin gibt es die Möglichkeit per Perl oder wget das vom Router per Webinterface ausgelieferte html-Dokument zu parsen.
Dazu musst du dir den Quelltext ansehen, und deinen Aufruf entsprechend gestalten.
Da kann Keiner eine allgemeingültige Lösung sagen.

Gruß Wolfgang

Es ist ein Bintecrouter. Alle Bintecrouter können Syslog.

Wie müßte die konfigdatei aussehen, wenn der router die 192.168.1.14 hat?
Unter Windows sieht es so aus:

syslogd: listening on port 514
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:445 <- 84.57.2.140:3415
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:445 <- 84.57.2.140:3415
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:445 <- 84.57.9.151:4805
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:445 <- 84.57.9.151:4805
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:445 <- 84.57.172.82:1103
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:445 <- 84.57.172.82:1103
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:135 <- 84.57.53.74:4007
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:135 <- 84.57.53.74:4007
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:445 <- 84.57.231.196:3141
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:135 <- 84.57.228.193:1571
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:135 <- 84.57.228.193:1571
router.netzwerk.local, <134>INET: NAT: refused incoming session on ifc 10001 prot 6 84.57.27.91:135 <- 84.57.194.183:4510
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Wenn der Router in der Lage sein Syslogmeldungen im Netz verschickt reicht es IIRC aus syslogd mit dem zusätzlichen Parameter -h <Routerip> zu starten. Vor Urzeiten habe ich das mal so gemacht, gebe aber keine Garantie auf Korrektheit. Im Zweifel: man syslogd und/oder google.

Danke für Deine Mühe, aber syslogd -h 192.168.1.14 geht nicht.
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

auch wenn ich nicht glaube, dass dies hier (vorerst) das richtige Forum
für Deine Frage ist...ein kurzer Schubs in die Richtige Richtung...

Wenn Du Deinen Router schon anweisen kannst Logmeldungen via UDP Port 514
rauszuwerfen...
Dann musst Du ganz einfach am entsprechenden Syslog-Rechner einen Syslog-Daemon inbetrieb nehmen, der auf das gesamte Netz horcht.
In der Syslog-Konfiguration, unter SLES-10 z.B. in /etc/syslog-ng/syslog-ng.conf zu finden, musst Du einen auf Deinen Router (IP oder ggf. Name)
entsprechenden Filter setzen und die gefilterten Logmeldungen in eine Logdatei schreiben. Schau Dir doch dazu mal die Man-Pages zum syslog-ng (next generation) an:

man 8 syslog-ng
man 5 syslog-ng.conf

Falls es den syslog-ng für Dein OS nicht gibt, könntest Du Dir auch
mal den vorgänger syslogd zur Brust nehmen.


UND wenn Du dann soweit bist, dann sind wir auch hier wieder richtig,
denn dann gehts ans Parsen Deines Logfiles :D
 
OK.
syslog-ng läuft.
syslog 0:Aus 1:Aus 2:Ein 3:Ein 4:Ein 5:Ein 6:Aus
syslog-ng 0:Aus 1:Aus 2:Aus 3:Ein 4:Aus 5:Ein 6:Aus

Parsen...
Ich glaube mir fällt langsam wieder ein das wir das früher mit perl gemacht hatten....
Lang ist es her.

Hast Du ein "Parser" (Script) für mich?

Hallo,

auch wenn ich nicht glaube, dass dies hier (vorerst) das richtige Forum
für Deine Frage ist...ein kurzer Schubs in die Richtige Richtung...

Wenn Du Deinen Router schon anweisen kannst Logmeldungen via UDP Port 514
rauszuwerfen...
Dann musst Du ganz einfach am entsprechenden Syslog-Rechner einen Syslog-Daemon inbetrieb nehmen, der auf das gesamte Netz horcht.
In der Syslog-Konfiguration, unter SLES-10 z.B. in /etc/syslog-ng/syslog-ng.conf zu finden, musst Du einen auf Deinen Router (IP oder ggf. Name)
entsprechenden Filter setzen und die gefilterten Logmeldungen in eine Logdatei schreiben. Schau Dir doch dazu mal die Man-Pages zum syslog-ng (next generation) an:

man 8 syslog-ng
man 5 syslog-ng.conf

Falls es den syslog-ng für Dein OS nicht gibt, könntest Du Dir auch
mal den vorgänger syslogd zur Brust nehmen.


UND wenn Du dann soweit bist, dann sind wir auch hier wieder richtig,
denn dann gehts ans Parsen Deines Logfiles :D
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Gerade gefunden und es geht.:)

#!/usr/bin/perl -w
use strict;
use IO::Socket;
my ($hSock, $sLine);
$hSock = IO::Socket::INET->new( LocalPort => 514, Proto => 'udp', Reuse => 1) or die "Ups,
socket: $@";
print "Ok, Port 514-UDP ist aktiv\n";
while ($hSock->recv($sLine, 1023))
{
print $sLine, "\n";
open (FILE,'>>log.txt') || die "kann file nicht öffnen: $!\n";
print FILE "$sLine\n";
close(FILE);
}
die "Jetzt nicht!\n"
 
Zuletzt bearbeitet von einem Moderator:

Ähnliche Themen

Samba PDC "DNS-Name nicht vorhanden" (Win7)

Routing Problematik

Iptables bringt mich um den Verstand

Linuxpartition zerschossen

[HowTo] TeamSpeak 2 - RC2 - Server (Deutsch/Englisch)

Zurück
Oben