2016-06-08 10 views
0

In meiner App muss ich den externen Zugriff auf Port 8383 beschränken. Es sollte nur Verbindungen von localhost erhalten. Ich erreichte dies erfolgreich durch:Wie Zugriff auf nur bestimmte URL von IP-Tabellen zu ermöglichen

8383 Stellen Sie sicher, Hafen von localhost erreichbar ist

iptables -A INPUT -p tcp --dport 8383 -s 127.0.0.0/8 -j

Port Stellen Sie sicher, ACCEPT 8383 ist Behinderte für den externen Zugriff

iptables -A INPUT -p --dport 8383 tcp -j

REJECT

jedoch die App unter Port läuft 8383 geclustert werden muss. Er gruppierte sich selbst, indem er eine POST-Anfrage an: 8383/default/cluster sandte.

Gibt es eine Möglichkeit, den externen Zugriff auf 8383 zu deaktivieren, aber nur für Anfragen, die "/ default/cluster" im Anfrage-URI enthalten?

Antwort

1

IPTables können es nicht von der Box aus tun. Der Grund dafür ist, dass IPTables auf L3-4 (Netzwerk- und Transport-Layer) arbeiten und nicht in die Paketnutzlast hineinschauen. Aber es gibt mehrere Erweiterungen, die "Deep Packet Inspection" durchführen können.

Damit es funktioniert, wie Sie mindestens benötigen:

  • korrekt konfiguriert Kernel (Netfilter Connection Tracking Unterstützung)
  • Deep Packet Inspection-Tool (NDPI zum Beispiel)
  • Modul für IPtables, die Linux verbindet Filter- und Deep Packet Inspection-Funktionalität.
Verwandte Themen