How to kill TCP connection in CentOS
Запись создана 10 декабря, 2008
Убить tcp соединения в Centos (да и не только) можно утилитой tcpkill. Утилита входит в пакет dsniff, ставим из репозитория epel (на данный момент в этом репозитарии dsniff новее) или rpmforge под CentOS 5.2
[cc lang=»bash»]
[root@srv001 ~]# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
[root@srv001 ~]# yum install dsniff
[/cc]
Ну, и несколько примеров использования:
1. убить все исходящие соединения с интерфейса eth0 на порт 21
[cc lang=»bash»]tcpkill -i eth0 port 21[/cc]
2. убить все соединения исходящие/входящие с хоста
[cc lang=»bash»]tcpkill host 192.168.0.1
tcpkill host hostname.ru[/cc]
3. убить все ip пакеты между хостом 192.168.0.1 и любым другим, кроме 192.168.0.10
[cc lang=»bash»]tcpkill ip host 192.168.0.1 and not 192.168.0.10[/cc]
Ну и различные от этого вариации. Прошу учесть тот факт что если пакеты убивать нужно идущие на/с ip «зацепленного» на логический интерфейс (например eth0:1), то нужно явно это указать, как-то так:
[cc lang=»bash»]tcpkill -i eth0:1 host 123.123.123.1[/cc]
Схожие темы
» Запись из раздела CentOS Linux, networking, Unix | 4 комментария
Комментарии
4 комментария to “How to kill TCP connection in CentOS”
Ответить
на FreeBSD делаю так:
netstat -n -p tcp | egrep ‘IP’ | awk ‘{print $4″ «$5}’ | awk -F . ‘{print $1″.»$2″.»$3».»$4″ «$5″.»$6″.»$7».»$8″ «$9}’ | xargs -n 4 tcpdrop
где IP — адрес, с которым нужно оборвать соединение.
может конечно не самый оптимальный вариант =) но другого не придумал..
Артурище, приколись:
# ss -n | grep 188.162.64.122
ESTAB 0 0 18x.93.xx.150:465 188.162.64.122:59271
ESTAB 0 0 18x.93.xx.150:465 188.162.64.122:59262
# tcpkill host 188.162.64.122
(тут генерится куча ресетов, обрываем)
и они суки расплодились, правда не понятно, это фейк или оригиналы:
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59286
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59287
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59284
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59282
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59283
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59280
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59281
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59293
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59290
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:59291
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:63526
ESTAB 0 0 18x.93.xxx.150:465 188.162.64.122:8261
А если на iptables перекрыть все коннекты, а затем кильнуть, появляются новые?
iptstate на эту тему интересная утилитка, можно iptstate -s 188.162.64.122 и буквой «x» убивать сразу же видеть плодятся или нет.
именно так не пробовал. у меня стояло для сорс айпишника правило на 2 одновремменых коннекта, через -m connlimit