需要在后台检查正在从我的系统上传的文件

需要在后台检查正在从我的系统上传的文件

我注意到系统应用中有时上传速度很快,即使没有运行任何应用程序也是如此。我怀疑这可能是某些恶意软件所为,所以我想检查哪个 IP 被哪个服务访问,这样我就可以确保我的系统是安全的。

顺便说一句,内置应用程序似乎没有向我提供该信息。

答案1

您可以使用名为tcpdump正如@FedonKadifeli 提到的,但是这有一个学习曲线,并且由于数据太多,很难动态分析数据。

但是你可以使用图形替代方案(这个区域是我更喜欢图形应用程序而不是 CLI 的区域之一),名为Wireshark

但这并不能告诉你哪个程序正在耗尽你的带宽。为了找出答案,你可以使用网络状态

netstat -np

这不仅会显示系统中的所有网络连接,而且还会列出所有相关进程及其 PID。

然后转到 Wireshark 并设置过滤器以监控系统中的特定外部 IP 地址或特定端口。

例如,活动互联网连接(无服务器)输出部分网络状态在我的系统中是这样的:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 192.168.1.104:51116     212.103.50.247:9002     ESTABLISHED 3029/firefox

您可以看到 Firefox 进程的 PID 为3029已建立连接(已确立的)到地址212.103.50.247从本地端口51116到远程端口9002当然协议是TCP

现在您可以进入 Wireshark 并开始监听您的 Wi-Fi 接口(可能类似于wlanXwlpXYZ):

在此处输入图片描述

然后添加一个过滤器,然后您就可以看到发送到该地址或从该地址接收的数据包:

在此处输入图片描述

但请注意,如果数据包是加密

请注意,安装 Wireshark 后,您必须将您的用户添加到wireshark组(通过sudo addgroup your_user wireshark),然后注销并重新登录,以便能够在没有 root 访问权限的情况下捕获数据包。此外,当您通过以下方式安装它时易于, 这后置脚本应该问你这个问题:

在此处输入图片描述

您应该选择是的

如果你不这样做,那么你必须以 root 身份打开 Wireshark 才能捕获数据包,因为 wireshark 使用libpcap捕获数据包,而 libpcap 本身利用网链通信平台能够从相应的内核基础设施接收数据包的内容。而 Netlink 协议需要构建原始套接字这需要 Unix 系统中的 root 权限。

以 root 身份运行像 Wireshark 这样拥有近 150 万行代码的图形程序是相当危险的,因此以普通用户身份运行它是个好习惯。


希望能帮助到你。

相关内容