Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
NFtables-IPtables-integration-script — Skript zur Implementierung von Q-Feeds direkt auf NFtables oder IPtables | Kitploit
Tools/GitHubGitHub/q-feeds/nftables-iptables-integration-script
DefensivwerkzeugeScripting & AutomatisierungKonfigurationsprüfungNetzwerksicherheitBedrohungsanalyseIncident Response
GitHubq-feeds/nftables-iptables-integration-script

NFtables-IPtables-integration-script

Skript zur Implementierung von Q-Feeds direkt auf NFtables oder IPtables

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Repository anzeigenWebseite
26vor 9 TagenNoch nicht geprüft
Teilen

🛡️ Q-Feeds Linux Firewall Blocklist-Integration

Automatisierte Malware-IP-Blocklist für Linux-Server — unterstützt nftables und iptables+ipset

License Linux


📋 Inhaltsverzeichnis

  • Schnellstart
  • Überblick
  • Funktionsweise
  • Voraussetzungen
  • Detaillierte Installation
  • Konfiguration
  • Verwendung und Überprüfung
  • Fehlerbehebung
  • Deinstallation
  • Lizenz

🚀 Schnellstart

Schritt 1: API-Token erhalten

Holen Sie sich einen kostenlosen API-Schlüssel unter tip.qfeeds.com.

Schritt 2: Skripte herunterladen

git clone https://github.com/Q-Feeds/NFtables-IPtables-integration-script.git
cd NFtables-IPtables-integration-script
chmod +x qfeeds-installer.sh qfeeds-uninstaller.sh

Schritt 3: Installer als root ausführen

sudo ./qfeeds-installer.sh

Der Installer wird:

  1. Automatisch erkennen Sie Ihr Firewall-Backend (nftables oder iptables)
  2. Sie nach Ihrem API-Token, Blockierungsoptionen und optionaler Whitelist fragen
  3. Alle Abhängigkeiten, das Updater-Skript und den Cron-Job installieren
  4. Sofort die erste vollständige Synchronisierung durchführen

Schritt 4: Fertig

Ihr Server ist jetzt geschützt. Der Cron-Job prüft alle 20 Minuten (konfigurierbar) auf Aktualisierungen, und tatsächliche API-Aufrufe erfolgen nur, wenn Ihre Lizenz dies erlaubt.


📖 Übersicht

Diese Lösung lädt regelmäßig den neuesten Threat-Intelligence-Feed von Q-Feeds herunter und wendet ihn als Firewall-Regeln an (Schritt-für-Schritt-Anleitung: NFtables/IPtables setup), wodurch Sie:

  • ✅ Eingehende Verbindungen blockieren von bekannten bösartigen IPs
  • ✅ Ausgehende Verbindungen blockieren zu bekannten bösartigen IPs
  • ✅ Ihre eigenen IPs/CIDRs auf die Whitelist setzen, damit Sie sich nie selbst aussperren
  • ✅ Automatische Planung basierend auf Ihrer Q-Feeds-Lizenz
  • ✅ Inkrementelle Aktualisierungen über diff-basierte Synchronisierung für minimalen Ressourcenverbrauch

Warum dieser Ansatz?

  • ✅ Erkennt Backend automatisch — funktioniert mit nftables oder iptables+ipset ohne manuelle Auswahl
  • ✅ Schnell — lädt 400k+ IPs in Sekunden mithilfe optimierter Hash-Sets (nftables) oder ipset (iptables)
  • ✅ Sicher — verwendet dedizierte Tabellen/Sets — berührt niemals Ihre bestehenden Firewall-Regeln
  • ✅ Effizient — diff-basierte Aktualisierungen verarbeiten nur Änderungen, nicht die vollständige Liste
  • ✅ Zuverlässig — selbstheilend: erkennt ein leeres oder unvollständiges lokales Set (z. B. nach einem Neustart) und baut es neu auf, mit automatischem Fallback auf eine vollständige Synchronisierung, falls ein Diff fehlschlägt
  • ✅ Flexibel — wählen Sie eingehende/ausgehende Blockierung, optionale Whitelist

🔧 Funktionsweise

Backend-Erkennung

Der Installer erkennt automatisch, welches Firewall-Backend verfügbar ist:

PrioritätErkennungBackend
1.nft-Befehl gefundennftables
2.iptables-Befehl gefundeniptables+ipset
—Keines gefundenFehler (Beenden)

Das erkannte Backend wird in der Konfigurationsdatei gespeichert. Die Updater- und Deinstallationsskripte verwenden es, um die korrekten Firewall-Befehle auszuführen.

Architektur: Zwei Set-Typen

Beide Backends verwenden dieselbe Split-Set-Strategie für maximale Leistung:

nftables-Backend:

┌─────────────────────────────────────────────────────────┐
│  table ip qfeeds                                        │
│                                                         │
│  ┌─────────────────────────┐  ┌───────────────────────┐ │
│  │ qfeeds_blacklist_v4     │  │ qfeeds_blacklist_v4   │ │
│  │ (hash set)              │  │ _nets (interval set)  │ │
│  │                         │  │                       │ │
│  │ Individual IPs          │  │ CIDR ranges           │ │
│  │ ~99% of entries         │  │ ~1% of entries        │ │
│  │ O(1) lookup & insert    │  │ O(log n) lookup       │ │
│  └─────────────────────────┘  └───────────────────────┘ │
│                                                         │
│  ┌─────────────────────────┐                            │
│  │ qfeeds_whitelist_v4     │                            │
│  │ (interval set)          │                            │
│  │ Your allowed IPs/CIDRs  │                            │
│  └─────────────────────────┘                            │
│                                                         │
│  chain input-chain (hook input, priority 0, accept)     │
│    → ip saddr @qfeeds_whitelist_v4 accept               │
│    → ip saddr @qfeeds_blacklist_v4 drop                 │
│    → ip saddr @qfeeds_blacklist_v4_nets drop            │
│                                                         │
│  chain output-chain (if enabled)                        │
│    → ip daddr @qfeeds_whitelist_v4 accept               │
│    → ip daddr @qfeeds_blacklist_v4 drop                 │
│    → ip daddr @qfeeds_blacklist_v4_nets drop            │
└─────────────────────────────────────────────────────────┘

iptables+ipset-Backend:

┌──────────────────────────────────────────────────────────┐
│  ipset sets                                              │
│                                                          │
│  ┌─────────────────────────┐  ┌────────────────────────┐ │
│  │ qfeeds_blacklist_v4     │  │ qfeeds_blacklist_v4    │ │
│  │ (hash:ip)               │  │ _nets (hash:net)       │ │
│  │ maxelem 1000000         │  │ maxelem 65536          │ │
│  │                         │  │                        │ │
│  │ Individual IPs          │  │ CIDR ranges            │ │
│  └─────────────────────────┘  └────────────────────────┘ │
│                                                          │
│  ┌─────────────────────────┐                             │
│  │ qfeeds_whitelist_v4     │                             │
│  │ (hash:net)              │                             │
│  └─────────────────────────┘                             │
│                                                          │
│  iptables: INPUT/OUTPUT jump to a dedicated chain        │
│  (jump rule tagged -m comment "qfeeds"):                 │
│                                                          │
│  chain QFEEDS_INPUT (rebuilt each run, in order):        │
│    -m set --match-set whitelist_v4 src -j ACCEPT         │
│    -m set --match-set blacklist_v4 src -j DROP           │
│    -m set --match-set blacklist_v4_nets src -j DROP      │
│    (QFEEDS_OUTPUT mirrors this with dst, if enabled)     │
└──────────────────────────────────────────────────────────┘

Die gleiche Struktur existiert für IPv6 (ip6 qfeeds-Tabelle oder ip6tables + family inet6-IPsets).

Warum zwei Set-Typen?

  • Hash-Sets speichern einzelne IPs mit O(1)-Einfügen und -Nachschlagen — das Laden von über 400k IPs dauert Sekunden
  • Net/Interval-Sets werden nur für die kleine Anzahl von CIDR-Bereichen im Feed verwendet
  • Dies vermeidet teure Merge-Operationen, die ein einzelnes Set mit Hunderttausenden von Einträgen verlangsamen würden

Aktualisierungsablauf

Tool herunterladen