Syslog zwischen 2 DS?

Status
Für weitere Antworten geschlossen.

Oeche

Benutzer
Mitglied seit
12. Mai 2011
Beiträge
34
Punkte für Reaktionen
0
Punkte
0
Ist es möglich, dass eine Diskstation die Syslog-Protokolle an eine andere Diskstation sendet?

Auf meiner DS-A habe ich den Syslog-Server installiert und gestartet. Meine Apple Airport habe ich so konfiguriert, dass die Syslog-Meldungen an die DS-A gesendet werden. Dies klappt.
An einem anderen Standort habe ich eine weitere Diskstation DS-B. Diese ist per Internet verbunden und wird als Backup verwendet. Hier habe ich allerdings keine Einstellungen finden können, um die Konfiguration der Syslog-Meldungen zu modifizieren. Geht das nicht?
 

HarryPotter

Benutzer
Mitglied seit
24. Aug 2007
Beiträge
2.156
Punkte für Reaktionen
0
Punkte
0
Ab DSM 4.0 (wird wohl in den nächsten 1-2 Wochen erscheinen) ist das eingebaut :)

Bis dann müsste man die entsprechenden Konfigurationsfiles von Hand anpassen.
 

Oeche

Benutzer
Mitglied seit
12. Mai 2011
Beiträge
34
Punkte für Reaktionen
0
Punkte
0
Danke! Solange kann ich noch warten.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
bis zum DSM 4.0 suchst du dir das Konfigfile vom syslog (Server A). Müsste ein syslog-ng.conf File sein. Dortdrin legst du zwei neue Zeilen an. Zuerst eine sogeannte Destination
Code:
destination d_net { tcp("IP_SYSTEM_B" port(5140)); };
und dann eine Anweisung alle Logzeilen an diese Destination zu senden
Code:
log { source(s_src); destination(d_net); };
dann musst du auf Server B ebenfalls dessen syslog-ng.conf öffnen und eine sogeannte Source einbauen
Code:
source s_external {
             tcp ( ip(IP_SYSTEM_B) port(5140) keep-alive(yes));
und dann eine Destination
Code:
destination d_external_all { file("/var/log/ext/SERVER_A"); };
Diese beiden Einträge werden dann so als log aktiviert
Code:
log { source(s_external); destination(d_external_all); };
dann natürlich noch beide syslog neustarten
Grundsätzlich würde syslog auch via UDP funzen, ich persönlich halte jedoch den TCP Weg für geeigneter. Denn TCP kann man sinnvoll in einer Firewall filtern, bei UDP wird das schwieriger. Dies da UDP ein zustandsloses Protokoll und damit recht anfällig für gefakte IPs ist. Zudem ist TCP bei der Übertragung zuverlässiger als UDP, denn TCP kann erkennen wenn Pakete fehlen (verloren gegangen sind) und kann diese neu vom Sender anfordern.
Zudem darfst du nicht ausser Acht lassen, dass du bei der Übertragung von A an B (wenn es via Internet geht) einen verschlüsselten Transport (z.B. OpenVPN) verwenden solltest. Denn syslog sendet die Logs im Klartext an die Gegenstelle!

Noch was wichtiges: Wenn du OpenVPN als Transport verwendest, dann solltest du NICHT die OpenVPN IPs der beiden Systeme benutzen, sondern die lokalen LAN IPs der beiden Systeme. Denn es kann sein, dass der syslog vor OpenVPN gestartet wird und damit sind die OpenVPN IPs noch nicht verfügbar d.h. der syslog wird crashen. Wenn du LAN IPs nutzt hast du dieses Problem nicht, setzt aber voraus, dass beide Seiten der Verbindungen über Routen verfügen, die ihnen den Weg ins entfernte LAN via OpenVPN zeigen. Ich weiss das klingt erstmal kompliziert, aber so ist es sauber und die Übertragung ist gut geschützt. Grundsätzlich geht es, ich mach es genau so :)
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat