Ste*_*sen 3 security linux init.d
我正在改编我通过谷歌搜索找到的一些示例来构建一个初始化脚本,以将 VirtualBox OSE 虚拟机作为守护程序运行。我想为 VNC 访问 VM 指定一个密码,这必须作为 VBoxHeadless 命令的参数提供。
通常,标准用户可以读取 init 脚本,这似乎是一个有用的约定,但我也不希望此 VM 的 VNC 密码存储在易于访问的纯文本中。
处理这种情况的最合适/最传统的方法是什么?也许将根可读的支持数据文件放在某个地方,并让 init 脚本从那里加载值?
将一个只能由 root 读取的文件放入某个地方/etc是一种我至少在 Debian 中遇到过几次的技术(dbconfig-common例如,这样做)。
考虑到 init 以 root 身份运行并且已经有很多敏感文件/etc(证书的私钥就是其中之一),使用属于 root 的普通密码获取文件对我来说听起来是个好主意。
放置此类文件的正确路径可能因发行版而异。我个人更喜欢例如/etc/name-of-init-script/config在任何其他位置/etc放置用户文件的好地方。/var/lib应该为由您的发行版的数据包管理器(或他们可能称之为的任何东西)管理的文件保留类似的地方,并安装在那里写入数据的软件。