ipfw: Logging und Freigabe bestimmter Ports

From: Roland Jesse <jesse(at)mail.CS.Uni-Magdeburg.De>
Date: 06 Jul 2000 17:35:15 +0200

Hei,

irgendeinen Denkfehler habe ich bei meinem Setup des ipfw. Es soll
eigentlich alles erlaubt sein, lediglich icmp-Verbindungen von einem
bestimmten Rechner nicht. Das Unterdrücken dieser icmp-Verbindungen
klappt erfolgreich, nur komme ich jetzt selbst mit der ssh nicht mehr
auf die Kiste. Das ist suboptimal. :)

Also wollte ich Log-Dateien analysieren, was aber schlecht geht, da
kaum etwas drin steht.

Der Reihe nach:

* Kernel-Konfig:

options IPFIREWALL #firewall
options IPFIREWALL_VERBOSE #print information about
                                        # dropped packets
options IPFIREWALL_VERBOSE_LIMIT=20 #limit verbosity
options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default
options IPDIVERT #divert sockets

* sysctl -A | grep net.inet.ip.fw
net.inet.ip.fw.enable: 1
net.inet.ip.fw.one_pass: 1
net.inet.ip.fw.debug: 1
net.inet.ip.fw.verbose: 1
net.inet.ip.fw.verbose_limit: 20
net.inet.ip.fw.dyn_buckets: 256
net.inet.ip.fw.curr_dyn_buckets: 256
net.inet.ip.fw.dyn_count: 0
net.inet.ip.fw.dyn_max: 1000
net.inet.ip.fw.dyn_ack_lifetime: 300
net.inet.ip.fw.dyn_syn_lifetime: 20
net.inet.ip.fw.dyn_fin_lifetime: 20
net.inet.ip.fw.dyn_rst_lifetime: 5
net.inet.ip.fw.dyn_short_lifetime: 5

Das "Verbose Limit" ist somit offenbar richtig gesetzt und Meldungen
zu 20 erfolglosen Paketen sollten geloggt werden, wenn ich von einer
anderen Kiste mit ssh (egal welcher) versuche, mich einzuloggen. Die
entsprechenden Regeln in /etc/rc.firewall dafür:

        ${fwcmd} add pass log tcp from any to ${ip} 22
        ${fwcmd} add pass log udp from any to ${ip} 22

${ip} ist auf die IP des zu schützenden Rechners gesetzt. Der
_gesamte_ Inhalt von /var/log/ipfw.today:

00200 0 0 deny log logamount 20 ip from any to 127.0.0.0/8
00900 135 6204 deny log logamount 20 tcp from any to any setup
01400 1530 127890 deny log logamount 20 ip from 141.44.2.1 to 141.44.27.36

Die Kiste "141.44.2.1" ist mittels

        ${fwcmd} add deny log all from 141.44.2.1 to ${ip}

geblockt.

Mein eigentliches Problem jetzt: Warum ist Port 22 (ssh) gesperrt
(jeder Verbindungsversuch "timed out"), obwohl
IPFIREWALL_DEFAULT_TO_ACCEPT gesetzt ist *und* obendrein die obige
"add pass ... 22" Regel greifen sollte?

Ich sehe es gerade nicht? Hinweise werden dankend entgegengenommen.

        Roland

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Thu 06 Jul 2000 - 17:36:04 CEST

search this site