| Here's a short article on it by Dan "Mr. SELinux" Walsh himself [1]. To understand it, though, you need to understand at least a little bit about type enforcement, which is a somewhat steep learning curve to get over. If you have nftables (replaces iptables, default back-end to firewalld in RHEL 8), you might consult /usr/share/doc/nftables/examples/secmark.nft but again, this requires some background on nftables (or iptables—they're both just front-ends to the kernel netfilter module) and are pretty similar. However it's also worth noting that most one could also stand to learn a thing or two about netfilter if this is a topic they're interested in. For example, netfilter allows you to filter packets based on the user, group, or pid of the process. I found this page [2] quite helpful, and especially the packet flow diagram contained within it. [1]: https://www.linux.com/training-tutorials/using-selinux-and-i... [2]: https://www.booleanworld.com/depth-guide-iptables-linux-fire... |