I understand that Netlink is the modern and correct way to communicate kernel and userspace in Linux.
I have a kernel module that needs to be configurable, so I'm using Netlink to have it talk to a userspace application.
Everything works wonders, but it appears to me any user can talk to my module. I could lock the application using permissions and such, but the project is Open Source, so any user can easily compile the userspace application. Ergo, any user can configure my kernel. And that doesn't sit well with me.
It seems I'm missing something very important here, but the Netlink documentation I find is all about how to get it running, not how it fits in the real world.
How can I restrict access to the module's Netlink socket? If that is impossible, what else can be done about it?