нфтаблес пакетни филтер 0.9.4 издање

објављено ослобађање пакетног филтера нфтаблес 0.9.4, који се развија као замена за иптаблес, ип6табле, арптаблес и ебтаблес обједињавањем интерфејса за филтрирање пакета за ИПв4, ИПв6, АРП и мрежне мостове. Пакет нфтаблес укључује компоненте филтера пакета које се покрећу у корисничком простору, док рад на нивоу кернела обезбеђује подсистем нф_таблес, који је део Линук кернела од издања 3.13. Промене неопходне да би верзија нфтаблес 0.9.4 радила укључене су у будућу грану кернела Линук КСНУМКС.

Ниво кернела обезбеђује само генерички интерфејс независан од протокола који обезбеђује основне функције за издвајање података из пакета, извођење операција са подацима и контролу тока. Правила филтрирања и руковаоци специфични за протокол се компајлирају у бајткод у корисничком простору, након чега се овај бајт код учитава у кернел помоћу Нетлинк интерфејса и извршава у кернелу у специјалној виртуелној машини која подсећа на БПФ (Беркелеи Пацкет Филтерс). Овај приступ вам омогућава да значајно смањите величину кода за филтрирање који ради на нивоу кернела и преместите све функције рашчлањивања правила и логике за рад са протоколима у кориснички простор.

Главне иновације:

  • Подршка за опсеге у везама (конкатенација, одређени скупови адреса и портова који поједностављују поређење). На пример, за скуп „беле листе“ чији су елементи прилог, навођење ознаке „интервал“ ће указати на то да скуп може укључивати опсеге у прилогу (за прилог „ипв4_аддр . ипв4_аддр . инет_сервице“ раније је било могуће навести тачно подударања облика "192.168.10.35. 192.68.11.123", а сада можете одредити групе адреса "80-192.168.10.35-192.168.10.40"):

    табле ип фоо {
    постави белу листу {
    укуцајте ипв4_аддр. ипв4_аддр. инет_сервице
    флагс интервал
    елементи = { 192.168.10.35-192.168.10.40 . 192.68.11.123-192.168.11.125. 80}
    }

    ланчана шипка {
    тип филтер кука за унапред усмеравање филтер приоритета; пад политике;
    ип саддр. ип даддр. тцп дпорт @вхителист прихвати
    }
    }

  • У скуповима и листама мапа, могуће је користити директиву “типеоф”, која одређује формат елемента приликом упаривања.
    На пример:

    табле ип фоо {
    постави белу листу {
    типеоф ип саддр
    елементи = { 192.168.10.35, 192.168.10.101, 192.168.10.135 }
    }

    ланчана шипка {
    тип филтер кука за унапред усмеравање филтер приоритета; пад политике;
    ип даддр @вхителист прихватити
    }
    }

    табле ип фоо {
    мап аддр2марк {
    типеоф ип саддр : мета ознака
    елементи = { 192.168.10.35 : 0к00000001, 192.168.10.135 : 0к00000002 }
    }
    }

  • Додата је могућност коришћења спојева у НАТ везама, што вам омогућава да наведете адресу и порт када дефинишете НАТ трансформације на основу листа мапа или именованих скупова:

    нфт адд правило ип нат пре днат ип аддр. порт на ип саддр мапу {1.1.1.1:2.2.2.2. тридесет }

    нфт адд мап ип нат дестинације { типе ипв4_аддр . инет_сервице: ипв4_аддр. инет_сервице \\; }
    нфт адд руле ип нат пре днат ип аддр. порт на ип саддр. тцп дпорт мапа @дестинатионс

  • Подршка за хардверско убрзање са неким операцијама филтрирања које обавља мрежна картица. Убрзање је омогућено преко етхтоол услужног програма („етхтоол -К етх0 хв-тц-оффлоад он“), након чега се активира у нфтаблес за главни ланац помоћу ознаке „оффлоад“. Када се користи Линук кернел 5.6, подржано је хардверско убрзање за подударање поља заглавља и инспекцију долазног интерфејса у комбинацији са пријемом, одбацивањем, дуплирањем (дуп) и прослеђивањем (фвд) пакета. У примеру испод, операције испуштања пакета који долазе са адресе 192.168.30.20 се изводе на нивоу мрежне картице, без прослеђивања пакета кернелу:

    # цат филе.нфт
    табела нетдев к {
    ланац и {
    тип филтер кука улазни уређај етх0 приоритет 10; флагс оффлоад;
    ип саддр 192.168.30.20 дроп
    }
    }
    # нфт -ф филе.нфт

  • Побољшане информације о локацији грешке у правилима.

    # нфт брисање правила ип из ручица 7
    Грешка: Није могуће обрадити правило: Нема такве датотеке или директоријума
    брисање правила ип из ручица 7
    ^

    # нфт брисање правила ип кк ручка 7
    Грешка: Није могуће обрадити правило: Нема такве датотеке или директоријума
    брисање правила ип кк ручке 7
    ^

    # нфт брисање табеле твст
    Грешка: нема такве датотеке или директоријума; да ли сте мислили табела а€˜тест' у породичном ИП-у?
    избрисати табелу твст
    ^^^^

    Први пример показује да табела „и” није у систему, други да недостаје руковалац „7”, а трећи да се при куцању имена табеле приказује промпт за грешку.

  • Додата подршка за проверу славе интерфејса навођењем „мета сдиф“ или „мета сдифнаме“:

    ... мета сдифнаме врф1 ...

  • Додата подршка за десну или леву смену. На пример, да померите постојећу ознаку пакета улево за 1 бит и поставите мањи бит на 1:

    … мета ознака постављена мета ознака лсхифт 1 или 0к1 …

  • Имплементирана опција "-В" за приказ проширених информација о верзији.

    # нфт -В
    нфтаблес в0.9.4 (Јиве ат Фиве)
    цли:реадлине
    јсон: да
    минигмп:не
    либктаблес: да

  • Опције командне линије сада морају бити специфициране пре команди. На пример, потребно је да наведете „нфт -а скуп правила листе“, а покретање „нфт лист рулесет -а“ ће довести до грешке.

    Извор: опеннет.ру

Додај коментар