我正在尝试在命令行中关闭连接。例如,我尝试使用此 Nmap 命令关闭我的 SSH 连接:
$ sudo nmap -p 22 --scanflags RST <mySSHServerPublicIP>
$ sudo nmap -p 22 --scanflags FIN <mySSHServerPublicIP>
一旦完成 TCP 握手(SYN、SYN-ACK、ACK 序列完成)并建立连接,我的理解是服务器或客户端通过发送 FIN 正常关闭此连接,或者通过发送 RST 非正常关闭此连接。
我还尝试欺骗我的服务器来关闭客户端上的连接:
$ sudo nmap -p 23926 --scanflags FIN -S <mySSHServerPublicIP> <MyLocalIP> -Pn -n -e <interface>
这些命令没有任何效果,有人知道为什么它不关闭连接吗?
答案1
Nmap 不是适合这项工作的工具。
为了关闭连接,我需要预测 TCP 序列号,将其加一并回复 FIN 或 RST。看来 Scapy 可以让我做到这一点……我将在进行一些实际测试后更新此答案