На блоке centos я хотел бы сбросить tcp соединения - я хотел бы посмотреть, пытается ли сервер отправлять запросы на определенный IP. Обычно tcpdump делает то, что нужно - но tcpdump не устанавливается, и установка программного обеспечения невозможна (из-за политики компании). Боюсь, netstat не покажет мне ни одного запроса.
Поэтому мне было интересно, какие еще варианты у меня есть. У меня есть root-доступ на сервере.
Ответы:
Конечно, у вас есть
python
?Это завершится с «GOT TARGET», предоставив IP-адрес возвращающихся совпадений. Так как TCP должен что-то отправлять обратно во время рукопожатия, он должен отлавливать что-либо с определенного целевого адреса. Это не волнует, если протокол TCP или UDP, хотя (и я не проверяю).
Не забудьте поменять TARGET и INTERFACE.
источник
socket.error: (1, 'Operation not permitted')
Я бы действительно попытался получить tcpdump. При этом, некоторые альтернативы, чтобы увидеть, существует ли определенное соединение для IP:
Трассирование:
Lsof:
NetStat:
источник
Iptables имеет возможность отладки и может использоваться для анализа трафика.
Решение описано на URL ниже.
Правила отладки в Iptables
Также стоит прочитать следующий URL-адрес, чтобы настроить запись результатов трассировки в файл по вашему выбору.
http://backreference.org/2010/06/11/iptables-debugging/
Я не считаю это решение равным tcpdump, но это можно сделать с помощью минимальной установки Centos. Вы должны быть осторожны, чтобы не заполнять диск журналами, потому что tcpdump намного более эффективен в использовании диска. Отключите ведение журнала, когда это не требуется.
Вы можете использовать следующее в качестве основного шаблона в вашем скрипте.
источник
Если вам нужно специальное программное обеспечение для выполнения вашей работы, а вам это не разрешено, вы либо не делаете хорошего экономического обоснования, либо не продаете свои идеи нужным людям ... или вы не контролируете эту систему ... ,
Если бы мне поручили что-то сделать и мне понадобилась информация об отладке / устранении неполадок, которая вам нужна в этом случае, я бы использовал правильный инструмент. Это вероятно
tcpdump
илиtshark
. Да, это части программного обеспечения, но я бы посчитал их более важными утилитами . Фактически это утилиты, которые можно временно установить или загрузить в систему и удалить без происшествий (вариант сменного носителя? ... подсказка )Но дело в том, что обходной обход политики компании, вероятно, требует больше усилий, чем получение одобрения для этого варианта использования.
источник
tcpdump
другом месте, просто скопировать их в / tmp и запустить оттуда?Кайл предложил несколько отличных вариантов. Еще один будет использовать
iptables
:По сути, это правило учета. Он явно не разрешает и не запрещает трафик, поэтому используется политика по умолчанию для цепочки OUTPUT (по умолчанию ACCEPT). Однако любой соответствующий пакет будет увеличивать счетчики для правила.
При желании вы также можете записать подробности о пакете с помощью
-j LOG
опции:Журналы попадают в средство ведения журнала ядра, поэтому они должны отображаться в / var / log / messages для производных Red Hat и /var/log/kern.log в производных Debian. Это также будет видно в выводе
dmesg
, как показано.tcpdump
Однако, в отличие от этого, он не будет регистрировать полное содержимое пакета, а только содержимое заголовка пакета.источник
Поскольку ваш сервер подключается к определенному IP, я предполагаю, что это будет порт, о котором вы также знаете?
В любом случае
netstat
илиss
предназначены для того, чтобы делать то, что вы хотите. Вы можете сделать то же самое с любой командой:где
A.B.C.D
представляет адрес IPv4 иn
представляет номер порта, к которому ваш сервер подключается на удаленной стороне. Например:Или, если вы просто хотите знать, что соединение установлено:
Если вы не знаете номер порта, к которому вы пытаетесь подключиться, задание будет более сложным, так как TCP откроет порт с обеих сторон диалога для данных и пакетов ACK. В этом случае вы можете просто выполнить поиск IP-адреса, чтобы показать, что было установлено любое соединение, будь то с или с.
Наконец, вы можете зациклить это на вашем сердце, чтобы использовать его в качестве инструмента мониторинга:
источник