Sur Article sur le durcissement d'OpenVPN il est recommandé que le démon du serveur abandonne ses privilèges après le démarrage sous Linux :
OpenVPN a été très soigneusement conçu pour permettre aux privilèges root d'être abandonnés après l'initialisation, et cette fonctionnalité devrait toujours être utilisée sur Linux/BSD/Solaris. Sans privilèges root, un démon serveur OpenVPN en cours d'exécution constitue une cible bien moins attrayante pour un attaquant.
Ils recommandent de définir les directives suivantes :
user nobody
group nobody
ce qui, je suppose, signifie que le démon sera exécuté en tant que nobody
une fois le démarrage terminé.
Cependant, il y a plusieurs fichiers auxquels OpenVPN accède au moment de l'exécution, notamment le fichier LCR :
Lorsque l'option crl-verify est utilisée dans OpenVPN, le fichier CRL sera relu chaque fois qu'un nouveau client se connecte ou qu'un client existant renégocie la connexion SSL/TLS (par défaut une fois par heure). Cela signifie que vous pouvez mettre à jour le fichier CRL pendant que le démon du serveur OpenVPN est en cours d'exécution, et que la nouvelle CRL prend effet immédiatement pour les clients qui se connectent.
Je m'inquiète donc naturellement de l'incompatibilité de ces deux fonctionnalités - si le démon abandonne les privilèges après le démarrage, comment peut-il lire les données de l'ordinateur ? /etc/openvpn/server/crl.pem
(propriétaire root:root
, mode 0600
; application de SELinux) au moment de l'exécution ?
- Si le démon est effectivement incapable d'accéder au fichier CRL au moment de l'exécution, existe-t-il un bon moyen de contourner ce problème ?
- Si le démon peut accéder aux fichiers CRL au moment de l'exécution, j'aimerais savoir comment cela est possible.
Le système d'exploitation est RHEL8.5 x86_64, si cela est pertinent.