如何在 Linux 服务器中捕获 SYN tcpdump 数据包?
How do I capture SYN tcpdump packets within a Linux server?
我正在尝试使用 python 使用 tcpdump 处理所有服务器连接,并且使用此命令运行良好:
tcpdump -tttt -nn 'tcp[tcpflags] & tcp-syn == tcp-syn'
这是它捕获的内容:
- 来自另一台机器的服务器的任何连接
- 运行 在盒子上,它会记录一个 telnet 到端口 22
这是它没有的地方:
- 如果我运行 ssh localhost
- 任何时候机器上的任何服务器(或大多数进程)同步到同一台机器上的监听端口
所以我从外到内获取所有流量,但机器没有发生任何事情。
我想我弄错了一些标志,但我不确定是什么。有任何想法吗?我只是想监视机器内部的服务器连接 activity,但只有在外部时才获取日志。
localhost 上的连接将通过 lo
接口。尝试使用 -i any
选项让它监听所有网络接口。
使用-i any
捕获所有接口的数据,包括loopback("localhost to localhost")
您可以通过
排除您自己的IP(ssh客户端IP)
tcpdump -tttt -nn 'tcp[tcpflags] & tcp-syn == tcp-syn && ! host <ssh-client-ip>'
例如,如果您从 10.2.3.4 ssh,那么命令应该是
tcpdump -tttt -nn 'tcp[tcpflags] & tcp-syn == tcp-syn && ! host 10.2.3.4'
希望对您有所帮助。
我正在尝试使用 python 使用 tcpdump 处理所有服务器连接,并且使用此命令运行良好:
tcpdump -tttt -nn 'tcp[tcpflags] & tcp-syn == tcp-syn'
这是它捕获的内容:
- 来自另一台机器的服务器的任何连接
- 运行 在盒子上,它会记录一个 telnet 到端口 22
这是它没有的地方:
- 如果我运行 ssh localhost
- 任何时候机器上的任何服务器(或大多数进程)同步到同一台机器上的监听端口
所以我从外到内获取所有流量,但机器没有发生任何事情。
我想我弄错了一些标志,但我不确定是什么。有任何想法吗?我只是想监视机器内部的服务器连接 activity,但只有在外部时才获取日志。
localhost 上的连接将通过 lo
接口。尝试使用 -i any
选项让它监听所有网络接口。
使用-i any
捕获所有接口的数据,包括loopback("localhost to localhost")
您可以通过
排除您自己的IP(ssh客户端IP) tcpdump -tttt -nn 'tcp[tcpflags] & tcp-syn == tcp-syn && ! host <ssh-client-ip>'
例如,如果您从 10.2.3.4 ssh,那么命令应该是
tcpdump -tttt -nn 'tcp[tcpflags] & tcp-syn == tcp-syn && ! host 10.2.3.4'
希望对您有所帮助。