hi
wie kann ich bestimmte Ports vom Loggen ausschließen ?
MFG
xmarvel
hi
wie kann ich bestimmte Ports vom Loggen ausschließen ?
MFG
xmarvel
! Portnummer
sollte funktionieren
btw. Arbeitest Du mit multiports?
@ linuxhanz
kannst du mal ein Beispiel machen ?
und ich arbeite ohne multiports
klar!
geklaut aus der CT:
Code:iptables -N meineserver_tcp iptables -A meineserver_tcp -p tcp --tcp-flags ALL SYN -j LOG iptables -A meineserver_tcp -p tcp -j ACCEPT #bei vollem betrieb iptables -A INPUT -m multiport -p tcp --dport 21,25,1000,80,110,113,137,138,139,389,443,3128,20011 -j meineserver_tcp ## paranoia #iptables -A INPUT -m multiport -p tcp --dport 1000,80,20011 -j meineserver_tcp iptables -A meineserver_tcp -p tcp -j LOG iptables -N meineserver_udp iptables -A meineserver_udp -p udp -j LOG iptables -A meineserver_udp -p udp -j ACCEPT iptables -A INPUT -m multiport -p udp --dport 123,3130,3401,4827 -j meineserver_udp Eine Regel aus einem IPCHAINS Skript mit ! : $IPC -A output -i $EXT -s !$LOCALIP -j REJECT
Geändert von linuxhanz (28.02.03 um 15:53 Uhr)
ähm ich seh nichts wo er einzelne Ports ausschließt
@xmarvel
es gibt mehrere möglichkeiten
iptables -A MY_REJECT -p tcp --dport ! 4662 -j LOG --log-prefix "REJECT TCP "
mit ! 4662 gibst du z.b. an, das alles was tcp ist, gelogt werden soll, ausgenommen hierbei port 4662. der nachteil hierbei, du kannst nicht multiport nutzen. es ist also nur ein port möglich
in meinem script hab ich(besser gesagt Jinto) es etwas anders gelöst
hier ein auszug
#--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
# DROP & LOG CHAIN
#--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
# MY_LOG
#_______________
$ipt -N MY_LOG
$ipt -A MY_LOG -p tcp -m limit --limit 7200/h -j LOG --log-prefix "REJECT TCP "
$ipt -A MY_LOG -p udp -m limit --limit 7200/h -j LOG --log-prefix "REJECT UDP "
$ipt -A MY_LOG -p icmp -m limit --limit 7200/h -j LOG --log-prefix "DROP ICMP "
# MY_REJECT-Chain
# MY_REJECT fuellen
#------------------------
$ipt -N MY_REJECT
$ipt -A MY_REJECT -p tcp -j REJECT --reject-with tcp-reset
$ipt -A MY_REJECT -p udp -j REJECT --reject-with icmp-port-unreachable
$ipt -A MY_REJECT -p icmp -j DROP
$ipt -A MY_REJECT -m limit --limit 7200/h -j LOG --log-prefix "REJECT OTHER "
$ipt -A MY_REJECT -j REJECT --reject-with icmp-proto-unreachable
# MY_LOGREJECT
#------------------------
$ipt -N MY_LOGREJECT
$ipt -A MY_LOGREJECT -j MY_LOG
$ipt -A MY_LOGREJECT -j MY_REJECT
# vom loggen ausschließen
#------------------------------
$ipt -A INPUT -p TCP --dport 4661:4665 -j MY_REJECT # edonkey Anfragen vom Logging ausschliessen
$ipt -A INPUT -p UDP --dport 4665 -j MY_REJECT # edonkey Anfragen vom Logging ausschliessen
$ipt -A INPUT -p UDP --dport 137 -j MY_REJECT # Netbios nicht loggen
$ipt -A INPUT -p UDP --dport 1214 -j MY_REJECT # Kazaa nicht loggen
$ipt -A INPUT -p TCP --dport 1214 -j MY_REJECT # Kazaa nicht loggen
$ipt -A INPUT -p UDP --dport 6970 -j MY_REJECT # udp vom realplayer nicht loggen
Gruß HL
"You only go around once, so you better go hard!"
Open Source!
"First they ignore you, then they laugh at you, then they fight you, then you win".
@HangLoose
da im Script auch noch andere Sachen drin hast. Versuch ich mal das rauszunehmen was gebraucht wird
So würde er 4000 und 23 nicht mitloggen (wenn nicht dann habe ich das falsch verstanden) ?Code:iptables -N OWN_LOG iptables -A OWN_LOG -j LOG --log-prefix="unbekanntes Paket: " iptables -A INPUT -i ppp0 --dport 4000 -j OWN_LOG iptables -A INPUT -i ppp0 --dport 23 -j OWN_LOG
Und noch eine Frage nach deiner (und meiner) Reihenfolge würde er doch zuerst alles loggen da ja die Regel:
vor den nicht mitgeloggten Ports kommtCode:iptables -A OWN_LOG -j LOG --log-prefix="unbekanntes Paket: "
hi
so würde er nur anfragen an die beiden ports loggen. wenn du sie auschließen willst, mußt du sie mit einem ! negieren.So würde er 4000 und 23 nicht mitloggen (wenn nicht dann habe ich das falsch verstanden) ?
iptables -A INPUT -i ppp0 --dport !4000 -j OWN_LOG
mit dieser zeile, besser gesagt mit den beidenUnd noch eine Frage nach deiner (und meiner) Reihenfolge würde er doch zuerst alles loggen da ja die Regel:
iptables -N OWN_LOG
iptables -A OWN_LOG -j LOG --log-prefix="unbekanntes Paket: "
*erzeugst* du eine userdefinierte regelkette, da wird noch nichts gelogt. erst mit der folgenden zeile
iptables -A INPUT -i ppp0 --dport 4000 -j OWN_LOG
wenn in der inputchain ein paket mit dport 4000 eintrifft, *schicke* dieses an die userdef. regelkette OWN_LOG (-j OWN_LOG). in der wird dann entschieden, was damit passieren soll. mämlich loggen mit prefix "unbekanntes paket"
Gruß HL
"You only go around once, so you better go hard!"
Open Source!
"First they ignore you, then they laugh at you, then they fight you, then you win".
bei deinem Script ist doch auch nichts negiert ? Dann schließt das bei dir doch auch nichts aus
und wenn ich den ersten Port negiere. Dann würde doch die zweite Regel nicht zutreffen da ja dann schon die erste Regel zutrifft.
Ausser man macht es mit multiports
bei mir wird das ganze ja auch an die regelkette MY_REJECT geschicktbei deinem Script ist doch auch nichts negiert ? Dann schließt das bei dir doch auch nichts aus
$ipt -A INPUT -p TCP --dport 4661:4665 -j MY_REJECT
und in dieser kette wird nichts gelogt, sondern nur ein reject-with tcp-reset geschickt.
$ipt -A MY_REJECT -p tcp -j REJECT --reject-with tcp-reset
da hast du recht, man müßte mit multiport arbeiten und genau das haut nicht hin. zumindest ging es bei mir nicht.und wenn ich den ersten Port negiere. Dann würde doch die zweite Regel nicht zutreffen da ja dann schon die erste Regel zutrifft.
Gruß HL
"You only go around once, so you better go hard!"
Open Source!
"First they ignore you, then they laugh at you, then they fight you, then you win".
und warum steht bei dir unten Kazza nicht loggen, Netbios nicht loggen etc. ?und in dieser kette wird nichts gelogt, sondern nur ein reject-with tcp-reset geschickt.
bleiben wir mal bei kazaaund warum steht bei dir unten Kazza nicht loggen, Netbios nicht loggen etc.
$ipt -A INPUT -p TCP --dport 1214 -j MY_REJECT
-j MY_REJECT bedeutet, das diese pakete an die regelkette MY_REJECT geschickt werden sollen, wenn es sich um tcp pakete mit zielport 1214 handelt. das heißt diese pakete werden an diese regel *geschickt*
$ipt -A MY_REJECT -p tcp -j REJECT --reject-with tcp-reset
das -j REJECT in dieser regel verhält sich fast so wie ein DROP. mit einem unterschied, das paket wird *fallengelassen* und es wird eine fehlernachricht an den sender geschickt. in diesem fall ein tcp-reset.
wenn ich jetzt bei der kazaa regel das target(ziel) ändern würde
$ipt -A INPUT -p TCP --dport 1214 -j MY_REJECT
in
$ipt -A INPUT -p TCP --dport 1214 -j MY_LOG
dann würde das paket an diese regel *geschickt* werden
$ipt -A MY_LOG -p tcp -m limit --limit 7200/h -j LOG --log-prefix "REJECT TCP "
und damit auch in den logfiles auftauchen, siehe -j LOG
Gruß HL
"You only go around once, so you better go hard!"
Open Source!
"First they ignore you, then they laugh at you, then they fight you, then you win".
ach jetzt verstehe ich weil du expliziert einige Ports gesperrt hast werden die natürlich nicht geloggt da sie schon davor eine Regel antrafen die sie sperrt.
Ich glaub jetzt habe ich es verstanden.
Danke für deine ausführliche Erklärung
MFG
xmarvel
Ich mache das in einer kleinen Schleife.
Am Anfang des Scripts gibt es z.B. fuer tcp
und unten in den Regeln dannCode:TCP_PORTS="4662 1000 58 https ssh"
Das ganze auch noch fuer udp.Code:for R1 in $TCP_PORTS; do iptables ...... --dport $R1 ........ done
Finde ich einfach flexibler, man muss nicht so viel rumschreiben
T;o)Mes
P.S.: und bitte nicht fragen, warum gerade diese Ports. Das sind nur Beispiele
Geändert von tomes (02.03.03 um 16:10 Uhr)
You are registered as user #279055 with the Linux Counter
************************************************
Man(n oder Frau) muss nicht alles wissen,
Man(n oder Frau) muss nur wissen wo es steht !
************************************************
www.sandtom.net
@tomes
mit solchen *shellscript raffinessen* kann ich leider nicht dienen.
ps:warum sperrst du denn https?
Gruß HL
"You only go around once, so you better go hard!"
Open Source!
"First they ignore you, then they laugh at you, then they fight you, then you win".
Lesezeichen