Нфтаблес Туториал

Nftables Tutorial



Овај водич објашњава како да радите са Нфтаблес Линук заштитним зидом. Овај садржај је оптимизован и за искусне и нове кориснике Линук-а.

Нфтаблес је компонента Линук кернела која пружа функције заштитног зида. То је замена за Иптаблес.







Након што прочитате овај водич, разумећете правила Нфтаблес-а и моћи ћете да креирате свој заштитни зид. Не треба вам претходно знање о Иптаблес-у.



Сви примери у овом водичу садрже снимке екрана, што олакшава свим корисницима Линук-а, независно од њиховог нивоа знања, да их разумеју и имплементирају.



Почетак рада са Нфтаблес-ом

Пре него што почнете, креирајте и отворите датотеку помоћу уређивача текста као што је нано или ви да бисте почели да куцате своја прва Нфтаблес правила на основу следећег примера. Немојте копирати-пејст; откуцај све.





нано фиревалл.нфт

Пример у овом туторијалу је прилично једноставан и показује рестриктивни заштитни зид у којем се испушта сав ИПв4 саобраћај осим повратне петље и одређених портова.



На претходном снимку екрана, користио сам први ред да дефинишем своју локалну мрежу (192.168.0.0/16) као ЛинукХинтНет.

дефинише ЛинукХинтНет = 192.168.0.0 / 16

У другом реду дефинишем групу портова (80,443 и 22). Ову групу називам АлловПортс јер планирам да дозволим саобраћај кроз њих. АлловПортс је произвољно име.

дефинишете АлловПортс   = { 80 , 443 , 53 , 22 }

Затим, додајем табелу, која је контејнер или група ланаца и правила; оба су објашњена у наставку. Табеле помажу да се организују правила и ланци. Назвао сам табелу у примеру „Рестриктивна“ јер садржи рестриктивну политику, а њено име је произвољно.

ИП пре имена табеле указује да ће правила табеле куе бити примењена само на ИПв4 саобраћај. Можете да користите инет уместо ИП да бисте применили правила на ИПв4 и ИПв6 протоколе. Или можете заменити ИП са ип6 само за ИПв6.

Запамтите, Рестриктивно је име које сам произвољно дефинисао. Можете именовати табелу како желите.

У мом случају примењујем правила само на ИПв4, као што је приказано у наставку.

додати табелу ип Рестриктивно

За оба протокола користите следеће:

додати табелу инет Ограничавајући

Затим додајемо први основни ланац, који сам произвољно назвао Долазни јер је повезан са долазним саобраћајем. Међутим, можете га именовати како желите.

Следећи основни ланац подразумевано испушта сав долазни саобраћај:

  • адд цхаин ип Рестрицтиве Инцоминг: Овај одељак додаје рестриктивни долазни ланац који се примењује на ИПв4
  • филтер типа: Ово дефинише тип ланца као филтер јер ће филтрирати саобраћај. Други могући типови ланаца су рута или НАТ
  • хоок инпут: Односи се на долазне пакете
  • приоритет 0: Приоритет основног ланца дефинише редослед основних ланаца
  • испуштање политике: Политика испуштања, подразумевано, одбацује све пакете
Додајте ланац ип Рестрицтиве Инцоминг { тип Приоритет уноса куке филтера 0 ; пад политике; }

Као што можете видети на следећем снимку екрана, направио сам још два основна ланца слична претходном, Рестрицтиве Редирецт и Рестрицтиве Оутгоинг. Разлика је дефинисана кука за сваку (кука напред и хоок излаз). Њихово објашњавање се понавља.

Након три основна ланца, можемо да наставимо са правилима Нфтаблес-а да бисмо дозволили повратни саобраћај.

Додао сам следеће редове за долазни и одлазни саобраћај на лоопбацк интерфејсу.

додати правило ип Рестриктивни долазни иифнаме ло цоунтер аццепт

додати правило ип Ограничено долазно оифнаме ло цоунтер аццепт

Сада додајем четири правила која прихватају одлазни и долазни ТЦП и УДП саобраћај кроз све портове укључене у променљиву $АлловПортс дефинисану на почетку датотеке.

додати правило ип Рестриктивни долазни тцп спорт $АлловПортс бројач прихвати

додати правило ип Ограничавајући одлазни тцп дпорт $АлловПортс бројач прихвати

додати правило ип Рестриктивни Долазни удп спорт $АлловПортс бројач прихвати

додати правило ип Рестриктивни одлазни удп дпорт $АлловПортс бројач прихвати

Комплетан сценарио можете видети испод.

Када завршите са уносом табела, ланаца и правила, затворите документ и сачувајте промене.

# У прва два реда дефинишем своју локалну мрежу (ЛинукХинтНет) и скуп портова (80,
#443,22) да бисте омогућили саобраћај кроз њих у правилима у наставку.
дефинише ЛинукХинтНет = 192.168.0.0 / 16
дефинишете АлловПортс   = { 80 , 443 , 53 , 22 }
#Проглашавам нову табелу која ће садржати ланце и правила. Ову табелу називам „Рестрикциона“.
#„ип“ примењује правила само на ИПв4. За ИПв6 користите само 'ип6' и користите 'инет' за оба протокола.
додати табелу ип Рестриктивно
# Након креирања табеле, креирам три ланца, долазни, преусмерени и одлазни,
#Њихова имена су произвољна. Сви они подразумевано искључују долазни, одлазни и прослеђени саобраћај.
додати ланац ип Рестрицтиве Инцоминг { тип Приоритет уноса куке филтера 0 ; пад политике; }
додати ланац ип Рестриктивно преусмеравање { тип филтер кука унапред приоритет 0 ; пад политике; }
додати ланац ип Рестрицтиве Оутгоинг { тип Приоритет излаза куке филтера 0 ; пад политике; }
# Примењујем два правила да бих дозволио саобраћај са повратном петљом.
додати правило ип Ограничено долазно иифнаме ло цоунтер аццепт
додати правило ип Ограничено долазно оифнаме ло цоунтер аццепт
# Примењујем правила да дозволим саобраћај кроз портове дефинисане у променљивој АлловПортс.
додати правило ип Рестриктивни долазни тцп спорт $АлловПортс бројач прихвати
додати правило ип Ограничавајући одлазни тцп дпорт $АлловПортс бројач прихвати
додати правило ип Рестриктивни Долазни удп спорт $АлловПортс бројач прихвати

додати правило ип Рестриктивни одлазни удп дпорт $АлловПортс бројач прихвати

Да бисте активирали заштитни зид, покрените следећу команду:

судо нфт фиревалл.нфт

Своја правила можете проверити тако што ћете покренути следећу команду:

судо нфт листа правила

То је основни рестриктивни заштитни зид.

Закључак:

Као што видите, Нфтаблес је много љубазнији од Иптаблеса, а корисници могу научити Нфтаблес брже од Иптаблеса. Пошто је Иптаблес укинут, а многе дистрибуције користе Нфтаблес као подразумевани заштитни зид, укључујући Дебиан. Иптаблес искусни корисници ће можда желети да погледају алатку Иптаблес-нфтаблес-цомпат, која преводи Иптаблес у Нфтаблес. Ово им може помоћи да разумеју разлике.

Професионални корисници попут системских администратора имају тенденцију да наставе да раде са Иптаблес-ом; избегавајте игнорисање Нфтаблес-а да бисте уштедели време уз побољшање филтрирања. Надам се да је овај чланак био довољно једноставан да вас убеди да испробате Нфтаблес.