Esto es casi (pero no teóricamente) imposible. Una vez que el usuario tiene acceso a sudo que no está muy limitado, tiene acceso a la raíz; por ejemplo, ejecutar sudo / bin / bash creará un shell bash con privilegios de root y podrá bipass cualquier mecanismo implementado por root.
La forma teórica de hacerlo sería crear reglas de sudo que permitan al usuario hacer casi cualquier cosa que quiera / necesite, excepto la capacidad de ejecutar todos los comandos que podrían acceder a este recurso, casi con toda seguridad no es posible hacerlo en la práctica.
También puede usar SELinux o Apparmour para limitar la capacidad de acceder a los directorios, pero nuevamente, alguien con root puede deshacer esto.
Es posible que pueda frustrar el acceso al recurso especificado manteniéndolo encriptado y montando el volumen encriptado. Espero que esto no impida el acceso, pero impedirá el acceso casual. [Noto que cuando uso FUSE para montar remotamente un sistema de archivos como usuario, solo el usuario que montó el sistema de archivos puede acceder a él. Por supuesto, como soy root, puedo simplemente volver a ese usuario y ver los archivos, y sin duda hay otras formas de hacerlo] Además, si el recurso no está montado cuando el usuario tiene acceso root, y la clave es no almacenados en la memoria, tampoco pueden obtenerlo.
sudo
es altamente configurable y existe, por lo que no necesita otorgar acceso completo a los usuarios. ¿Qué necesitan exactamente para poder hacer?