Bio: syslogd und Sockets und Perl

Beitrag lesen

Sup!

Aus Paranoia wollte ich an meinen Server einen Log-Server per serielle Schnittstelle anbinden, der unangreifbar mitloggt was passiert, so daß böse böse Hacker die Logs zumindest nicht löschen können.

Nun kann der syslogd angeblich mit syslogd -p dazu überredet werden, seine Log-Messages an einen angegebenen Socket zu schicken.
Ich will aber die Nachrichten lieber an /dev/ttyS0 - und das ist kein Socket, sondern ein Character-Device.
Nun habe ich ein Perl-Skript geschrieben, daß einen Socket kreiert... das sollte dann die Daten empfangen und an das Device umleiten. Dummerweise kann ich den syslogd nicht überreden, sich an den Socket zu verbinden.

Also, als "Socket" benutze ich diese Skript hier:

#!/usr/bin/perl -w

use Socket;

socket(SOCK, PF_UNIX, SOCK_STREAM, 0) or die "$!";
unlink('/tmp/usock');
$sun = sockaddr_un('/tmp/usock');
bind (SOCK,$sun);
listen (SOCK,SOMAXCONN) or die "$!";
print "listening\n";
accept (CLIENT,SOCK);
print "Connected!\n";
while($input = <CLIENT>)
{
print $input;
}
Den syslogd starte ich mit /sbin/syslogd -p /tmp/usock

funzt aber nicht :-((

Was mache ich bloss mal wieder falsch? Ich weiss doch sonst immer alles ;-) *scnr*

Gruesse,

Bio