Come uccidere una connessione TCP usando l'utilità tcpkill


11

Sto cercando di uccidere una connessione TCP STABILITA usando tcpkill. La connessione è una connessione HTTPS aperta. Appare su netstat come:

tcp        0      0 X.X.X.X:55601         X.X.X.X:https    ESTABLISHED

Quindi, come nella pagina man , entro:

$ tcpkill -i eth1 -9 port 443

L'utilità tcpkill genera:

tcpkill: listening on eth1 [port 443]

... e poi si blocca. Dopo aver atteso per circa 15 minuti, non sono sicuro di cosa stia succedendo qui.

Sto facendo qualcosa di sbagliato?

Risposte:


10

Perché tcpkill funzioni (ovvero, crea un pacchetto di ripristino con il numero di sequenza e la porta di origine corretti), deve esserci traffico. Se non viene stampato più nulla, non c'è traffico. Per verificare che potresti correre tcpdump -i eth1 port 443.


3

Ho dovuto interrompere una connessione stabilita su cui non c'era traffico (una sessione di debug su una JVM).

tcpkillcome spiegato nella risposta di @Mark Wagner non è stato possibile farlo, tuttavia killcx1.0.3 ( link ) ha fatto (Ubuntu 10.04).

È uno script perl che ha una dipendenza da alcune librerie.

modificare

Su una connessione che non è stato possibile eliminare con killcxla combinazione di entrambi tcpkille killcxlo ha fatto:

Pronuncia la connessione se da LOCAL:PORTL a aREMOTE:PORTR

  • In un tcpkill inizio terminale: tcpkill port PORTL. Tcpkill inizierà ad ascoltare il traffico
  • In un secondo terminale avvia killcx: killcx REMOTE:PORTR
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.