Khasan
Khasan
  • Видео 15
  • Просмотров 114 511
bash часть 5 (функции, скрипты на базе функции)
Функция Bash, по сути, представляет собой набор команд, которые могут быть вызваны множество раз. Цель функции - сделать ваши скрипты Bash более читабельными и избежать повторного написания одного и того же кода. По сравнению с большинством языков программирования, функции Bash несколько ограничены.
В этом уроке мы рассмотрим основы функций Bash и посмотрим, как их использовать в ваших оболочковых скриптах. Напишем пару полезных скриптов.
Просмотров: 99

Видео

bash часть4 (полезные скрипты, Массивы Bash)
Просмотров 146День назад
* В предыдущих материалах мы обсуждали циклические и условные операторы bash-скриптов, говорили о полезных инструментах, но до сих пор рассматривали лишь небольшие фрагменты кода. На данном уроке мы напишем пару полезных скриптов. А именно, два примера. - Первый - скрипт для чтения содержимого файла, - Второй- скрипт, выводящий список файлов в заданном каталоге. они будут полезными для написани...
bash часть3 (Операторы цикла while until for)
Просмотров 120День назад
Поскольку Bash является языком командной строки, мы получаем довольно богатый набор функций, которые позволяют использовать программистские навыки для выполнения задач в терминале. Мы можем использовать циклы и условные операторы в сценариях Bash, чтобы выполнять некоторые повторяющиеся и сложные задачи простым программным способом. В этом уроке мы сосредоточимся на циклах while и for в сценари...
bash часть2 (if/then - case)
Просмотров 242День назад
bash часть2 (if/then - case) Операторы условия позволяют нам принимать решения в наших Bash-сценариях. Они позволяют нам решать, запускать или не запускать фрагмент кода, основываясь на условиях, которые мы можем задавать. Операторы условия, в сочетании с циклами (которые мы рассмотрим в следующем разделе), позволяют нам создавать гораздо более сложные сценарии, которые могут решать более крупн...
bash часть1 (Вводная)
Просмотров 704День назад
Основы Bash: синтаксис, переменные и команды
nftables [ ЧАСТЬ 3 ] | межсетевой экран a.k.a. firewall
Просмотров 2,6 тыс.2 года назад
nftables - межсетевой экран, проект netfilter, разработанный для замены существующего фреймворка {ip,ip6,arp,eb}tables. Предоставляет новую систему фильтрации пакетов, пользовательскую утилиту ntf которую буду рассматривать в этом ролике Тематика достаточно большая и в некоторых моментах требует глубоких знаний сети от пользователя, в данном руководстве я постарался собрать простые команды для ...
nftables [ ЧАСТЬ 2 ] | межсетевой экран a.k.a. firewall (ссылка на док в описании)
Просмотров 3 тыс.2 года назад
Команды можно посмотреть по ссылки: @k_hasan-sintaksis-nft nftables - межсетевой экран, проект netfilter, разработанный для замены существующего фреймворка {ip,ip6,arp,eb}tables. Предоставляет новую систему фильтрации пакетов, пользовательскую утилиту ntf которую буду рассматривать в этом ролике Тематика достаточно большая и в некоторых моментах требует глубоких знаний сети от пользовате...
nftables [ ЧАСТЬ 1 ] | межсетевой экран a.k.a. firewall (ссылка на док в описании)
Просмотров 10 тыс.2 года назад
Команды можно посмотреть по ссылки: @k_hasan-sintaksis-nft nftables - межсетевой экран, проект netfilter, разработанный для замены существующего фреймворка {ip,ip6,arp,eb}tables. Предоставляет новую систему фильтрации пакетов, пользовательскую утилиту ntf которую буду рассматривать в этом ролике Тематика достаточно большая и в некоторых моментах требует глубоких знаний сети от пользовате...
Управление и настройка сети в Linux с помощью утилиты nmcli (ссылка на док в описании)
Просмотров 1,7 тыс.2 года назад
Команды можно посмотреть по ссылке: @k_hasan-konfiguraciya-setevyh-interfeisov Вы можете использовать различные инструменты для настройки сетевых подключений, как графических так и консольно командных, графические удобны своей простотой, а командные удобны тем что их можно использовать в различных сценариях, в этом видео вы познакомитесь с консольной утилитой nmcli (Network Manager Comma...
Управление службами Linux
Просмотров 1,1 тыс.2 года назад
В современных дистрибутивах Linux (начиная с Debian 8, Ubuntu 16.04, CentOS 7) в качестве системы инициализации используется Systemd. Systemd запускается при старте сервера (после загрузки ядра) и инициализирует службы, необходимые для работы сервера и системы. Systemd содержит инструмент systemctl, который позволяет пользователю управлять работой служб в фоне: запускать и останавливать их, про...
Обновления ядра debian 11 путем компилирования
Просмотров 3,3 тыс.2 года назад
Большинство дистрибутивов Linux основаны на предопределенном ядре. Но если вы хотите отключить несколько параметров и драйверов или попробовать экспериментальные исправления, вам необходимо скомпилировать ядро Linux. В этом видео ролике вы узнаете, как обновить ядро с помощью компилирования ядра Linux на основе дистрибутива Debian 11 Видео ролик создан в качестве учебного пособия для студентов ...
обновления ядра debian 10 путем компилирования
Просмотров 5732 года назад
Большинство дистрибутивов Linux основаны на предопределенном ядре. Но если вы хотите отключить несколько параметров и драйверов или попробовать экспериментальные исправления, вам необходимо скомпилировать ядро Linux. В этом видео ролике вы узнаете, как собрать и скомпилировать ядро Linux с нуля на основе дистрибутива Debian 10 Видео ролик создан в качестве учебного пособия для студентов учебног...
Малайзия, фонтан в Куала Лумпуре
Просмотров 3058 лет назад
Малайзия, фонтан в Куала Лумпуре
Агрегирование каналов или EtherChannel
Просмотров 9 тыс.9 лет назад
технология, которая позволяет объединить несколько физических каналов в один логический
деление IP адресов на подсети
Просмотров 82 тыс.10 лет назад
Деление IP адресов на подсети

Комментарии

  • @user-ed1hy3by5p
    @user-ed1hy3by5p 11 дней назад

    Bash с человеческим лицом!

  • @msvsound6597
    @msvsound6597 11 дней назад

    Отличный урок!

  • @user-od9wi4dg5i
    @user-od9wi4dg5i 28 дней назад

    При открытии портов в input "tcp dport {80, 8080} counter accept" получается что мы эти порты всем открываем и они без настройки prerouting будут доступны

  • @mansur_sw07
    @mansur_sw07 Месяц назад

    А можно менять айпи на VPS где купил на другую?

  • @UralBashkiria
    @UralBashkiria 3 месяца назад

    Наконец-то понял так, что смогу объяснить другому! Спасибо автору!

  • @dennweiss4080
    @dennweiss4080 4 месяца назад

    а ещё можно параллельную компиляцию. То есть добавить к make deb-pkg ключ -j (количество ядер +1). Если этого не сделать, сборка идёт в 1 поток и занимает уйму времени. Так например на процессоре с 4мя ядрами делаем make deb-pkg -j5 . Процессор не простаивает и мы не теряем время. Если в /dev/shm достаточно места, то можно и там собирать, ещё быстрее будет. :) . Ну это когда у вас от 32гб озу минимум. Фокус с ключом -j работает практически везде где есть команда make.

  • @goshagotye
    @goshagotye 4 месяца назад

    Хасан, спасибо большое, прекрасное видео, продолжай в том же духе) надеюсь выпустишь курс по линукс)

    • @KhasanKarabayev
      @KhasanKarabayev 4 месяца назад

      Уже выпустил )

    • @KhasanKarabayev
      @KhasanKarabayev 4 месяца назад

      academy.it-bilim.uz/ru/

    • @goshagotye
      @goshagotye 4 месяца назад

      @@KhasanKarabayev отлично, вот только цен на сайте нет )

    • @goshagotye
      @goshagotye 4 месяца назад

      @@KhasanKarabayev еще нет возможности оставить заявку из РФ, не позволяет шаблонизация инпута телефона

    • @goshagotye
      @goshagotye 4 месяца назад

      @@KhasanKarabayev в чатике никто не отвечает

  • @lexrus2037
    @lexrus2037 6 месяцев назад

    Огромное спасибо!!! 2024 год, но до сих пор статей про nftables кот наплакал.

  • @sergeyzolin7297
    @sergeyzolin7297 8 месяцев назад

    Здравствуйте. То что вы показали с файлом это не работает и ломает полностью nftables. Потом просто пишет консоль nft нет такой команды. И в 2023 Debian 12 этот скрипт как вы показали не работает .

    • @KhasanKarabayev
      @KhasanKarabayev 8 месяцев назад

      Добрый день, скорей всего где то вы ошиблись

    • @sergeyzolin7297
      @sergeyzolin7297 8 месяцев назад

      нет я не ошибся просто перед командой приходится ставить /sbin/@@KhasanKarabayev

    • @KhasanKarabayev
      @KhasanKarabayev 8 месяцев назад

      Значит с местоположение ошиблись

  • @AntiSmithhh
    @AntiSmithhh 9 месяцев назад

    а почему сразу не отредактировать файл nft.conf ? чисто в образовательных целях?

    • @KhasanKarabayev
      @KhasanKarabayev 9 месяцев назад

      Черевато последствиями, опасно

    • @AntiSmithhh
      @AntiSmithhh 9 месяцев назад

      @@KhasanKarabayev хоть какую-то конкретику можно: в чем? как? пример может какой-то прям единичный хотя бы. ясно, что это не просто так, но вот не ясно в чем именно подвох. спасибо.

    • @AntiSmithhh
      @AntiSmithhh 9 месяцев назад

      @@KhasanKarabayev скрипт, который формирует в итоге таблицу командами, вполне однозначно вроде предопределяет итоговый результат в конфиге. тот же результат, только формат подачи другой, который фактически все равно транслируется и потом сохраняется в конфиге.. и грузится потом из конфига.

    • @KhasanKarabayev
      @KhasanKarabayev 9 месяцев назад

      Например если случайно ошибетесь в конфиге и сохраните при этом случайно заблокировав себе же доступ по ssh, то разблокировать можно только через рабочий стол (зайдя через интерактивный режим), удаленно через ssh востановить не сможете

    • @AntiSmithhh
      @AntiSmithhh 9 месяцев назад

      @@KhasanKarabayev это понятно. в этом плане скрипт лучше тольк тем, что не сохраняет конфигурацию после рестарта. для всяких VDS и тд это не важно, т.к. там рестарт делается через панель управления, как собственно и интерактивный доступ. а вот кусок железа даже дома тольк с кнопкой рестарт либо полный сброс - это да.. будет неприятно. но я думал, что что-то может еще другого плана. но и на этом спасибо.

  • @user-em7zt1kr3u
    @user-em7zt1kr3u Год назад

    За подробность спасибо!

  • @kuzmich85
    @kuzmich85 Год назад

    Добрый день. Подскажите как переключать получение dns адресов? (Автоматический или ручкой) Явно задаю DNS, смотрю текущие DNS и вижу что днс адреса провайдера. Если посмотреть в GUI то там в настройках установлено "получить автоматически". СПАСИБО

  • @yarik6468
    @yarik6468 Год назад

    Молодец парнишка! А наи убунту nmcli присутствует?

    • @KhasanKarabayev
      @KhasanKarabayev Год назад

      В убунту по дефолту netplan, но можно его заменить на NetworkManager

    • @yarik6468
      @yarik6468 Год назад

      @@KhasanKarabayev спасибо за ответ. У Вас есть телеграмм канал? Привет из Ангрена и Саратова!

  • @user-gv6fg7ur6z
    @user-gv6fg7ur6z Год назад

    огромное спасибо, очень последовательно и понятно !

  • @Arius1987
    @Arius1987 Год назад

    Добрый день. Просьба о четвертой части. Работа со списками, аналог ipset

  • @Arius1987
    @Arius1987 Год назад

    Здравствуйте. Хотел спросить такую штуку: можно ли прикрутить логирование к политике по-умолчанию (drop)?

    • @KhasanKarabayev
      @KhasanKarabayev Год назад

      Да, можно, нужно составить кастомную цепочку правил

  • @Arius1987
    @Arius1987 Год назад

    Отличный гайд. Спасибо

  • @luckystrike91
    @luckystrike91 Год назад

    Никогда не используйте bash скрипт для конфигурации nftables! Есть малая (но не нулевая) вероятность частичного применения правил. Для конфигурации используется nftables скрипт с шибангом #!/usr/sbin/nft -f правила в котором применяются атомарно в рамках одной транзакции

  • @RNikSan
    @RNikSan Год назад

    шпасиба!

  • @dmitrys7170
    @dmitrys7170 Год назад

    спасибо, было бы здорово увидеть продвинутую часть

  • @Percovyj-Vazelin
    @Percovyj-Vazelin Год назад

    Спасибо

  • @user-rm2im6wx2b
    @user-rm2im6wx2b Год назад

    Шикарное видео, большое спасибо! Подписка, лайк!

  • @nuriddinxakimjanov5201
    @nuriddinxakimjanov5201 Год назад

    классно

  • @whoamixrun3851
    @whoamixrun3851 Год назад

    Хорошо объяснили, спасибо.

  • @vikbov1509
    @vikbov1509 Год назад

    Спасибо за материал. Кстати, чтобы постоянно смотреть обновленные правила необязательно писать скрипт. Есть отличная команда watch. Т.е. watch -n 1 'nft list ruleset' будет делать тоже что и ваш скрипт.

    • @bamm_br
      @bamm_br Год назад

      Это если дефолтные 2 секунды чем-то не устраивают и непременно 1с надо. По мне так и вовсе watch nft list ruleset хорошо. Без всяких кавычек, чмодов и бессмысленного скриптописания.

  • @rukagamius
    @rukagamius Год назад

    Спасибо за ролик👍

  • @user-wt5yd5kp4m
    @user-wt5yd5kp4m Год назад

    Спасибо за труд. Хотелось бы немного узнать про Oper Key. Последнее время про него очень много говорят. Особенно в контексте когда нужно соединить в портчанел разновендорное оборудование.

  • @vosileypupkin
    @vosileypupkin Год назад

    Большое спасибо!

  • @sallador
    @sallador 2 года назад

    Спасибо большое за отличный вебкаст. Вопрос про сохранение правил. Все сделал как в вебкасте, в итоге nft list ruleset показывает мои правила + далее правила для таблиц ip6. Команда flush ruleset их не очистила? У меня виртуалка Centos 8 stream, если это важно.

  • @antoshabrain
    @antoshabrain 2 года назад

    есть ли у вас возможность записать вебкаст по сетам? iptables использовал в связке с ipset, слышал что у nft появились свои сеты, но информации пока не очень много по ним.

  • @antoshabrain
    @antoshabrain 2 года назад

    очень вовремя, спасибо

  • @asura963
    @asura963 2 года назад

    Добрый вечер, еще один вопрос интерисует: Если на output (изходящие) ставить drop, то что нужно открыть что бы система нормально функционировала. Правильно ли будет ставить на OUTPUT такие правило, и достаточноли этого если правильно: nft add rule ip filter OUTPUT ct state invalid counter drop nft add rule ip filter OUTPUT ct state established counter accept nft add rule ip filter OUTPUT counter drop Хотя помню что то что большими буквами это всего лишь имя, и тогда получается что это дубликация что и в инпуте. Или для output будет правильней в таблице поставить дроп, если да то опять тот-же вопрос, что нужно тогда открыть, какие правила вписать для нормального функционирования системы? Помню когда я в iptables на output ставил дроп то сеть перестовала работать, а огда делал это через gufw то все норм. Подскажите пожалуйста

  • @asura963
    @asura963 2 года назад

    Еще один вопрос забыл написать, по поводу ipv6 Если мы указывает правила на ipv4 то ipv6 по умолчанию порты будут открыты, верно? Если это так: то получается конце правил ipv4 нужно добавить еще одну таблицу для ipv6 только с уже везде с drop?

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      Для ipv6 другой тип цепочки, если на компьюторе не используется ipv6 то его настраивать вовсе не нужно

  • @asura963
    @asura963 2 года назад

    Здраствуйте, все работает)) Позволите пару вопросов по существу: 1) Можноли дабовлять фильтрацию по мак адресу для 80,443,53 портов или это через чур. Или всетаки будет более безопасным и ни лишним. 2) Как лудше сделать и большая ли разница: В таблице инпупт сразу поставить drop Или лудше в конце поставить: nft add rule ip filter INPUT counter drop

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      По мак адресу фильтрация возможно только в локальной сети, за пределами локальной сети мак адреса не видны, лучше в конце инпута добавить дроп

  • @asura963
    @asura963 2 года назад

    Удалось сохранить правила: ) postimg.cc/w7QWGVCZ Решение: postimg.cc/tn5h2rsz

  • @asura963
    @asura963 2 года назад

    Процес: upload.disroot.org/r/bzr_8J_y#RdeEYxkdR+4cVezVbhT7shDTWBGfbq54JBmYnpfSxps=

  • @asura963
    @asura963 2 года назад

    Запущена: postimg.cc/ft4wVBqB

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      Что показывает команда systemctl status nftables?

  • @asura963
    @asura963 2 года назад

    Загрузился сновой копией... Сделал все по пунктикам, но после перезагрузки при воде "nft list ruleset" правила новые ни применились по чему то, только сахранились в nftables.conf Ни понимаю причины

  • @asura963
    @asura963 2 года назад

    Здраствуйте, до сих пор ни осилил это сохранения... Все делаю по пунктикам, ошибок ни каких нету, только почему то сейчас при nft list ruleset правила ни появляются. Если делаю скрипт, в скрипте прописываю правила. Затем название скрипта, и как понимаю после этого должны они перенеститсь правила в rules. (вобщем они должны сконфигурироваться) но этого почему то ни произходит. Это произошло после того как я удалил правила по умолчанию по пути: /usr/sbin/nft Потом заново создал этот файл: touch nft И дал разрешение: chmod 755 nft После того как перезагрузился при попытки просмотреть правила которые создовал "nft list ruleset " правила перестали пояляться... Подскажите пожалуйста, как мне исправить это?

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      Проверьте включенли сервис systemctl status nftables, и файл нужно сохранять в /etc/ посмотрите видео внимательно

    • @asura963
      @asura963 2 года назад

      @@KhasanKarabayev Да запущен: postimg.cc/K4ddF6Tk Вроде уже несколько раз пересматривал... Вот создание скрипта: cd /usr/local/bin/ touch firewall chmod 755 firewall -- Написал правила -- # firewall # echo '#!/usr/sbin/nft -f' > /etc/nftables.conf # echo 'flush ruleset' >> /etc/nftables.conf # nft list ruleset >> /etc/nftables.conf Все верно? Просто уже даже н знаю куда смотреть, что бы понять что делаю ни так. Может для nft "/usr/sbin/nft" нужно другое разрешение а ни 755..

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      А вот бинарник не нужно было удалять или изменять из папки /usr/sbin/nft (

    • @asura963
      @asura963 2 года назад

      @@KhasanKarabayev уже понял что ни нужно было, сечас значит это ни исправить? Если нет тогда загружусь с новой копии, так как делаю это еще на виртуальной машине... Просто подумал что туда загружу свежие правила командой: # nft -s list ruleset >> /usr/sbin/nft А тут вот как оно оказалось.

  • @satoshinacomoto
    @satoshinacomoto 2 года назад

    круто. самый лучший вебкаст по nftables

  • @asura963
    @asura963 2 года назад

    Здраствуйте, сколько раз и как ни пробывал, ни удатся мне сохранить параметры nftables В nftables.conf сохранило, только после перезагрузки - водя команду nft list rules - Возрощается все по умолчанию.. Если в водить правила из терминала сохраняются правила так же или может как то иначе?

  • @asura963
    @asura963 2 года назад

    Здраствуйте, подача очень хорошая, разжованая и понятная... Благодарю :) Хочу для домашнего компютера настроить компютер максимально безопасно, по этому пару уточнений если позволите. 1) Для домашнего использования lo интерфейс обезательно должен быть открыт или нет. В iptables обычно закрывал. 2) В таблице iptables использовал: iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT Какая команда будет равноссильна в nft ? И нужно ли ее применять? 3) Можете привести пример или варианты* для максимальной безопасности для домашнего пользователя. Предпологаю идельно все порты закрыть как входящие так и исходящие и открыть только нужные порты: tcp 80,443 udp 53 порт для торента и для докера... Как это сделать правильно и правильноли будет так? Будет здорово и многим полезным сделать дополнительное видео, ведь защищать домашние компюторы очень нужно! :) Так же будет замечательно если вы в одельном примере от этого так же по кажите такой пример: Когда нужно что бы на реальной машине небыло интернета только обновление linux системы. А на виртуальной машине было настроено и проброшено так как вы надеюсь покажите в первом примере для домашнего использование. Как это сделать правильно? Буду благодарен за обратную связь

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      1) интерфейс lo нужно открыть в любом случае, на нем крутятся внутренние сервисы ПК/сервера 2) nft add rule ip filter INPUT ct state related,established counter accept 3) исходящие порты можно все открыть, а вот входящие открывать по необходимости, если на компьютере не запущен вэб сервис то не нужно открыть 80, 443 порты, так же если на компьютере не запущен DNS его тоже не нужно открывать (видео ролик рассчитан для серверных платформ, не для домашних)

    • @asura963
      @asura963 2 года назад

      Благодарю за обратную связь. Да, понимаю что видео расчитано для серверов, а хотелось бы хоть одно видео для номашнего использования. 1) понял, lo открываем в любом случаии. 2) nft add rule ip filter INPUT ct state related,established counter accept это правило ведь нужно применять для домашнего использования, верно? 3) Понимаю что исходящие порты можно открыть все, но ни обходимоли для большей безопасности.? Если закрыть все-же и Изходящие в таблице, то что нужно открыть из изходящего что бы система работала как надо? Так как помню пробывал закрывать output, но ни смотря на то что в input 80.443 были открыты, сеть ни работала. 4) DNS ведь нужен для обновления системы, без 53 udp система ведь ни будет обновляться... по этому думаю что нужен.

    • @asura963
      @asura963 2 года назад

      @@KhasanKarabayev извените пожалуйста за без покойство! Ни как ни могу разобраться. Дело в том, что после написания правил в командной строке, после перезагрузки все сбивается по дефолту. Скажите пожалуйста как применить правила, что бы они сохранились после перезагрузки системмы? И второе, что бы каждый раз ни писать правила, можно ли их загузить из готового файла, например nftables.conf Помогите пожалуйста, странно проширстил мануалы но ответа ни нашел, везде все как подкопирку.

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      @@asura963 посмотрите третию часть моего видео посвященному фаерволу таймлайн: 15:20, там как раз разказал как сохранить правило

    • @asura963
      @asura963 2 года назад

      @@KhasanKarabayev понял, как раз третью чать и ни посмотрел... так как подумал что там чисто про nat, благодарю.

  • @senshiolore3070
    @senshiolore3070 2 года назад

    Утилитой nmcli можно заменить netplan для назначения статических и динамических адресов?

  • @forme6857
    @forme6857 2 года назад

    Дружище скинь текстовик свой которым пользуешься в данном ролике благодарб заранее!

  • @onesply
    @onesply 2 года назад

    Большое спасибо! Весьма доступно объяснили. В гайдах на сайтах вообще ничего не объясняют(

  • @VilikSpb
    @VilikSpb 2 года назад

    Спасибо, подача материала супер!

  • @igorcoolman
    @igorcoolman 2 года назад

    спасибо очень доходчиво объяснил, не так часто это встречаешь, хотелось бы углубленную 4 часть урока увидеть: использование переменных в скрипте, слышал есть конвертер какой-то из iptables в nstables, про него рассказать, еще как такие правила в nftables записывать iptables -A INPUT -i $INET_IF -m conntrack --ctstate NEW -p tcp --dport 80 -m hashlimit --hashlimit-upto 50/sec --hashlimit-burst 50 --hashlimit-mode srcip,srcport,dstip,dstport --hashlimit-name www -j ACCEPT сильно интересует именно --hashlimit-mode как выставлять флаги: iptables -A INPUT -p tcp --tcp-flags ALL RST,ACK,PSH,URG -j DROP и тонкости уже установленных соединений iptables -A INPUT -p tcp -m multiport --dports 80,443 -m connlimit --connlimit-above 21 --connlimit-mask 32 -j DROP рассказать как реализовать Port Knocking хотел уточнить, а разве не правильнее будет все таблицы по умолчанию дропать и еще все правила писать через ct state new делать, а в конце каждой цепочки ct state related,established : nft add rule ip filter INPUT ct state related,established counter accept nft add rule ip filter FORWARD ct state related,established counter accept nft add rule ip filter OUTPUT ct state related,established counter accept

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      Отличный комент, в ближайшие время постораюсь сделать четвертую часть, где отвечу так же на поставленные вопросы реальными примерами

    • @igorcoolman
      @igorcoolman 2 года назад

      @@KhasanKarabayev очень буду ждать, спасибо

    • @igorcoolman
      @igorcoolman 2 года назад

      нашел утилиту: iptables-translate -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT получается: nft add rule ip filter INPUT tcp dport 22 ct state new counter accept но к сожалению не все правила может конвертировать, это не работает: iptables-translate -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 109 --connlimit-mask 24 -j DROP

    • @KhasanKarabayev
      @KhasanKarabayev 2 года назад

      @@igorcoolman действительно утилита iptables-translate служит для трансляции давно всем известных правил на новый синтаксис, сделано это для того чтоб переход был более безболезненным, но нужно учесть тот факт что он рассчитан на широко известные/распространённые команды, для особых случаях как у вас он срабатывать не будет, в таком случаи нужно просто курить официальный мануал, вот что есть на вашу тему wiki.nftables.org/wiki-nftables/index.php/Connlimits

    • @igorcoolman
      @igorcoolman 2 года назад

      @@KhasanKarabayev спасибо нашел ответы на некоторые вопросы, осталось как-то протестировать на правильную работоспособность все-таки nftables для меня новый инструмент, но видео от тебя все равно ждем )

  • @bilbobaggins4494
    @bilbobaggins4494 2 года назад

    Спасибо за наглдяный пример! но у меня не большой вопрос. Как заNAT-ить трафик если он идет с виртуального интерфейса, который появляется при подключении впн? В целом мне необходимо NAT-ить сеть в интернет без указания интерфейса?

    • @igorcoolman
      @igorcoolman 2 года назад

      меня что то подобное тоже волнует, при запуске докера он создает рандомное название для своего интерфейса и создает свои правила iptables с открытыми портами на все интерфейсы, чем ломает уже рабочие правила ну и безопасность соответственно.

    • @bilbobaggins4494
      @bilbobaggins4494 2 года назад

      @@igorcoolman Может у докера можно как нибудь присвоить статичное название интерфейса? в моем случае у меня с подключением пользователей к впн сервису создавался виртуальный vpn0, но на него так же можно накатывать правила в nftables, у меня проблем вроде бы не было, но если как, как у вас, дается рандомное имя интерфейса, то надо начинать с докера

  • @nikalt776
    @nikalt776 2 года назад

    Спасибо. Наглядно. Без лишней воды.

  • @Van9ssio
    @Van9ssio 2 года назад

    Отличное видео. Спасибо.