Cómo matar una conexión TCP usando la utilidad tcpkill

11

Estoy tratando de matar una conexión TCP ESTABLECIDA usando tcpkill. La conexión es una conexión HTTPS abierta. Aparece en netstat como:

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

Entonces, según la página de manual , entro:

$ tcpkill -i eth1 -9 port 443

La utilidad tcpkill genera:

tcpkill: listening on eth1 [port 443]

... y luego simplemente se cuelga. Después de esperar unos 15 minutos, no estoy seguro de lo que está pasando aquí.

¿Estoy haciendo algo mal?

Charles Salvia
fuente

Respuestas:

10

Para que tcpkill funcione (es decir, cree un paquete de reinicio que tenga el número de secuencia y el puerto de origen correctos), debe haber tráfico. Si no se imprime nada más, entonces no hay tráfico. Para verificar que puedas correr tcpdump -i eth1 port 443.

Mark Wagner
fuente
3

Tuve que matar una conexión establecida en la que no había tráfico (una sesión de depuración en una JVM).

tcpkillcomo se explica en la respuesta de @Mark Wagner no pudo hacerlo, sin embargo, killcx1.0.3 ( enlace ) sí (Ubuntu 10.04).

Es un script perl que depende de algunas bibliotecas.

Editar

En una conexión que no pudo ser eliminada con killcxla combinación de ambos tcpkilly lo killcxhizo:

Di la conexión si de LOCAL:PORTL aREMOTE:PORTR

  • En una tcpkill inicio de terminal: tcpkill port PORTL. Tcpkill comenzará a escuchar el tráfico
  • En un segundo lanzamiento de terminal killcx: killcx REMOTE:PORTR
Bruno Grieder
fuente