限制不同用户访问某些网站

限制不同用户访问某些网站

在基于 Debian 的系统上;作为超级用户,我需要限制对某些网站的访问,但仅限于特定用户。例如,用户 1 的访问是 abc.com,用户 2 的访问是 xyz.com...

我尝试了 /etc/hosts 文件。添加如下行

127.0.0.1 abc.com

满足了我的要求。但是它适用于所有用户,因为只有一个 hosts 文件。据我所知,无法为不同的用户配置 hosts 文件。还有其他方法可以做到这一点吗?

答案1

如果用户是本地登录的,可以使用iptables:

iptables -A OUTPUT -o EXTERNAL_IF -m owner --uid-owner USERNAME -d DESTINATION_WEB -j REJECT

在哪里:

  • EXTERNAL_IF 是 Internet 绑定接口的名称(例如 eth0)
  • USERNAME 是受限用户的登录 ID
  • DESTINATION_WEB 是目标网站的 DNS 名称或 IP 地址。请注意托管许多网站的网站(例如 blogger)或具有多个公共 IP 的网站(例如 Google)

答案2

您也可以尝试启动如此微小的脚本针对不同的用户,重新启动浏览器并向用户发出通知。它根据用户的网络浏览器标题限制某些网站。

相关内容