SlÀpp av paketfiltret nftables 0.9.3

Publicerad utgivning av paketfilter nftables 0.9.3, som utvecklas som ett alternativ till iptables, ip6tables, arptables och ebtables genom att enhetliggöra pakethanteringsgrÀnssnitten för IPv4, IPv6, ARP och nÀtverksbroar. I paketet nftables ingÄr komponenter för pakethantering som arbetar i anvÀndarutrymmet, medan kÀrnnivÄns arbete tillhandahÄlls av nf_tables-subsystemet, som ingÄr i Linux-kÀrnan sedan version 3.13. NödvÀndiga Àndringar för nftables 0.9.3 Àr inkluderade i den kommande kÀrnversionen 5.5.

I kÀrnnivÄn tillhandahÄlls bara ett allmÀnt grÀnssnitt som inte Àr beroende av ett specifikt protokoll och som erbjuder grundlÀggande funktioner för att extrahera data frÄn paket, utföra operationer med data och hantera flöden. SjÀlva filtreringslogiken och protokollspecifika bearbetare kompileras till bytekod i anvÀndarrummet, vilken laddas i kÀrnan via Netlink-grÀnssnittet och körs i en speciell virtuell maskin som pÄminner om BPF (Berkeley Packet Filters). Denna metod möjliggör en betydande minskning av kodstorleken för filtrering som körs pÄ kÀrnnivÄ och flyttar alla funktioner för regelanalys och protokollhantering till anvÀndarrummet.

Huvudsakliga nyheter:

  • Stöd för tidsbaserad paketmatchning. Det gĂ„r att definiera bĂ„de tidsintervall och datum nĂ€r regeln ska aktiveras, samt justera aktiveringen för specifika veckodagar. En ny option "-T" har ocksĂ„ lagts till för att visa epoch-tid i sekunder.

    meta time \»2019-12-24 16:00\» — \»2020-01-02 7:00\»
    meta hour \»17:00\» — \»19:00\»
    meta day \»Fre\»

  • Stöd för Ă„terstĂ€llning och bevarande av SELinux-etiketter (secmark).

    ct secmark set meta secmark
    meta secmark set ct secmark

  • Stöd för map-listor synproxy, vilket möjliggör att definiera mer Ă€n en regel för backend.

    table ip foo {
    synproxy https-synproxy {
    mss 1460
    wscale 7
    timestamp sack-perm
    }

    synproxy other-synproxy {
    mss 1460
    wscale 5
    }

    chain pre {
    typ filter hook prerouting prioritet raw; policy accept;
    tcp dport 8888 tcp flags syn notrack
    }

    chain bar {
    typ filter hook forward prioritet filter; policy accept;
    ct state invalid,untracked synproxy name ip saddr map { 192.168.1.0/24 : «https-synproxy», 192.168.2.0/24 : «other-synproxy» }
    }
    }

  • Möjlighet att dynamiskt ta bort element frĂ„n set-grupper i pakethanteringsregler.

    nft add rule 
 delete @set5 { ip6 saddr . ip6 daddr }

  • Stöd för att matcha VLAN enligt identifierare och protokoll, definierade i metadata för nĂ€tverksbron;

    meta ibrpvid 100
    meta ibrvproto vlan

  • Optionen "-t" ("—terse") för att exkludera element frĂ„n set-grupper vid visning av regler. NĂ€r "nft -t list ruleset" körs kommer följande att skrivas ut:

    table ip x {
    set y {
    type ipv4_addr
    }
    }

    Och vid "nft list ruleset"

    table ip x {
    set y {
    type ipv4_addr
    elements = { 192.168.10.2, 192.168.20.1,
    192.168.4.4, 192.168.2.34 }
    }
    }

  • Möjlighet att ange mer Ă€n en enhet i netdev-kedjor (fungerar endast med kĂ€rna 5.5) för att kombinera typiska filtreringsregler.

    add table netdev x
    add chain netdev x y { \
    type filter hook ingress devices = { eth0, eth1 } priority 0;
    }

  • Möjlighet att lĂ€gga till beskrivningar av datatyper.

    # nft describe ipv4_addr
    datatype ipv4_addr (IPv4-adress) (basetype integer), 32 bitar

  • Möjlighet att bygga CLI-grĂ€nssnittet med linenoise-biblioteket istĂ€llet för libreadline.

    ./configure —with-cli=linenoise

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster