OpenBSD: tcpd und authlog

  • Themenstarter Themenstarter Rushjo
  • Beginndatum Beginndatum
R

Rushjo

Guest
Hi,

ich habe da mal eine Frage zu "tcpd" (tcp wrapper daemon" und dem von Ihm erzeugten Einträgen in der "/var/log/authlog" (OpenBSD, na eigentlich logisch). Ich habe dort die ganze File voll die folgenden Zeilen zu stehen:

Jul 9 00:00:01 test tcpd[10307]: connect from 192.168.10.100
Jul 9 00:00:01 test tcpd[14134]: connect from 192.168.10.100
Jul 9 00:00:01 test tcpd[10307]: connect from 192.168.10.100
Jul 9 00:00:02 test tcpd[14134]: connect from 192.168.10.100
Jul 9 00:00:02 test tcpd[10307]: connect from 192.168.10.100
Jul 9 00:00:02 test tcpd[14134]: connect from 192.168.10.100
Jul 9 00:00:02 test tcpd[10307]: connect from 192.168.10.100

Dabei dient der "tcpd" ja zu Verwaltung von Services, die man so anbietet, was eigentlich bei mir nur:

Auszug aus inetd.conf
ident stream tcp nowait _identd /usr/libexec/identd identd -el
ident stream tcp6 nowait _identd /usr/libexec/identd identd -el
127.0.0.1:comsat dgram udp wait root /usr/libexec/comsat comsat
[::1]:comsat dgram udp6 wait root /usr/libexec/comsat comsat
daytime stream tcp6 nowait root internal
time stream tcp nowait root internal
time stream tcp6 nowait root internal
glftpd stream tcp nowait root /usr/libexec/tcpd /home/ftpuser/glftpd
Okay, so weit, so gut. Nun zu meinen Fragen:

1. Bringt es aus sicherheitstechnischen Standpunkt Pluspunkte "ident", "comsat", "daytime" und "time" noch zu deaktivieren?
2. Scheinbar stammen ja die Einträge von tcpd, der die Verbindung des ftp-servers "glftpd" ermöglicht. Wie gewöhne ich "tcpd" die ständigen Einträge ab???

Thx rushjo
 
Original von Rushjo
1. Bringt es aus sicherheitstechnischen Standpunkt Pluspunkte "ident", "comsat", "daytime" und "time" noch zu deaktivieren?

Wenn Du sie nicht brauchst, solltest Du sie eh ausmachen. Ob's nun sicherheitstechnisch was bringt... who knows, kennst ja OpenBSD.

Original von Rushjo
2. Scheinbar stammen ja die Einträge von tcpd, der die Verbindung des ftp-servers "glftpd" ermöglicht. Wie gewöhne ich "tcpd" die ständigen Einträge ab???

Gar nicht. Du musst in /etc/syslog.conf auth.info nach /dev/null schicken, dann ist Ruhe.

Cheers, Ray
 
Dann werden aber Zugriffsversuche über "ssh" auch nicht mehr geloggt, oder? Habe gerade mal die Zeile in der "syslog.conf" geändert und nun steht bei fehlerhaften "ssh" Logins nicht mehr in der "authlog".

rushjo
 
Ich hab' die neuen Versionen vom tcpd nicht gecheckt, bei den alten Versionen wurde die syslog-facility im Sourcecode festgelegt. Das heisst, du kannst z.B. den tcpd neu kompilieren und dabei eine der local facilities benutzen oder in der SSH-Konfiguration eine local facility benutzen, die dann explizit nur SSH-Sachen loggt. Ersteres wäre wahrscheinlich sauberer, zweiteres schneller. Vielleicht gibt's auch eine Möglichkeit, die facility, die vom tcpd benutzt wird, anderweitig zu ändern, aber ich kannte bisher keine.

Cheers, Ray
 
Hi Rushjo

Ich gehe mal von 3.7 aus.

Ich verstehe deine syslog ausgabe nicht ganz.

Jul 9 00:00:01 test tcpd[10307]: connect from 192.168.10.100

Hier sollte test dein hostname sein und anstatt von tcpd solle eigentlich der Name des service stehen. Also glftp in diesem Fall.

Zu der Änderung

- sourcen nach /7sr/src laden und entpacken

in /usr/src/libexec/tcpd/tcpd/tcpd.c
nach "syslog" suchen. Die genaue Zeile müsste sein:

syslog(allow_severity, "connect from %s", eval_client(&request));

Da packst Du einfach ein strcmp mit dem gewünschten service rein. ZB.

if (!strcmp(argv[0], "sshd"))
{
syslog(allow_severity, "connect from %s", eval_client(&request));
}


Mein code an der Stelle:

if (strcmp(argv[0], "sshd"))
{
syslog(allow_severity, "connect from %s", eval_client(&request));
}
syslog(allow_severity," Test argv[0] %s", argv[0]); /* nur zum testen */


$ftp localhost

tail -f /var/log/authlog
Jul 10 00:57:37 icebear pure-ftpd[23700]: connect from localhost.icebear.org
Jul 10 00:57:37 icebear pure-ftpd[23700]: Test argv[0] pure-ftpd

..........

$ssh localhost

tail -f /var/log/authlog
Jul 10 00:58:57 icebear sshd[19008]: Test argv[0] sshd



Statt sshd nimmste halt was Du brauchts. Und es wird lediglich die connect message übergangen.

mfg
 
Zurück
Oben