LINUX.ORG.RU

Wireshark, tcpdump

А вообще, сформулируйте задачу получше. Возможно есть более подходящее решение.

edigaryev ★★★★★
()
Последнее исправление: edigaryev (всего исправлений: 1)

wireshark, tcpdump, iptables -j LOG / ULOG

AITap ★★★★★
()
Ответ на: комментарий от edigaryev

Стоит Linux Debian без графической оболочки, на ней есть программа которая с определенным интервалом делает запросы к одному из нескольких ip-адресов, (запрос как говорит разработчик пакетом http), на этот запрос с любого действующего ip должен прийти ответ тоже пакетом http и после этого работа программы продолжается дальше, если же ответ не приходит то программа автоматически закрывается. Если в iptables поставить:

$iptables -P INPUT ACCEPT
то пакет проходит нормально и программа работает без перебоев. Но мне нужно чтобы INPUT по умолчанию было DROP. Пробовал открыть доступ ip-шникам так:
$iptables INPUT -s ( один из ip) -m state NEW,RELATED,ESTABLISHED j ACCEPT
Пингуется этот ip после запуска системы нормально но пакеты не доходят. Если INPUT по умолчанию стоит ACCEPT то при просмотре пакетов идущих через iptables видно что строку
$iptables INPUT -s ( один из ip) -m state NEW,RELATED,ESTABLISHED j ACCEPT
пакеты проходят нормально. Нужно как то по другому давать доступ ip-шникам.

Andreu
() автор топика
Ответ на: комментарий от Andreu

Включи логгирование iptables, всё увидишь

anonymous
()
Ответ на: комментарий от Andreu
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Для вашего случая (когда default policy входящих соединений DROP, исходящих ACCEPT и программа является инициатором соединения) для того чтобы программа могла соединяться с удаленным сервером и получать необходимые данные этого правила должно быть достаточно, при условии что другие правила не влияют на установление соединения и прохождение важных для нас пакетов.

Если что-то не работает, смотрите счетчики срабатывания правил (iptables -vxnL) или настройте логирование (как написали выше).

А вообще надо смотреть на остальные правила (iptables-save).

edigaryev ★★★★★
()
Ответ на: комментарий от edigaryev

Всем спасибо за ответы буду с новыми силами разбираться.

Andreu
() автор топика
Ответ на: комментарий от Andreu

есть программа которая с определенным интервалом делает запросы к одному из нескольких ip-адресов, (запрос как говорит разработчик пакетом http), на этот запрос с любого действующего ip должен прийти ответ

Я чего-то не понял. Ответ приходит «с любого действующего ip» или конкретно с IP, к которому программа послала запрос? То что программа может послать запрос к любому из набора IP - понятно.

И еще. Предлагаю разбить правило:

$iptables INPUT -s ( один из ip) -m state NEW,RELATED,ESTABLISHED -j ACCEPT
на два:
$iptables INPUT -m state RELATED,ESTABLISHED -j ACCEPT
$iptables INPUT -s ( один из ip) -m state NEW -j ACCEPT
Так лучше смотреть прохождение пакетов по цепочке.

ЗЫ: то что у Вас перед «j ACCEPT» не стоит "-" - опечатка или злой умысел?

funky
()
Ответ на: комментарий от funky

то что у Вас перед «j ACCEPT» не стоит "-" - опечатка или злой умысел?

А ничего что у вас и у ТС'а в вызове iptables отсутствует ключ -A (или -I)? А еще после -m state идут сразу состояния соединения, хотя нужно их отдельно передавать с ключом --state.

edigaryev ★★★★★
()
Ответ на: комментарий от edigaryev

(: Каюсь! Но я то писал из головы. А вот как у автора с синтаксисом в реале?

ЗЫ: между прочим «у вас» - Вас пишется с большой буквы. ;)

funky
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.