nftables پيڪٽ فلٽر 0.9.5 رليز

شايع ٿيل پيڪيٽ فلٽر ڇڏڻ nftables 0.9.5iptables، ip6table، arptables ۽ ebtables جي متبادل طور ترقي ڪندي IPv4، IPv6، ARP ۽ نيٽ ورڪ پل لاءِ پيڪٽ فلٽرنگ انٽرفيسز کي متحد ڪري. nftables پيڪيج ۾ پيڪيٽ فلٽر اجزاء شامل آهن جيڪي صارف جي جاء تي هلن ٿا، جڏهن ته ڪنيبل سطح جو ڪم nf_tables سب سسٽم پاران مهيا ڪيل آهي، جيڪو 3.13 جي ڇڏڻ کان وٺي لينڪس ڪنييل جو حصو آهي. ڪم ڪرڻ لاءِ nftables 0.9.5 ڇڏڻ لاءِ گهربل تبديليون ڪرنل ۾ شامل آھن لينڪس 5.7.

ڪرنل ليول صرف هڪ عام پروٽوڪول-آزاد انٽرفيس مهيا ڪري ٿو جيڪو پيڪن مان ڊيٽا ڪڍڻ، ڊيٽا آپريشنز ڪرڻ، ۽ وهڪري ڪنٽرول ڪرڻ لاءِ بنيادي ڪم مهيا ڪري ٿو. فلٽرنگ جا ضابطا ۽ پروٽوڪول مخصوص هينڊلر يوزر اسپيس ۾ بائيٽ ڪوڊ ۾ مرتب ڪيا ويندا آهن، جنهن کان پوءِ هي بائيٽ ڪوڊ نيٽ لنڪ انٽرفيس استعمال ڪندي ڪرنل ۾ لوڊ ڪيو ويندو آهي ۽ بي پي ايف (برڪلي پيڪٽ فلٽر) جي ياد ڏياريندڙ هڪ خاص ورچوئل مشين ۾ ڪرنل ۾ لڳايو ويندو آهي. اهو طريقو توهان کي اجازت ڏئي ٿو ته فلٽرنگ ڪوڊ جي سائيز کي خاص طور تي گھٽائڻ جي سطح تي هلندڙ فلٽرنگ ڪوڊ ۽ سڀني ڪمن کي منتقل ڪرڻ جي ضابطن ۽ منطق کي پروٽوڪولن سان ڪم ڪرڻ لاء يوزر اسپيس ۾.

مکيه جدت:

  • سيٽ عناصر سان لاڳاپيل پيڪٽ ۽ ٽرئفڪ ڳڻپيندڙن لاءِ سپورٽ سيٽن ۾ شامل ڪئي وئي آھي. ڳڻپيندڙ "ڪائونٽر" لفظ استعمال ڪندي فعال ڪيا ويا آهن:

    ٽيبل ip x {
    سيٽ ڪريو y {
    ip saddr جو قسم
    مقابلو
    عناصر = { 192.168.10.35، 192.168.10.101، 192.168.10.135 }
    }

    زنجير ز {
    ٽائيپ فلٽر ٿلهو ٻاھرين ترجيحي فلٽر؛ پاليسي قبول؛
    ip daddr @y
    }
    }

  • ڳڻپيوڪر جي شروعاتي قيمتن کي سيٽ ڪرڻ لاء، مثال طور، ٻيهر شروع ڪرڻ کان پوء پوئين ڳڻپيندڙن کي بحال ڪرڻ لاء، توھان استعمال ڪري سگھو ٿا حڪم "nft -f":

    # cat ruleset.nft
    ٽيبل ip x {
    سيٽ ڪريو y {
    ip saddr جو قسم
    مقابلو
    عناصر = {192.168.10.35 انسداد پيڪٽس 1 بائيٽ 84، 192.168.10.101 \
    ڪائونٽر پي 192.168.10.135 ڪائونٽر پيڪٽس 0 بائيٽ 0 }
    }

    زنجير ز {
    ٽائيپ فلٽر ٿلهو ٻاھرين ترجيحي فلٽر؛ پاليسي قبول؛
    ip daddr @y
    }
    }
    # nft -f ruleset.nft
    #nft لسٽ جو ضابطو
    ٽيبل ip x {
    سيٽ ڪريو y {
    ip saddr جو قسم
    مقابلو
    عناصر = {192.168.10.35 انسداد پيڪٽس 1 بائيٽ 84، 192.168.10.101 \
    ڪائونٽر پي 192.168.10.135 ڪائونٽر پيڪٽس 0 بائيٽ 0 }
    }

    زنجير ز {
    ٽائيپ فلٽر ٿلهو ٻاھرين ترجيحي فلٽر؛ پاليسي قبول؛
    ip daddr @y
    }
    }

  • ڪائونٽر سپورٽ پڻ شامل ڪئي وئي آهي flowtable ۾:

    ٽيبل ip foo {
    فلو ٽيبل بار {
    ٿلهو داخل ڪرڻ جي ترجيح -100
    ڊوائيسز = {eth0, eth1 }
    مقابلو
    }

    زنجير اڳتي {
    ٽائيپ فلٽر ٿلهو اڳتي وڌو ترجيحي فلٽر؛
    وهڪري شامل ڪريو @bar counter
    }
    }

    توهان "conntrack -L" حڪم استعمال ڪندي ڳڻپيندڙن جي فهرست ڏسي سگهو ٿا:

    tcp 6 src=192.168.10.2 dst=10.0.1.2 sport=47278 dport=5201 packets=9 bytes=608 \
    src=10.0.1.2 dst=10.0.1.1 sport=5201 dport=47278 packets=8 bytes=428 [OFFLOAD] نشان=0 \
    secctx=null use=2 tcp 6 src=192.168.10.2 dst=10.0.1.2 sport=47280 dport=5201 \
    packets=1005763 bytes=44075714753 src=10.0.1.2 dst=10.0.1.1 sport=5201 dport=47280 \
    packets=967505 bytes=50310268 [OFFLOAD] نشان=0 secctx=null use=2

  • ڪنٽينشن سيٽن ۾ (ڪنڪيٽينشن، ايڊريس جا ڪجهه بنڊل ۽ بندرگاهن جيڪي مقابلي کي آسان بڻائين ٿا)، اهو ممڪن آهي ته استعمال ڪيو وڃي ”قسم جو“ هدايت، جيڪو سيٽ جي عنصرن جي جزن لاءِ عنصرن جي ڊيٽا جي قسم جو تعين ڪري ٿو:

    ٽيبل ip foo {
    وائيٽ لسٽ مقرر ڪريو {
    ip saddr جو قسم. tcp dport
    عناصر = { 192.168.10.35 . 80، 192.168.10.101. 80}
    }

    زنجير بار {
    قسم فلٽر ٿلهو prerouting ترجيحي فلٽر؛ پاليسي جي کوٽ؛
    آئي پي ڊيڊر. tcp dport @whitelist قبول ڪريو
    }
    }

  • ھاڻي ھاڻي ھاڻي ھدايت جو قسم نقشي جي لسٽن ۾ شامل ٿيڻ تي لاڳو ٿئي ٿو:

    ٽيبل ip foo {
    نقشو addr2mark {
    ip saddr جو قسم. tcp dport: ميٽا نشان
    عناصر = { 192.168.10.35 . 80 : 0x00000001،
    192.168.10.135. 80 : 0x00000002 }
    }

    زنجير بار {
    قسم فلٽر ٿلهو prerouting ترجيحي فلٽر؛ پاليسي جي کوٽ؛
    ميٽا مارڪ سيٽ ip daddr. tcp dport map @addr2mark قبول ڪريو
    }
    }

  • شامل ڪيل سپورٽ رينج جي شامل ٿيڻ لاءِ گمنام (غير نامياري) سيٽ:

    # nft ضابطو شامل ڪريو انٽ فلٽر ان پٽ ip daddr. tcp dport\
    { 10.0.0.0/8 . 10-23، 192.168.1.1-192.168.3.8. 80-443 } قبول ڪريو

  • 802.1q (VLAN) جھنڊن سان پيڪيٽ کي رد ڪرڻ جي صلاحيت جڏھن پروسيسنگ نيٽ ورڪ پل مهيا ڪئي وئي آھي:

    # nft شامل ڪريو قاعدو پل foo bar ether type vlan reject سان tcp ري سيٽ

  • TCP سيشن جي سڃاڻپ ڪندڙ (conntrack ID) پاران ملائڻ لاءِ مدد شامل ڪئي وئي. conntrack ID جو تعين ڪرڻ لاءِ، توھان استعمال ڪري سگھو ٿا ”--output id“ اختيار:

    # conntrack -L -آئوٽ پٽ id
    udp 17 18 src=192.168.2.118 dst=192.168.2.1 sport=36424 dport=53 packets=2 \
    bytes=122 src=192.168.2.1 dst=192.168.2.118 sport=53 dport=36424 packets=2 bytes=320 \
    [اطمينان سان] نشان = 0 استعمال = 1 id = 2779986232

    # nft ضابطو شامل ڪريو foo bar ct id 2779986232 counter

جو ذريعو: opennet.ru

تبصرو شامل ڪريو