PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : firewall tarnen



MrIch
04.11.02, 11:11
Hallo!

Ich möchte gerne dass man nicht sieht, dass auf meinem Server eine Firewall läuft, es soll einfach so aussehen, als ob auf dem entsprechenden Port kein Service läuft.

Was für einen Typ muss ich dem reject dafür geben?

#### aus der manpage zu iptables ######
--reject-with type
The type given can be icmp-net-unreachable, icmp-host-unreachable, icmp-port-unreachable, icmp-proto-unreach_able, icmp-net-prohibitedor icmp-host-prohibited, which return the appropriate ICMP error message (port-unreachable is the default). The option echo-reply is also allowed; it can only be used for rules which spec_ify an ICMP ping packet, and generates a ping reply. Finally, the option tcp-reset can be used on rules which only match the TCP protocol: this causes a TCP RST packet to be sent back. This is mainly useful for blocking ident probes which frequently occur when sending mail to broken mail hosts (which won't accept your mail other_ wise).

bernie
04.11.02, 12:03
Hi,

Die Manpage sagt port-unreachable, wäre auch meine Meinung.

Ciao, Bernie

Jinto
04.11.02, 17:49
tcp-reset, sollte das gewünschte Ergebnis liefern.

HTH

MrIch
04.11.02, 18:20
naja mir wäre eine Entscheidung schon wichtig, was verursacht das selbe Ergebniss als wenn der Dienst nicht vorhanden wäre?

Harry
04.11.02, 18:43
Für das Transportprotokoll TCP bietet sich an:
... -j REJECT --reject-with tcp-reset

Das erzeugt ein ACK,RST beim Empfänger und es stellt im Allgemeinen dieselbe Reaktion dar, die ein IP-Stack erzeugt, wenn der Port nicht geöffnet ist.

Harry

Jinto
04.11.02, 18:47
menno Harry. Ich habe mir jetzt hier 5x den Kopfzerbrochen was ich ihm schreib.

für UDP gilt das was Bernie sagte.

PS: MrIch, das hättest du doch einfach ausprobieren können :D

Harry
04.11.02, 19:30
Original geschrieben von Jinto
menno Harry. Ich habe mir jetzt hier 5x den Kopfzerbrochen was ich ihm schreib.

für UDP gilt das was Bernie sagte.
Jo stimmt vollkommen :D

Aber: Was passiert eigentlich bei ICMP, d.h. der IP-Stack reagiert nicht auf ICMP? Ok, ist absolut ungewöhnlich, weil in dem Falle der IP-Stack 'ne Macke hätte, jedoch sind in unterschiedlichen ICMP-Implementationen auch unterschiedliche Features enthalten.

Ich denke mir gerade, dass ein Host beispielsweise ein ICMP-Timestamp-Request sendet, jedoch auf dem IP-Stack des Empfängerhosts vergessen wurde ;) diese Feature zu behandeln. Wie würde der Host darauf reagieren? Mit ICMP-protocol-unreachable?

Die Frage zielt darauf ab, wie ich im speziellen einen ICMP-Timestamp-Request über den Paketfilter möglichst unerkannt behandele.

Harry

Jinto
04.11.02, 20:52
Ich denke mir gerade, dass ein Host beispielsweise ein ICMP-Timestamp-Request sendet, jedoch auf dem IP-Stack des Empfängerhosts vergessen wurde diese Feature zu behandeln.
Naja, manche IP-Stack implementierungen _sind_ unvollständig (z. B. alle Windows-IP-Stacks bis Windows XP).

Wie würde der Host darauf reagieren? Mit ICMP-protocol-unreachable?
Also ich habe dazu gerade mal in der RFC 792 nachgelesen, wenn ich das richtig interpretiere lautet die Antwort: gar nicht.

Grund dafür:
The ICMP messages typically report errors in the processing of datagrams. To avoid the infinite regress of messages about messages etc., no ICMP messages are sent about ICMP messages.

Harry
04.11.02, 21:06
Ahja ... ok. Sonst könnte man wohl auch recht einfach einen ICMP-Loop auslösen.
Na dann muss ich halt für nicht-gewünschte ICMP-Meldungen einfach DROPpen :)

Harry

Jinto
04.11.02, 21:10
Sieht so aus :)