Как понять, почему пакет считал НЕДОПУСТИМЫМ 'iptables'?

Следующий страшный 1 лайнер:

perl -MFile::Copy -e 'opendir(DIR,$ARGV[0]);$n=1000; (-f $_) && copy($_,"$ARGV[1]/$_") while($n-- && readdir(DIR)) 

работы для файла, содержащего пробелы, кавычки, и т.д., которые имеют тенденцию повреждать основанные на оболочке решения (за исключением искривлений $IFS). 'Курс, если Ваши имена файлов ведутся себя, оболочка, прекрасен.

Править: добавленная проверка на копирование только файлов.

11
03.12.2012, 09:56
1 ответ

Пакеты могут быть в различных состояниях при использовании проверки пакетов с сохранением информации.

  • Новый: пакет не является частью никакого известного потока или сокета, и флаги TCP имеют SYN, обдумал.
  • Установленный: пакет соответствует потоку или сокету, прослеженному CONNTRACK и имеет любые флаги TCP. После того, как начальное квитирование TCP завершается, SYN укусил, должно быть выключено, чтобы пакет был в установленном состоянии.
  • Похожие страницы: Пакет не соответствует никакому известному потоку или сокету, но пакет ожидается, потому что существует существующий сокет, который утверждает его (примерами этого являются данные по порту 20, когда существует существующий сеанс FTP на порте 21, или данные UDP для существующего соединения SIP на порте TCP 5060). Это требует связанного ALG, или
  • Недопустимый: Если ни одно из предыдущих состояний не применяется, пакет находится в состоянии INVALID. Это могло быть вызвано различными типами скрытых сетевых датчиков, или это могло означать, что у Вас заканчивается CONNTRACK записи (который необходимо также видеть указанный в журналах). Или это может просто быть совершенно мягко.

В Вашем случае, пакет, что Вы цитируете шоу, которые отмечает TCP ACK и RST, и что исходный порт 80. То, что это означает, то, что веб-сервер в 31.13.72.7 (который, оказывается, Facebook), отправил пакет сброса Вам. Совершенно невозможно сказать, почему, не видя пакеты, которые прибыли перед ним (если таковые имеются). Но скорее всего это отправляет Вам сброс по той же причине, Ваш компьютер думает, что это недопустимо.

24
27.01.2020, 19:57
  • 1
    Таким образом, нет никакого способа попросить, чтобы ядро (или iptables) добавило своего рода "подпись" к пакету, который содержал бы причину его являющийся недопустимым? –  mbaitoff 03.12.2012, 11:21
  • 2
    По определению, нет. Недопустимый означает, что это не соответствует ни к каким известным состояниям. Другими словами, это - ядро, говоря, что "Я не знаю, почему я получил этот пакет". –  bahamat 03.12.2012, 11:28
  • 3
    Для отладки определенных Недопустимых пакетов, смотря на них в Wireshark от дампа мог бы работать... Я видел пакеты с полями SACK (на самом деле, нормальные порядковые номера изменяются брандмауэром, и те в опции SACK не, приводя к значениям SACK, являющимся недопустимым), который был поврежден брандмауэром, отбрасываемым как недопустимый... –  Gert van den Berg 31.12.2012, 11:00

Теги

Похожие вопросы