в последней лекции мы обсуждали межсетевые экраны с отслеживанием состояния и то, как они работают.
Давайте перейдем к терминалу и создадим межсетевой экран с отслеживанием состояния с нуля, что очень хорошо для
настольной операционной системы. Это тот вид межсетевого экрана, который я использую на себе. Ноутбук,
и я могу сказать, что у меня не было никаких проблем в течение многих лет,
я собираюсь создать сценарий bash, который содержит все правила iptable
в начале сценария, я прошиваю таблицу фильтров
всех цепочек iptables минус f, затем я разрешаю lubeck трафик всегда разрешает luber-трафик
на входных и выходных цепочках iptables минус входной минус i входящий интерфейс lo минус j accept
и то же самое для выходной цепочки теперь у нас есть исходящий интерфейс, который является lo минус j accept,
luber-трафик разрешен правилами до эта точка может быть частью любого брандмауэра.
Я запускаю вирусную часть с отслеживанием состояния, как я уже сказал ранее, рекомендуется отбрасывать недопустимые
пакеты во входных и выходных цепочках. Это пакеты, которые нельзя идентифицировать ни в каком состоянии
ip таблицы минус вход минус состояние m минус минус состояние недопустимое
минус j отбрасывание и то же самое для выходной цепочки
этот вид брандмауэра очень хорош для настольной операционной системы,
это означает, что нет запущенных служб или никто не подключается к ним извне
хост связывается с любым местом назначения и использует любой протокол, поэтому весь исходящий трафик
разрешен, но разрешен только обратный, это означает, что я должен принимать во входной цепочке
только пакеты, которые находятся в установленных или связанных ставках, это обратный трафик
и в выходной цепочке я разрешаю пакеты, которые находятся в новых установленных и связанных долях,
это означает весь трафик, включая пакеты, которые инициализируют новые соединения
iptables минус вход минус состояние m минус минус состояние установленное состояние, связанное с запятой, минус j accept
всегда записывать ставки в верхнем регистре и правило выходной цепочки
для исходящего трафика iptables минус выход минус состояние m минус минус состояние, и у нас есть
новые пакеты, которые устанавливают новые соединения установлены и связаны минус j accept,
и, наконец, я установил политику, чтобы отбросить входные и выходные цепочки, весь трафик, который ранее не был
разрешен, будет удален iptables минус p drop drop и iptables минус p output drop
, это все, что я сохраняю скрипт и затем сделайте его исполняемым и запустите.
Давайте протестируем пинг исходящего трафика 8.8.8.8.
и ping работает, давайте протестируем http или https,
https работает, и я также протестирую ssh, я собираюсь подключиться к linux2,
и ssh работает отлично, теперь давайте протестируем новые
входящие соединения из linux 2, я буду пинговать linux 1. ping и ip адрес linux 1.
и ping не работает пакеты удаляются во входной цепочке
давайте протестируем ssh
ssh не работает все пакеты, которые инициализируют новые соединения, отбрасываются во входной цепочке
новые входящие подключения не разрешены, и это безопасно, давайте перечислим брандмауэр
и мы видим, что пакет отброшен политикой во входной цепочке, есть также недействительный
пакет, который был отброшен, это очень хорошо, но, однако, есть случаи, когда мы хотим разрешить новые
входящие соединения с определенного IP-адреса или протокола, например, мы хотим разрешить входящие
ssh-соединения только со станции управления, поэтому с заданного IP-адреса, как мы можем это сделать,
это очень просто, в начале скрипта мы добавляем правило, которое разрешает входящие tcp-
пакеты, которые находятся в новом s Если используется протокол ssh, а исходный IP-адрес указан
в том же скрипте где-то в начале, я добавлю новое правило, на самом деле неважно,
куда я добавляю правило, но лучше быть в начале, потому что Я хочу разрешить
пакет быстро сейчас после того, как были проверены многие другие правила, поэтому я буду в таблице как минус ввод
минус ptcp минус минус d порт 22, и теперь новое состояние минус такое же состояние минус минус
состояние nu минус s данный IP-адрес ip адрес, который разрешен, и его linux 2
минус j accept, я сохраняю сценарий, а затем тестирую его снова,
я запускаю сценарий, и из linux 2 я попытаюсь подключиться с помощью ssh к linux one,
и теперь ssh работает
отлично, давайте снова перечислите брандмауэр,
мы видим, что есть один пакет, который был принят новым правилом