Linux Skill - Освой Linux c нуля до DevOps
10.8K subscribers
60 photos
76 videos
439 links
Освой Linux c нуля до DevOps
Подробный гайд по Linux и море других уроков для системных администраторов

📩 По всем вопросам: @chorapov

РКН https://vk.cc/cMUwm4
Download Telegram
🧯 Как удалить конкретные правила из iptables (а не всё подряд)?

Привет, линуксоид! Бывало такое: правила в 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 #безопасность
👍16🔥2
🔐 iptables: доступ к порту 8000 только с одного IP

Привет, хранитель сетей! Если ты хочешь открыть доступ к какому-либо сервису (например, веб-интерфейсу на порту 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
👍12👀1
🧠 Как управлять iptables на лету — без 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