Решено: Debian + iptables (Способы запуска iptables)
Модераторы: Warderer, Модераторы разделов
Решено: Debian + iptables
Доброго времени суток!
Поставил себе Debian stable (Sarge), поставил iptables, НО не могу найти скрипт в init.d для запуска фаервола. Прочел в doc-ах к Iptables, что в новой версии пакета изменился метод запуска, т.е. теперь нужно все настройки прописывать в /etc/network/interfaces и создавать скрипты в /etc/network: /if.down.d; /ip.up.d; ... Но так как у меня плохо с английским, я не совсем разобрался, что прописывать и по какому принципу работают и создаются файлы с правилами для Iptables, т.е. через iptables-save и iptables-restore или возможно создавать скрипт в котором будут прописываться эти правила?
Жду ответа и заранее всем откликнувшимся СПАСИБО!
Поставил себе Debian stable (Sarge), поставил iptables, НО не могу найти скрипт в init.d для запуска фаервола. Прочел в doc-ах к Iptables, что в новой версии пакета изменился метод запуска, т.е. теперь нужно все настройки прописывать в /etc/network/interfaces и создавать скрипты в /etc/network: /if.down.d; /ip.up.d; ... Но так как у меня плохо с английским, я не совсем разобрался, что прописывать и по какому принципу работают и создаются файлы с правилами для Iptables, т.е. через iptables-save и iptables-restore или возможно создавать скрипт в котором будут прописываться эти правила?
Жду ответа и заранее всем откликнувшимся СПАСИБО!
Re: Решено: Debian + iptables
создаешь в /etc/iptables.rules правила для iptables, а потом прописываешь в /etc/network/interfaces в начале строку:
pre-up iptables-restore /etc/iptables.rules.
Таким образом твои правила будут применены до инициализации интерфейсов, что обеспечит достаточную безопасность.
pre-up iptables-restore /etc/iptables.rules.
Таким образом твои правила будут применены до инициализации интерфейсов, что обеспечит достаточную безопасность.
Читаю вслух с выражением маны - $50/ч + стоимость звонка. Настраиваю сервисы за Вас - $100/ч + стоимость выезда и проживания.
И восемь строк матом...(бесплатно)
И восемь строк матом...(бесплатно)
Re: Решено: Debian + iptables
Спасибо за быстрый ответ!
Если я правильно понял то, для записи правил фаервола при выключение сети (/etv/init.d/network stop) нужно в etc/network/interfaces добавить post-down iptables-save /etc/iptables.rules ?
А что нужно прописать (вернее заменить), что бы запускалось не iptables-restore, а например скрипт iptables.rules ? возможно pre-up bash /etc/iptables.rules ?
И еще, если я положу этот скрипт в /etc/network/if-pre-up.d, то возможно в /etc/network/interfaces достаточно будет прописать pre-up iptables-restore iptables.rules ?, что мне кажется более логичным.
Если я правильно понял то, для записи правил фаервола при выключение сети (/etv/init.d/network stop) нужно в etc/network/interfaces добавить post-down iptables-save /etc/iptables.rules ?
А что нужно прописать (вернее заменить), что бы запускалось не iptables-restore, а например скрипт iptables.rules ? возможно pre-up bash /etc/iptables.rules ?
И еще, если я положу этот скрипт в /etc/network/if-pre-up.d, то возможно в /etc/network/interfaces достаточно будет прописать pre-up iptables-restore iptables.rules ?, что мне кажется более логичным.
Re: Решено: Debian + iptables
1. Вполне допустимо. Только, насколько мне известно правильнее iptables-save > /etc/iptables.rules
2. Запись вида
pre-up . /etc/iptables.rules
насколько я знаю, допустима.
3. К сожалению в этом вопросе не могу помочь. У самого выработалась привычка указывать пути явно.
2. Запись вида
pre-up . /etc/iptables.rules
насколько я знаю, допустима.
3. К сожалению в этом вопросе не могу помочь. У самого выработалась привычка указывать пути явно.
Читаю вслух с выражением маны - $50/ч + стоимость звонка. Настраиваю сервисы за Вас - $100/ч + стоимость выезда и проживания.
И восемь строк матом...(бесплатно)
И восемь строк матом...(бесплатно)
Re: Решено: Debian + iptables
Еще раз спасибо, за быстрый ответ!
3. согласен, но логичнее такие скритпы(зависящие от сети) ложить в /etc/network: /if.down.d; /ip.up.d: ...
Завтра на работе все это опробую, еще раз спасибо Warderer !
3. согласен, но логичнее такие скритпы(зависящие от сети) ложить в /etc/network: /if.down.d; /ip.up.d: ...
Завтра на работе все это опробую, еще раз спасибо Warderer !
Re: Решено: Debian + iptables
Только что проверил на работе, все работает!
Вот только для запуска скрипта (любого) не нужно ставить точку перед именем файла pre-up . /etc/iptables.rules, нужно pre-up /etc/iptables.rules и все работает (скрипты запускаются через /bin/sh)
А вообще это очень удобный вариант запуска ЛЮБЫХ скриптов зависящих от сети.
Спасибо Warderer за то, что помог разобраться и эту тему, я думаю, можно закрывать.
Вот только для запуска скрипта (любого) не нужно ставить точку перед именем файла pre-up . /etc/iptables.rules, нужно pre-up /etc/iptables.rules и все работает (скрипты запускаются через /bin/sh)
А вообще это очень удобный вариант запуска ЛЮБЫХ скриптов зависящих от сети.
Спасибо Warderer за то, что помог разобраться и эту тему, я думаю, можно закрывать.
Re: Решено: Debian + iptables
Ну, тему мы закрывать не будем, мало ли какие вопросы схожие будут. А точка - это синоним sh, который, в свою очередь, является симлинком на bash в большинстве дистрибутивов linux.
Читаю вслух с выражением маны - $50/ч + стоимость звонка. Настраиваю сервисы за Вас - $100/ч + стоимость выезда и проживания.
И восемь строк матом...(бесплатно)
И восемь строк матом...(бесплатно)
Re: Решено: Debian + iptables
А насколько правильно сделал я? Машина одинокая, домашняя, "используемая" момедом :-).
1.Cвои правила сохранил в /etc/iptables.rules
2.Создал скрипт /etc/inet.d/myfirewall вида:
#!/bin/sh
modprobe iptable_filter
iptables-restore < /etc/iptables.rules
3.Ссылку вида @S40myfirewall засунул в /etc/rc_уровень_запуска_.d
Как будто это все работает. Что скажут специалисты?
И вдогонку: насколько следует доверять on-line секьюрити-чекерам, типа гибсоновского ShieldsUp! ?
1.Cвои правила сохранил в /etc/iptables.rules
2.Создал скрипт /etc/inet.d/myfirewall вида:
#!/bin/sh
modprobe iptable_filter
iptables-restore < /etc/iptables.rules
3.Ссылку вида @S40myfirewall засунул в /etc/rc_уровень_запуска_.d
Как будто это все работает. Что скажут специалисты?
И вдогонку: насколько следует доверять on-line секьюрити-чекерам, типа гибсоновского ShieldsUp! ?
Re: Решено: Debian + iptables
Ну раз работает зачем тогда спамить?
Re: Решено: Debian + iptables
Я не понял .
При чем тут спам? Может, флуд имеется в виду? Так поясню: я спрашиваю насчет правильности моих действий, ибо:
1. В iptables я не специалист. Слова Warderer'a: "Таким образом твои правила будут применены до инициализации интерфейсов, что обеспечит достаточную безопасность." - меня насторожили в том смысле, что, может, у меня правила применены ПОСЛЕ инициализации этих самых интерфейсов, что НЕ обеспечит достаточную безопасность?
2. В связи с этим и вопрос насчет онлайн секьюрити-чекера: могу ли я доверять результатам такой проверки?
Усёк ?
Re: Решено: Debian + iptables
/usr/share/doc/iptables или в /usr/share/iptables есть скрипт, называется oldinitdscript.gz.
Re: Решено: Debian + iptables
chitatel писал(а): ↑05.11.2005 14:371. В iptables я не специалист. Слова Warderer'a: "Таким образом твои правила будут применены до инициализации интерфейсов, что обеспечит достаточную безопасность." - меня насторожили в том смысле, что, может, у меня правила применены ПОСЛЕ инициализации этих самых интерфейсов, что НЕ обеспечит достаточную безопасность?
Дело в том, что если ты кому-то интересен, то попытки вторжения могут проводить с завидной регулярностью, в том числе и в тот момент, когда у тебя интерфейсы уже подняты, а iptables еще не закрыл все порты. В таком случае поднятие iptables перед инициализацией - критично. В остальных случаях - не столь важно. Однако лучше сразу вырабатывать в себе хорошие привычки?
Успеха!
Читаю вслух с выражением маны - $50/ч + стоимость звонка. Настраиваю сервисы за Вас - $100/ч + стоимость выезда и проживания.
И восемь строк матом...(бесплатно)
И восемь строк матом...(бесплатно)
Re: Решено: Debian + iptables
Warderer писал(а): ↑09.11.2005 10:51Дело в том, что если ты кому-то интересен, то попытки вторжения могут проводить с завидной регулярностью, в том числе и в тот момент, когда у тебя интерфейсы уже подняты, а iptables еще не закрыл все порты. В таком случае поднятие iptables перед инициализацией - критично. В остальных случаях - не столь важно. Однако лучше сразу вырабатывать в себе хорошие привычки?
Успеха!
Спасибо тебе, добрая душа
Не сочтите за тяжкий труд, подскажите все-таки, могу ли я, диалапщик, доверять онлайн секьюрити проверке, типа такой, например: http://www.grc.com/x/ne.dll?rh1dkyd2
Как вообще проверить на дырявость домашнюю машину? Или этот вопрос мне задать в "чайный" форум?
Re: Решено: Debian + iptables
chitatel писал(а): ↑09.11.2005 17:03Не сочтите за тяжкий труд, подскажите все-таки, могу ли я, диалапщик, доверять онлайн секьюрити проверке, типа такой, например: http://www.grc.com/x/ne.dll?rh1dkyd2
Как вообще проверить на дырявость домашнюю машину? Или этот вопрос мне задать в "чайный" форум?
Ну, вопрос скорее в раздел "Администрирование", но отвечу здесь. Для проверки собственной безопасности в минимальном случае рекомендую посмотреть себя nmap'ом, внимательно посмотрев его ключи, ну, а для более серьёзной проверки советую nessus. Он очень много всего может. Если время терпит - стукнись ко мне в личку на следующей неделе, я тебя тем же nessus'ом и посканирую.
Читаю вслух с выражением маны - $50/ч + стоимость звонка. Настраиваю сервисы за Вас - $100/ч + стоимость выезда и проживания.
И восемь строк матом...(бесплатно)
И восемь строк матом...(бесплатно)
Re: Решено: Debian + iptables
А я хотел спросить, как включить/выключить фаерволл прямо на ходу. В вышеописанных примерах он инициализируется во время работы системы...
Модуль вручную подгружать-выгружать?
Модуль вручную подгружать-выгружать?
Re: Решено: Debian + iptables
Насколько я знаю фаервол всегда включен(хотя все что у тебя модульное можно отрубить и вручную, но насколько это корректно ...), а вот привила фильтрации ты можешь в любой момент изменить(сбросить), для этого либо скрипт пиши, либо вручную вводи
Re: Решено: Debian + iptables
Тоже ковыряю debian.
Хотелось бы внести ясность относительно iptables...
Итак, включать/выключать пересылку пакетов в ядере - это тут:
/proc/sys/net/ipv4/ip_forward. Соответственно пишем в файл 1, чтоб пересылать.
Загружать модули к ядру - это modprobe. Всё, что есть в наличии из модулей по iptables можно подглядеть командой, например, modprobe -l | grep netfilter, а загрузить, например, modprobe ip_nat_ftp
Убрать модуль можно ключом -r, то есть modprob -r ip_nat_ftp
Теперь непонятка по интерфэйсу: если в /etc/network/options прописано ip_forward=yes, то будет ли включена пересылка пакетов на интерфэсах при загрузке? Ответьте, пожалуйста, ато проверю это не скоро, только к концу недели. И что может быть ещё в options и для чего это надо кто-нибудь знает?
Хотелось бы внести ясность относительно iptables...
Итак, включать/выключать пересылку пакетов в ядере - это тут:
/proc/sys/net/ipv4/ip_forward. Соответственно пишем в файл 1, чтоб пересылать.
Загружать модули к ядру - это modprobe. Всё, что есть в наличии из модулей по iptables можно подглядеть командой, например, modprobe -l | grep netfilter, а загрузить, например, modprobe ip_nat_ftp
Убрать модуль можно ключом -r, то есть modprob -r ip_nat_ftp
Теперь непонятка по интерфэйсу: если в /etc/network/options прописано ip_forward=yes, то будет ли включена пересылка пакетов на интерфэсах при загрузке? Ответьте, пожалуйста, ато проверю это не скоро, только к концу недели. И что может быть ещё в options и для чего это надо кто-нибудь знает?
Re: Решено: Debian + iptables
Sneva
несложно и самому посмотреть, не дожидаясь ответа:а когда запускается, можно узнать так:
несложно и самому посмотреть, не дожидаясь ответа:
Код: Выделить всё
$ find /etc/init.d/|xargs grep '/etc/network/options'
/etc/init.d/networking: opt=`grep "^$optname=" /etc/network/options`
$ cat /etc/init.d/networking
...
Код: Выделить всё
$ find /etc/rc*.d/ -name '*networking*'
/etc/rc0.d/S35networking
/etc/rc6.d/S35networking
/etc/rcS.d/S40networking
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
Re: Решено: Debian + iptables
зачем изобретать велосипед?
cp /usr/share/doc/iptables/examples/oldinitscript.gz /etc/init.d
cd /etc/init.d
gzip -d oldinitscript.gz
mv oldinitscript iptables
chmod +x iptables.
Правила ложим в /var/lib/iptables/active
cp /usr/share/doc/iptables/examples/oldinitscript.gz /etc/init.d
cd /etc/init.d
gzip -d oldinitscript.gz
mv oldinitscript iptables
chmod +x iptables.
Правила ложим в /var/lib/iptables/active
Re: Решено: Debian + iptables
Запутылся полностью(
Есть система фаер ещё не настраивался, вот хочу заняться
Перерыл поиск нашел много инфы и в итоге запутался.
Вот как у меня сейчас всё выглядит
Вот какие правила действуют, кстати откуда они взялись?
Как мне сделать чтобы все правила лежали допустим в /etc/rc.d/rc.firewall файле
Есть система фаер ещё не настраивался, вот хочу заняться
Перерыл поиск нашел много инфы и в итоге запутался.
Вот как у меня сейчас всё выглядит
Код:
cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
#allow-hotplug eth0
#iface eth0 inet dhcp
# network 10.26.7.0
# broadcast 10.26.7.255
# # dns-* options are implemented by the resolvconf package, if installed
# dns-nameservers 10.26.7.100
iface eth1 inet static
address 10.26.0.202
netmask 255.255.255.0
gateway 10.26.0.100
#pre-up iptables-restore /etc/rc.d/rc.firewall
auto eth1
#auto eth0
Вот какие правила действуют, кстати откуда они взялись?
Код:
iptables -L
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 10.26.0.100 anywhere tcp flags:!FIN,SYN,RST,ACK/SYN
ACCEPT udp -- 10.26.0.100 anywhere
ACCEPT all -- anywhere anywhere
ACCEPT icmp -- anywhere anywhere limit: avg 10/sec burst 5
DROP all -- anywhere 255.255.255.255
DROP all -- anywhere 10.26.0.255
DROP all -- BASE-ADDRESS.MCAST.NET/8 anywhere
DROP all -- anywhere BASE-ADDRESS.MCAST.NET/8
DROP all -- 255.255.255.255 anywhere
DROP all -- anywhere default
DROP all -- anywhere anywhere state INVALID
LSI all -f anywhere anywhere limit: avg 10/min burst 5
INBOUND all -- anywhere anywhere
LOG_FILTER all -- anywhere anywhere
LOG all -- anywhere anywhere LOG level info prefix `Unknown Input'
Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT icmp -- anywhere anywhere limit: avg 10/sec burst 5
LOG_FILTER all -- anywhere anywhere
LOG all -- anywhere anywhere LOG level info prefix `Unknown Forward'
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 10.26.0.202 10.26.0.100 tcp dpt:domain
ACCEPT udp -- 10.26.0.202 10.26.0.100 udp dpt:domain
ACCEPT all -- anywhere anywhere
DROP all -- BASE-ADDRESS.MCAST.NET/8 anywhere
DROP all -- anywhere BASE-ADDRESS.MCAST.NET/8
DROP all -- 255.255.255.255 anywhere
DROP all -- anywhere default
DROP all -- anywhere anywhere state INVALID
OUTBOUND all -- anywhere anywhere
LOG_FILTER all -- anywhere anywhere
LOG all -- anywhere anywhere LOG level info prefix `Unknown Output'
Chain INBOUND (1 references)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT udp -- anywhere anywhere state RELATED,ESTABLISHED
LSI all -- anywhere anywhere
Chain LOG_FILTER (5 references)
target prot opt source destination
Chain LSI (2 references)
target prot opt source destination
LOG_FILTER all -- anywhere anywhere
LOG tcp -- anywhere anywhere tcp flags:FIN,SYN,RST,ACK/SYN limit: avg 1/sec burst 5 LOG level info prefix `Inbound '
DROP tcp -- anywhere anywhere tcp flags:FIN,SYN,RST,ACK/SYN
LOG tcp -- anywhere anywhere tcp flags:FIN,SYN,RST,ACK/RST limit: avg 1/sec burst 5 LOG level info prefix `Inbound '
DROP tcp -- anywhere anywhere tcp flags:FIN,SYN,RST,ACK/RST
LOG icmp -- anywhere anywhere icmp echo-request limit: avg 1/sec burst 5 LOG level info prefix `Inbound '
DROP icmp -- anywhere anywhere icmp echo-request
LOG all -- anywhere anywhere limit: avg 5/sec burst 5 LOG level info prefix `Inbound '
DROP all -- anywhere anywhere
Chain LSO (0 references)
target prot opt source destination
LOG_FILTER all -- anywhere anywhere
LOG all -- anywhere anywhere limit: avg 5/sec burst 5 LOG level info prefix `Outbound '
REJECT all -- anywhere anywhere reject-with icmp-port-unreachable
Chain OUTBOUND (1 references)
target prot opt source destination
ACCEPT icmp -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT udp -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT all -- anywhere anywhere
Как мне сделать чтобы все правила лежали допустим в /etc/rc.d/rc.firewall файле
Re: Решено: Debian + iptables
Например так - iptables-save > /etc/rc.d/rc.firewall. Для восстановления правил iptables-restore < /etc/rc.d/rc.firewall.
Кстати, вывод правил iptables не подтверждает Ваших слов что Вы ничего не настраивали. После установки iptables имеет действия по-умолчанию ACCEPT и только стандартные цепочки INPUT, OUTPUT, FORWARD. Так что скорее всего Вы или доверили конфигурацию некой программе или применили готовый набор правил.
Re: Решено: Debian + iptables
После iptables-save > /etc/rc.d/rc.firewall файл стал выглядеть немного иначе. Не совсем понятно.
Т.е. раньше я видел конфиги что-то вроди этого
а сейчас этот файлик вот на что похож
Как мне его сделать похожим? Чтобы можно было его править и для применения перезапускать?
Т.е. раньше я видел конфиги что-то вроди этого
Код:
#! /bin/sh
#
# rc.fw версии 20050914, Copyright © 2005 Дмитрий Кулаков aka morda <morda89@list.ru>, так-же при участии>:
# Журкин Владимир icCE aka Tuliss (icce@mail.ru)
#
# Чтобы запустить iptables введите команду:
# [root]# /etc/init.d/rc.fw start
#
# Для остановки:
# /etc/init.d/rc.fw stop
#
# Для сохранения списка правил в /etc/rules-save
# /etc/init.d/rc.fw save
#
# Для перезапуска iptables, с восстановлением правил из /etc/rules-save
# /etc/init.d/rc.fw restart
#
# Для журналирования некоторых отброшенных пакетов требуется
# наличие утилиты Ulogd. Действие ULOG означает, что пакет, будет занесен в журнал.
# Чтобы включить журналирования пакетов, раскоментируйте все строчки с -j ULOG
#
# Все предложения и замечания отправляйте на <morda89@list.ru>
#
# Переменная, задающая путь к файлу запуска iptables.
IPT=/sbin/iptables
# Ваш сетевой интерфейс.
INET_IFACE="eth1"
# Номера непривилегированных портов
UNPRIPORTS="1024:65535"
# Задайте в этой переменной порты, которые должны быть открыты в системе.
# Для получения информации обо всех службах, которые могут открыть порты в системе введите команду:
# $ cat /etc/services | grep нужная служба
# Некоторые службы:
# FTP клиент 20, 21
# SMPT клиент 25
# Telnet 23
# Whois 43
# Gopher 70
# Finger 79
# HTTP клиент 80
# POP3 клиент 110
# IMAP4 клиент 143
# Wais 210
# HTTPS клиент 443
OPENPORTS="20,21,25,23,43,70,79,80,110,210,443"
# SSH клиент 22
SSH="22"
# Прописываем порты, которые открыты в системе, но которые не должны быть открыты на сетевых интерфейсах:
CLOSEPORTS="630,640,783,3310,10000"
start_fw()
{
# Включить перенаправление пакетов через ядро.
echo 1 > /proc/sys/net/ipv4/ip_forward
# Загружаем некторое модули. Ip_nat_ftp требуется, чтобы преобразование сетевых адресов (Network Adress Translation)
# производилось корректно с протоколами FTP
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
# Удаление правил
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
# Очищаем нестандартные правила
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X
# Политики по умолчанию.
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT DROP
# Разрешаем прохождение любого трафика по интерфейсу обратной петли.
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
# Отбрасывать все пакеты, которые не могут быть идентифицированы и поэтому не могут иметь определенного статуса.
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state INVALID -j DROP
и т.д.
а сейчас этот файлик вот на что похож
Код:
# Generated by iptables-save v1.3.8 on Thu Feb 14 16:57:33 2008
*nat
:PREROUTING ACCEPT [3961:324249]
:POSTROUTING ACCEPT [62:4963]
:OUTPUT ACCEPT [127:11285]
COMMIT
# Completed on Thu Feb 14 16:57:33 2008
# Generated by iptables-save v1.3.8 on Thu Feb 14 16:57:33 2008
*mangle
:PREROUTING ACCEPT [5302:830365]
:INPUT ACCEPT [5240:824309]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [4808:608670]
:POSTROUTING ACCEPT [4783:608248]
COMMIT
# Completed on Thu Feb 14 16:57:33 2008
# Generated by iptables-save v1.3.8 on Thu Feb 14 16:57:33 2008
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [30:3890]
:INBOUND - [0:0]
:LOG_FILTER - [0:0]
:LSI - [0:0]
:LSO - [0:0]
:OUTBOUND - [0:0]
-A INPUT -s 10.26.0.100 -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -s 10.26.0.100 -p udp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -m limit --limit 10/sec -j ACCEPT
-A INPUT -d 255.255.255.255 -i eth1 -j DROP
-A INPUT -d 10.26.0.255 -j DROP
-A INPUT -s 224.0.0.0/255.0.0.0 -j DROP
-A INPUT -d 224.0.0.0/255.0.0.0 -j DROP
-A INPUT -s 255.255.255.255 -j DROP
-A INPUT -d 0.0.0.0 -j DROP
-A INPUT -m state --state INVALID -j DROP
-A INPUT -f -m limit --limit 10/min -j LSI
-A INPUT -i eth1 -j INBOUND
-A INPUT -j LOG_FILTER
-A INPUT -j LOG --log-prefix "Unknown Input" --log-level 6
-A FORWARD -p icmp -m limit --limit 10/sec -j ACCEPT
-A FORWARD -j LOG_FILTER
-A FORWARD -j LOG --log-prefix "Unknown Forward" --log-level 6
-A OUTPUT -s 10.26.0.202 -d 10.26.0.100 -p tcp -m tcp --dport 53 -j ACCEPT
-A OUTPUT -s 10.26.0.202 -d 10.26.0.100 -p udp -m udp --dport 53 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -s 224.0.0.0/255.0.0.0 -j DROP
-A OUTPUT -d 224.0.0.0/255.0.0.0 -j DROP
-A OUTPUT -s 255.255.255.255 -j DROP
-A OUTPUT -d 0.0.0.0 -j DROP
-A OUTPUT -m state --state INVALID -j DROP
-A OUTPUT -o eth1 -j OUTBOUND
-A OUTPUT -j LOG_FILTER
-A OUTPUT -j LOG --log-prefix "Unknown Output" --log-level 6
-A INBOUND -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INBOUND -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INBOUND -j LSI
-A LSI -j LOG_FILTER
-A LSI -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j LOG --log-prefix "Inbound " --log-level 6
-A LSI -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j DROP
-A LSI -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit --limit 1/sec -j LOG --log-prefix "Inbound " --log-level 6
-A LSI -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -j DROP
-A LSI -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j LOG --log-prefix "Inbound " --log-level 6
-A LSI -p icmp -m icmp --icmp-type 8 -j DROP
-A LSI -m limit --limit 5/sec -j LOG --log-prefix "Inbound " --log-level 6
-A LSI -j DROP
-A LSO -j LOG_FILTER
-A LSO -m limit --limit 5/sec -j LOG --log-prefix "Outbound " --log-level 6
-A LSO -j REJECT --reject-with icmp-port-unreachable
-A OUTBOUND -p icmp -j ACCEPT
-A OUTBOUND -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTBOUND -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTBOUND -j ACCEPT
COMMIT
# Completed on Thu Feb 14 16:57:33 2008
Как мне его сделать похожим? Чтобы можно было его править и для применения перезапускать?
Re: Решено: Debian + iptables
Вы бы почитали что нибудь...
Итак, команда iptables-save сохраняет Ваши правила в внутреннем формате iptables, iptables-restore соответственно считывает указанный ей файл и восстанавливает правила. Для того что бы править правила эти команды применять не надо. Они удобны когда у Вас уже сформированный набор правил с которым Вы просто работаете.
Позволю себе немного расширить свой предыдущий ответ. Вы можете скопировать скрипт с правилами iptables в любое место, например как Вы хотели в /etc/rc.d/rc.firewall, и обеспечить его запуск.
Re: Решено: Debian + iptables
Я, например, сделал так:
/etc/iptables -- правила
/etc/init.d/iptables -- старт/стоп/сайв скрипт(в автозапуске отсутствует)
И поднимаю правила до включения сетевых интерфейсов. Для этого создал файл /etc/network/if-pre-up.d/pre-up-iptables:
Если у кого-то есть какие-то замечания о том как это можно сделать лучше и грамотней, то рад буду выслушать.
/etc/iptables -- правила
/etc/init.d/iptables -- старт/стоп/сайв скрипт(в автозапуске отсутствует)
root@debian-fileserver
debian-fileserver:~# cat /etc/init.d/iptables
#!/bin/bash
start() {
iptables-restore < /etc/iptables
echo "Starting iptables...done."
}
stop() {
iptables -F
iptables -X
iptables -P INPUT ACCEPT
echo "Stopping iptables...done."
}
save() {
iptables-save > /etc/iptables
echo "Saving iptables...done."
}
case "$1" in
start)
start
;;
stop)
stop
;;
save)
save
;;
restart)
stop
start
;;
*)
echo "Usage: /etc/init.d/iptables start|stop|save|restart"
exit 1
;;
esac
exit 0
И поднимаю правила до включения сетевых интерфейсов. Для этого создал файл /etc/network/if-pre-up.d/pre-up-iptables:
root@debian-fileserver
debian-fileserver:~# cat /etc/network/if-pre-up.d/pre-up-iptables
#!/bin/bash
iptables-restore < /etc/iptables
echo ""
echo ""
echo "Restore iptables...done."
echo ""
debian-fileserver:~#
Если у кого-то есть какие-то замечания о том как это можно сделать лучше и грамотней, то рад буду выслушать.
Re: Решено: Debian + iptables
free4net писал(а): ↑14.02.2008 23:37Я, например, сделал так:
/etc/iptables -- правила
/etc/init.d/iptables -- старт/стоп/сайв скрипт(в автозапуске отсутствует)
И поднимаю правила до включения сетевых интерфейсов. Для этого создал файл /etc/network/if-pre-up.d/pre-up-iptables:
Если у кого-то есть какие-то замечания о том как это можно сделать лучше и грамотней, то рад буду выслушать.
Сделал так как ты написал.
Код: Выделить всё
/etc/init.d/iptables restart
Stoping iptables...done
iptables-restore: line 2 failed
Starting iptables...done
Из-за ошибки не применяться правила(
В логе messege ничего подозрительного не нашел.
Да чуть не забыл в машине установлен Firestarter, может поэтому ошибки?
Re: Решено: Debian + iptables
ну и развели вы тут господа...
http://debian-russian.org/debian-faq/netwo...nit-d-iptables/
p.s. просьба не относящиеся к дебиан вопросы обсуждать:
а) по-одному на тему
б) в секции администрирование
http://debian-russian.org/debian-faq/netwo...nit-d-iptables/
p.s. просьба не относящиеся к дебиан вопросы обсуждать:
а) по-одному на тему
б) в секции администрирование
Re: Решено: Debian + iptables
Как у вас всё сложно
Можно долго мучиться ковырять iptables вручную с негарантированным результатом, а можно просто поставить http://packages.debian.org/arno-iptables-firewall и освободить своё время на более интересные вещи.
Можно долго мучиться ковырять iptables вручную с негарантированным результатом, а можно просто поставить http://packages.debian.org/arno-iptables-firewall и освободить своё время на более интересные вещи.
Re: Решено: Debian + iptables
Anybis
Сделал так как ты написал.
Код
/etc/init.d/iptables restart
Stoping iptables...done
iptables-restore: line 2 failed
Starting iptables...done
Из-за ошибки не применяться правила(
В логе messege ничего подозрительного не нашел.
Здается мне, надо посмотреть вторую строчку....
Re: Решено: Debian + iptables
ОС Debian Etch 4.0 r2 - после запуска правил iptables строкой "pre-up /etc/iptables.rules" в /etc/network/interfaces
стала надолго останавливаться загрузка на строке "Starting NFS common utilites: statd". Проблему решмл просто - chmod 600 /etc/init.d/nfs-common но мне кажется что это не совсем правильно.
P.S. как убрать "IPv6 over IPv4 tunneling driver" ? все равно IPv6 нет...
стала надолго останавливаться загрузка на строке "Starting NFS common utilites: statd". Проблему решмл просто - chmod 600 /etc/init.d/nfs-common но мне кажется что это не совсем правильно.
P.S. как убрать "IPv6 over IPv4 tunneling driver" ? все равно IPv6 нет...