🧯 Как удалить конкретные правила из iptables (а не всё подряд)?
Привет, линуксоид! Бывало такое: правила в iptables работают как часы, но внезапно нужно откатить одно-два, не трогая всё остальное. Ниже — короткий гайд, как это сделать аккуратно и по-взрослому.
✅ Способ 1. Удалить правило по содержимому
Повтори ту же команду, но с
💡 Работает, только если правило совпадает дословно.
🧩 Способ 2. Удалить по номеру
Сначала покажи номера правил:
Удаление:
Если правило в NAT:
🛠 Способ 3. Комментарии и iptables-restore
Добавляешь правило с комментарием:
Потом удаляешь всё с этим тегом:
🧼 Способ 4. Через
Показать все правила:
Удалить нужное вручную (заменив
⚠️ Не забудь:
- При удалении по номеру порядок важен: после удаления строки остальные смещаются.
- Не используй
🌳 Ветка: https://stackoverflow.com/questions/10197405/how-can-i-remove-specific-rules-from-iptables
📩 Завтра: iptables: доступ к порту 8000 только с одного IP
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Эй, ты в курсе, что с Grafana можно раз и навсегда забыть о хаосе в мониторинге серверов?
🧠 - Секретная связка Angie и Grafana для тотального контроля над серверами
🧠 - Неожиданно закончилась память? 3 секрета команды du -h
#stackoverflow @LinuxSkill #iptables #Linux #сетевоеадминистрирование #firewall #DevOps #SysAdmin #безопасность
Привет, линуксоид! Бывало такое: правила в iptables работают как часы, но внезапно нужно откатить одно-два, не трогая всё остальное. Ниже — короткий гайд, как это сделать аккуратно и по-взрослому.
✅ Способ 1. Удалить правило по содержимому
Повтори ту же команду, но с
-D
вместо -A
:iptables -D INPUT -i eth0 -p tcp --dport 443 -j ACCEPT
💡 Работает, только если правило совпадает дословно.
🧩 Способ 2. Удалить по номеру
Сначала покажи номера правил:
iptables -L INPUT --line-numbers
Удаление:
iptables -D INPUT 3
Если правило в NAT:
iptables -t nat -L PREROUTING --line-numbers
iptables -t nat -D PREROUTING 1
🛠 Способ 3. Комментарии и iptables-restore
Добавляешь правило с комментарием:
iptables -A INPUT -s 1.2.3.4 -j DROP -m comment --comment "ban_temp"
Потом удаляешь всё с этим тегом:
iptables-save | grep -v "ban_temp" | iptables-restore
🧼 Способ 4. Через
iptables -S
Показать все правила:
iptables -S
Удалить нужное вручную (заменив
-A
на -D
):iptables -D INPUT -p tcp --dport 443 -j ACCEPT
⚠️ Не забудь:
- При удалении по номеру порядок важен: после удаления строки остальные смещаются.
- Не используй
iptables -F
, если не хочешь снести всё подчистую.🌳 Ветка: https://stackoverflow.com/questions/10197405/how-can-i-remove-specific-rules-from-iptables
📩 Завтра: iptables: доступ к порту 8000 только с одного IP
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Эй, ты в курсе, что с Grafana можно раз и навсегда забыть о хаосе в мониторинге серверов?
🧠 - Секретная связка Angie и Grafana для тотального контроля над серверами
🧠 - Неожиданно закончилась память? 3 секрета команды du -h
#stackoverflow @LinuxSkill #iptables #Linux #сетевоеадминистрирование #firewall #DevOps #SysAdmin #безопасность
Stack Overflow
How can I remove specific rules from iptables?
I am hosting special HTTP and HTTPS services on the ports 8006 and 8007 respectively. I use iptables to "activate" the server; i.e. to route the incoming HTTP and HTTPS ports:
iptables -A INPUT -i...
iptables -A INPUT -i...
👍16🔥2
🔐 iptables: доступ к порту 8000 только с одного IP
Привет, хранитель сетей! Если ты хочешь открыть доступ к какому-либо сервису (например, веб-интерфейсу на порту 8000) только для одного IP, не трогая весь остальной трафик — вот как это делается через
🔧 Пример: разрешить доступ только для 1.2.3.4
Так ты явно разрешаешь доступ для IP
💡 Альтернатива: блокировать всех, кроме одного IP
Один простой вариант — одна строка, эффект тот же.
📌 Несколько полезных замечаний:
- Для диапазона IP используй:
- Чтобы снять правило, замени
- Не забудь сохранить конфигурацию, если не хочешь потерять правила после перезагрузки:
🌳 Ветка: https://stackoverflow.com/questions/7423309/iptables-block-access-to-port-8000-except-from-ip-address
📩 Завтра: Как управлять iptables на лету — без
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Не трать время на конфиги: как упростить работу с WireGuard
🧠 - Неожиданный способ взломать систему: что такое бинарный анализ в Linux?
#stackoverflow @LinuxSkill #iptables #Linux #firewall #порт #безопасность #SysAdmin #DevOps
Привет, хранитель сетей! Если ты хочешь открыть доступ к какому-либо сервису (например, веб-интерфейсу на порту 8000) только для одного IP, не трогая весь остальной трафик — вот как это делается через
iptables
.🔧 Пример: разрешить доступ только для 1.2.3.4
iptables -A INPUT -p tcp --dport 8000 -s 1.2.3.4 -j ACCEPT
iptables -A INPUT -p tcp --dport 8000 -j DROP
Так ты явно разрешаешь доступ для IP
1.2.3.4
, а все остальные — отсекаешь.💡 Альтернатива: блокировать всех, кроме одного IP
iptables -A INPUT -p tcp --dport 8000 ! -s 1.2.3.4 -j DROP
Один простой вариант — одна строка, эффект тот же.
📌 Несколько полезных замечаний:
- Для диапазона IP используй:
-s 1.2.3.0/24
- Чтобы снять правило, замени
-A
на -D
(или используй iptables -S
и удаляй по номерам).- Не забудь сохранить конфигурацию, если не хочешь потерять правила после перезагрузки:
iptables-save > /etc/iptables.rules
🌳 Ветка: https://stackoverflow.com/questions/7423309/iptables-block-access-to-port-8000-except-from-ip-address
📩 Завтра: Как управлять iptables на лету — без
sudo
, без потерьВключи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Не трать время на конфиги: как упростить работу с WireGuard
🧠 - Неожиданный способ взломать систему: что такое бинарный анализ в Linux?
#stackoverflow @LinuxSkill #iptables #Linux #firewall #порт #безопасность #SysAdmin #DevOps
Stack Overflow
iptables block access to port 8000 except from IP address
I've never used iptables, and the documentation online seems a bit opaque.
I'd like to block all requests to port 8000 on my server except those coming from a specific IP address. How do I do that...
I'd like to block all requests to port 8000 on my server except those coming from a specific IP address. How do I do that...
👍12👀1
🧠 Как управлять iptables на лету — без
Привет, сетевой волшебник! Если ты хоть раз пытался автоматически обновлять правила iptables из приложения или скрипта — ты знаешь, насколько это боль.
Сегодня разберём, как это делать программно, безопасно и эффективно — даже без API.
🤯 Проблема: у iptables нет API
-
- Прямого, документированного API в C, Python, Rust и т.д. не существует.
📌 Официальный ответ от Netfilter:
> “Нет, API не предусмотрен. Используйте
Источник: Netfilter FAQ
✅ Что работает на практике:
#1. iptables-restore (атомарная загрузка правил)
Можно применять *весь ruleset сразу*, не теряя соединений:
✔️ Безопасно: правила применяются при
✔️ Работает из любой программы через stdin
#2. ipset — для добавления IP без пересборки
✔️ Отлично подходит для динамических списков
✔️ Есть поддержка
✔️ Работает быстро и без потерь
#3. rfw — REST API для iptables (open source)
Позволяет управлять правилами через HTTP-запросы:
👉 Проект: https://github.com/gluczywo/rfw
✔️ Поддерживает JSON,
✔️ Работает на
✔️ Подходит для распределённых систем
#4. python-iptables
Обёртка над
🔗 https://github.com/ldx/python-iptables
✔️ Удобен для скриптов
❗ Требует осторожности при работе с низкоуровневым API
🛑 Что не делать:
- Не пиши правила через
- Не используй
- Не забывай про
🌳 Ветка: https://stackoverflow.com/questions/109553/how-can-i-programmatically-manage-iptables-rules-on-the-fly
📩 Завтра: Вопрос №17 из теста Linux Essentials Certification
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Настрой cron за 5 минут и забудь о ручной работе навсегда!
🧠 - Ты больше никогда не запутаешься в systemd: разбор по шагам!
🧠 - 10 секретов команды ping, которые знают только сетевые гуру
#stackoverflow @LinuxSkill #iptables #ipset #Linux #SysAdmin #DevOps #firewall #rfw #сетибезопасность
sudo
, без потерьПривет, сетевой волшебник! Если ты хоть раз пытался автоматически обновлять правила iptables из приложения или скрипта — ты знаешь, насколько это боль.
Сегодня разберём, как это делать программно, безопасно и эффективно — даже без API.
🤯 Проблема: у iptables нет API
-
libiptc
не предназначена для использования — она нестабильна и может быть удалена в будущем. - Прямого, документированного API в C, Python, Rust и т.д. не существует.
📌 Официальный ответ от Netfilter:
> “Нет, API не предусмотрен. Используйте
system()
или iptables-restore
.” Источник: Netfilter FAQ
✅ Что работает на практике:
#1. iptables-restore (атомарная загрузка правил)
Можно применять *весь ruleset сразу*, не теряя соединений:
iptables-restore < my_ruleset.conf
✔️ Безопасно: правила применяются при
COMMIT
, в один вызов ядра ✔️ Работает из любой программы через stdin
#2. ipset — для добавления IP без пересборки
ipset create allowlist hash:ip
ipset add allowlist 1.2.3.4
iptables -A INPUT -m set --match-set allowlist src -j ACCEPT
✔️ Отлично подходит для динамических списков
✔️ Есть поддержка
timeout
и swap
✔️ Работает быстро и без потерь
#3. rfw — REST API для iptables (open source)
Позволяет управлять правилами через HTTP-запросы:
PUT /drop/input/eth0/11.22.33.44
👉 Проект: https://github.com/gluczywo/rfw
✔️ Поддерживает JSON,
GET
, PUT
, DELETE
, сериализацию ✔️ Работает на
localhost
без SSL ✔️ Подходит для распределённых систем
#4. python-iptables
Обёртка над
libiptc
(но будь осторожен):🔗 https://github.com/ldx/python-iptables
✔️ Удобен для скриптов
❗ Требует осторожности при работе с низкоуровневым API
🛑 Что не делать:
- Не пиши правила через
iptables -A
в цикле - Не используй
libiptc
напрямую в проде - Не забывай про
iptables-save
как бэкап перед внесением правок🌳 Ветка: https://stackoverflow.com/questions/109553/how-can-i-programmatically-manage-iptables-rules-on-the-fly
📩 Завтра: Вопрос №17 из теста Linux Essentials Certification
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Настрой cron за 5 минут и забудь о ручной работе навсегда!
🧠 - Ты больше никогда не запутаешься в systemd: разбор по шагам!
🧠 - 10 секретов команды ping, которые знают только сетевые гуру
#stackoverflow @LinuxSkill #iptables #ipset #Linux #SysAdmin #DevOps #firewall #rfw #сетибезопасность
👍14