我在大学里总是使用公共 WiFi。因此我想到设置防火墙。这并不像我想象的那么容易。我目前的设置是,除 ssh 之外的所有传入连接都被阻止。有没有办法可以配置 Ubuntu,以便每当建立/尝试新的连接时(无论是传入还是传出)都向我发送通知?
我的想法是,我需要实时获知此事,最好是通过notify-send
。然后我应该能够抑制一些多余的通知。可以这样做吗?
答案1
您可以监视 的输出netstat
。标志-tpan
允许查看哪个程序使用了哪个端口。理论上,您可以编写一个简单的脚本,不断检查 的连接数 grep
,如果连接数发生变化,您会收到通知。请注意,sshd
除非您使用 sudo 运行该命令,否则不会显示,因此脚本可能也需要使用 sudo 运行。我怀疑notify-send
是否允许列出大量连接,但您可以使用zenity
它的列表对话框。
另一种方法不是监控who
命令,尽管仅适用于传入连接。由于您阻止了除 ssh 之外的所有连接,因此您可能更关心谁登录了您的计算机。您可以使用watch -n5 -d who
,其中-n
是重复命令的间隔(以秒为单位),-d
是突出显示命令的上一个结果和当前结果之间差异的标志
答案2
你可以,但这不是一个好主意:你的通知系统将被来自互联网和你的传出连接的持续嗅探/探测所淹没……
如果你还想继续前进,我会:
然后打开终端窗口并执行以下操作:
tail --follow /var/log/iptables.log
然后你就会明白为什么通知并不实用……