Найти в Дзене

Void Linux (нюансы установки iptables)

Добрый день дорогой читатель, данное повествование не является
истиной в последней инстанции, это некое пояснение по установке межсетевого экраном iptables на Void Linux (в основном для собственного пользования) с пояснениями и все возможными мыслями. Действия будут происходить на KVM/QEMU для наглядности. iptables это утилита командной строки в Linux, используемая для настройки
правил фильтрации сетевого трафика, работы межсетевого экрана (firewall)
и управления сетевыми соединениями. Проще говоря, это инструмент,
который позволяет администраторам контролировать, какие сетевые пакеты
разрешены или заблокированы на сервере или компьютере. iptables в Void Linux который использует runit в качестве системы инициализации, надо установить пакет runit-iptables, выполнив команду: sudo xbps-install -S runit-iptables Этот пакет предоставляет сервисы runit для автоматического сохранения и восстановления правил iptables при загрузке. По умолчанию iptables ищет правила в /etc/iptables/ в фай
Оглавление

Добрый день дорогой читатель, данное повествование не является
истиной в последней инстанции, это некое пояснение по установке межсетевого экраном iptables на Void Linux (в основном для собственного пользования) с пояснениями и все возможными мыслями. Действия будут происходить на KVM/QEMU для наглядности.

iptables это утилита командной строки в Linux, используемая для настройки
правил фильтрации сетевого трафика, работы межсетевого экрана (firewall)
и управления сетевыми соединениями. Проще говоря, это инструмент,
который позволяет администраторам контролировать, какие сетевые пакеты
разрешены или заблокированы на сервере или компьютере.

Установка iptables

iptables в Void Linux который использует runit в качестве системы инициализации, надо установить пакет runit-iptables, выполнив команду:

sudo xbps-install -S runit-iptables

Этот пакет предоставляет сервисы runit для автоматического сохранения и восстановления правил iptables при загрузке.

Создание файлов правил

По умолчанию iptables ищет правила в /etc/iptables/ в файлах конфигах. Проверим есть ли они выполнив команду:

ls -l /etc/iptables/

Создайте необходимые файлы, если они еще не существуют:

sudo touch /etc/iptables/iptables.rules
sudo touch /etc/iptables/ip6tables.rules
-2

о возможностях и правилах iptables описано в посте "iptables часть 1 основы управления правилами". заострять на этом внимание не буду.

Сохранение правил

Сохранение текущих правил IPv4 в файл

sudo iptables-save | sudo tee /etc/iptables/iptables.rules

Сохранение текущих правил IPv6 в файл

sudo ip6tables-save | sudo tee /etc/iptables/ip6tables.rules
-3

Активация iptables как сервис runit

В Void Linux сервисы runit активируются путем создания символических ссылок из каталога сервиса в /var/service/. Пакет runit-iptables предоставляет сервисы iptables и ip6tables, которые автоматически загружают сохраненные правила при загрузке системы (на этапе 1 инициализации runit). Для запуска сервисов следует выполнить следующие команды по созданию символических ссылок:

sudo ln -s /etc/sv/iptables /var/service/
sudo ln -s /etc/sv/ip6tables /var/service/

-4

Проверка работы iptables

После перезагрузки системы правила должны загрузиться автоматически. Вы можете проверить активные правила с помощью команд:

sudo iptables -L
sudo ip6tables -L
-5

Если вы хотите применить новые правила без перезагрузки, вы можете вручную "перезапустить" сервисы (на самом деле, это действия "down" и "up" для сервисов runit, которые вызывают загрузку правил, увы у runit нет такого инструмента как restart, но это исправимо используя утилиту vsv для runit, но это уже другая история):

sudo sv down iptables
sudo sv up iptables
sudo sv down ip6tables
sudo sv up ip6tables
-6

или если используете vsv то

sudo vsv restart iptables
sudo vsv restart ip6tables
-7

или же можно перечитать правила с помощью команд ниже без перезагрузки сервиса

sudo vsv reload iptables
sudo vsv reload ip6tables
-8

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

За основу взято Void Linux Handbook, документация по iptables, а так же информация с форумов по данной тематике, информация других пользователей размещенная на просторах всемирной паутины и собственные наработки.
За сим откланиваюсь...