ufw
有没有类似win防火墙的过滤功能?
基本上,我不仅可以创建基于 ip/port/proto 的规则,还可以将此类限制绑定到系统内的特定可执行文件。
深入阅读该man
页面并没有发现任何迹象,所以我认为这是不可能的,但我也注意到关于 ufw 的 python API 的文档令人难以置信的缺乏,所以我希望找到一些有经验的用户可以指出我朝着正确的方向前进。
答案1
当我在寻找类似的东西时,建议似乎是“在单独的用户下运行程序”——因为你可以编写每个用户的 iptables 规则——http://www.cyberciti.biz/tips/block-outgoing-network-access-for-a-single-user-from-my-server-using-iptables.html。
话虽如此,selinux 规则可能会满足您的需求 -https://serverfault.com/questions/563872/selinux-allow-httpd-to-connect-to-a-specific-port。听起来 selinux 附带了常见二进制文件及其常用端口的规则 - 就像上面链接中的 httpd 一样。为任意二进制文件编写规则和/或锁定所有不满足我不知道的规则的连接需要什么,但它可能值得一看。
编辑:只是一些类似的现有问题:
https://stackoverflow.com/questions/4314163/create-iptables-rule-per-process-service
其中之一指出了这一点:https://sourceforge.net/projects/leopardflower/- 如果您正在寻找封装在 GUI 中的东西,并且已经处理了大部分繁琐的事情,那么这可能符合要求。我链接到了 sourceforge 而不是较新的 github 页面,因为 sourceforge 那里有一个屏幕截图,可以让您了解您正在查看的内容 - 但您可能希望从 github 获取较新的版本,而不是 2.5 年的旧版本sourceforge 如果它看起来像你想要的。