密码保护系统文件? (例如/etc/resolv.conf)

密码保护系统文件? (例如/etc/resolv.conf)

我正在尝试通过 OpenDNS 限制网络访问来进行家长控制。 OpenDNS 帐户密码将交给值得信赖的人。现在,我想对 /etc/resolv.conf 进行一些限制,也许使用密钥或密码,但不是 root 密码。另外,我不想损害内核的可访问性。这可能吗?

答案1

不,不是你想要的方式。 root 可以访问系统上的每个文件。您可以使修改文件变得更加困难(注意:它必须是公开可读的),但如果您具有 root 访问权限,则无法阻止自己修改它。

文件没有密码保护功能。即使有一个,作为 root,你也可以将其删除。 (您可以加密文件,但这会使其无法读取。)

使修改文件变得更加困难的一种方法是设置不可变属性: chattr +i /etc/resolv.conf。那么修改它的唯一方法就是运行chattr -i /etc/resolv.conf. (或者进入较低级别并修改磁盘内容 - 如果操作错误,则擦除数据的风险非常高。)

如果您想在网页浏览中放置难以绕过的过滤器,请在单独的路由器盒中进行。让其他人配置它,但不要让他们向您提供管理员密码。

答案2

OpenDNS 帐户密码将交给值得信赖的人。

好的。您希望非 root 用户能够进行有限的更改。

你可以这样做:

  1. 创建一个新组,例如“OpenDNS”。
  2. chgrp OpenDNS /etc/resolv.conf
  3. chmod g+rw /etc/resolv.conf
  4. 将受信任的用户添加到“OpenDNS”组。

这假设 /etc/resolv.conf 上的权限不受系统其他部分的监管。

相关内容