iptables mport-Modul nicht gefunden

iptables mport-Modul nicht gefunden

Ich ersetze einen drahtlosen Router/eine Firewall mit Tomato durch einen Debian-Server und war begeistert, als ich die iptables-Konfiguration von Tomato gefunden habe, sodass ichdirekt auf den neuen Server importieren(meine Frage davor). Die iptables-Konfigurationsdatei (unten) von Tomato schlägt iptables-restoreunter Debian fehl:

# iptables-restore < iptables.eth0-eth1
iptables-restore v1.4.14: Couldn't load match `mport':No such file or directory

Error occurred at line: 7
Try `iptables-restore -h' or 'iptables-restore --help' for more information.

Gibt es eine Möglichkeit, mport in „moderne“ iptables zu bekommen?
Oder könnten Sie mir bitte beim Übersetzen mporthelfen multiport?

Das Googeln iptables mportwar ziemlich mühsam, aber schließlich fand ichjemand beschwert sich, dass der Port weg istund einMultiport-Tutorialmit einem flüchtigen Hinweis auf die mport-Erweiterung, die dazu führte, dass ich in den Dateisystemen der beiden Boxen nach Modulen herumschnüffelte und auch jedes „Firewall“-Tool von Debian ausprobierte, in der Hoffnung, dass auf magische Weise eines dabei wäre mport. Ich gebe zu, dass ich von der Benutzeroberfläche von Tomato ziemlich verwöhnt bin – jedes Debian-Paket, das ich seitdem ausprobiert habe, hat mich immer verwirrter zurückgelassen (GUI oder CLI). Wenn ich den Server dazu bringen könnte, alles kurzzeitig zu routen, masonkönnte es meiner Meinung nach funktionieren. Kein Wunder, dass alle iptables hassen.

Ich habe mehr Zeit damit verbracht, die Fehler herauszufinden, als ich sollte. Hätte ich so viel Zeit damit verbracht, zu verstehen , hätte ich die Regeln iptableswahrscheinlich in übersetzen können . Außerdem habe ich überlegt, ob ich bei SuperUser posten soll, aber die wenigen mit iptables markierten Fragen waren nicht so gut wie die, die ich hier bei ServerFault lese.mportmultiport


Suche nach Modulen:
Ich habe mich per SSH mit der Firmware beim WLAN-Router angemeldet und das Modul in tomatogefunden . Im Verzeichnis steht aber kein , nur .libipt_mport.so/usr/lib/iptables/lib/modules/2.4.20/kernel/net/ipv4/netfilterlibipt_mport.soipt_multiport.o

Auf der Debian-Box (Neuinstallation von Wheezy) habe ich updatedbund verwendet locate, um nach (nach dem MASQUERADE-Objekt) zu suchen MASQund habe festgestellt, dass das Verzeichnis
/lib/modules/3.2.0-4-amd64/kernel/net/ipv4/netfiltereine gute Auswahl an iptable_*und nf_nat_* koDateien enthält. Die Suche hat auch libxt_multiport.soin gefunden /lib/xtables, aber es gibt keinen Verweis auf Objektmodule für mport.

Gibt es darüber hinaus noch weitere Probleme unten? Ich sehe das Zeug auf Ebene 7 und habe das Gefühl, dass dies als Nächstes zu weiteren Komplikationen führen wird.


Konfigurationsdatei von Tomato:
Hinweise:
» 99.1.81.209 ist die WAN-IP
» 10.0.0.2 ist die IP für diese Debian-Firewall
» 10.0.0.20 ist ein Server
» Die öffentliche Schnittstelle von Tomato vlan0wurde geändert in eth0
» Die interne Schnittstelle von Tomato br0wurde geändert in eth1
» Die Ports 5060:5090 sind für VoIP (wahrscheinlich wird dieser Bereich nicht benötigt?)

*mangle
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:QOSO - [0:0]
-A QOSO -j CONNMARK --restore-mark --mask 0xff
-A QOSO -m connmark ! --mark 0/0xff00 -j RETURN
-A QOSO -p tcp -m mport --dports 80,443   -m bcount --range 0x0-0x7ffff -j CONNMARK --set-return 0x2/0xFF
-A QOSO -p tcp -m mport --dports 80,443   -m bcount --range 0x80000 -j CONNMARK --set-return 0x4/0xFF
-A QOSO -p udp --dport 53   -m bcount --range 0x0-0x7ff -j CONNMARK --set-return 0x1/0xFF
-A QOSO -p tcp --dport 53   -m bcount --range 0x0-0x7ff -j CONNMARK --set-return 0x1/0xFF
-A QOSO -p udp --dport 53   -m bcount --range 0x800 -j CONNMARK --set-return 0x5/0xFF
-A QOSO -p tcp --dport 53   -m bcount --range 0x800 -j CONNMARK --set-return 0x5/0xFF
-A QOSO -p udp --dport 1024:65535   -j CONNMARK --set-return 0x5/0xFF
-A QOSO -p tcp --dport 1024:65535   -j CONNMARK --set-return 0x5/0xFF
-A QOSO -p udp -m mport --ports 5060:5090  -m layer7 --l7dir /etc/l7-protocols --l7proto sip -j CONNMARK --set-return 0x101/0xFF
-I QOSO -j BCOUNT
-A QOSO -j CONNMARK --set-return 0x4
-A FORWARD -o eth0 -j QOSO
-A OUTPUT -o eth0 -j QOSO
COMMIT
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -i eth0 -d 10.0.0.2/255.255.255.0 -j DROP
-A PREROUTING -p icmp -d 99.1.81.209 -j DNAT --to-destination 10.0.0.2
-A PREROUTING  -p tcp -m tcp -d 99.1.81.209 --dport 22 -j DNAT --to-destination 10.0.0.2:22
-A PREROUTING -p tcp  -d 99.1.81.209 --dport 10022 -j DNAT --to-destination 10.0.0.20:22
-A POSTROUTING -p tcp --dport 22 -s 10.0.0.2/255.255.255.0 -d 10.0.0.20 -j SNAT --to-source 99.1.81.209
:upnp - [0:0]
-A PREROUTING -d 99.1.81.209 -j upnp
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
:INPUT DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i eth1 -d 99.1.81.209 -j DROP
-A INPUT -m state --state INVALID -j DROP
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-N shlimit
-A shlimit -m recent --set --name shlimit
-A shlimit -m recent --update --hitcount 3 --seconds 60 --name shlimit -j DROP
-A INPUT -p tcp --dport 22 -m state --state NEW -j shlimit
-A INPUT -i eth1 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp  -m tcp -d 10.0.0.2 --dport 22 -j ACCEPT
:FORWARD DROP [0:0]
-A FORWARD -i eth1 -o eth1 -j ACCEPT
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1461: -j TCPMSS --set-mss 1460
:L7in - [0:0]
-A FORWARD -i eth0 -j L7in
-A L7in -m layer7 --l7dir /etc/l7-protocols --l7proto sip -j RETURN
:wanin - [0:0]
:wanout - [0:0]
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -j wanin
-A FORWARD -o eth0 -j wanout
-A FORWARD -i eth1 -j ACCEPT
:upnp - [0:0]
-A FORWARD -i eth0 -j upnp
-A wanin  -p tcp -m tcp -d 10.0.0.20 --dport 22 -j ACCEPT
COMMIT

Antwort1

Soweit ich weiß, sind die Parameter für das multiportModul identisch mit den Parametern für das mportvon Ihnen angezeigte Modul.

Versuchen Sie eine einfache Suchen-und-Ersetzen-Funktion:

s/-m mport/-m multiport/g

PS: Sicherlich nichtallehasst iptables; ich persönlichLIEBEiptables ;-)

verwandte Informationen