屏蔽网站

屏蔽网站

我使用 Linux,通过以太网连接到互联网,我创建了一个热点,这样我就可以与家人共享互联网,现在我发现我的一个长辈沉迷于非法网站,所以我想屏蔽这些网站。为了创建热点,我使用了Tp-link TL-WN722NUsb-wifi 网络适配器。(外部)

那位老人使用 Android,他对互联网和其他东西不太了解,但我想以防万一,而不是问他手机号并在浏览器中设置“过滤搜索结果”。所以我想从我这边屏蔽网站,这样他就无法访问任何愚蠢的东西。

所以基本上每个人都可以通过我的笔记本电脑上网。

我的 ISP 没有阻止任何网站。

Tp-link TL-WN722N详情:

      IEEE 802.11bgn  Mode:Master  Tx-Power=20 dBm   
      Retry short limit:7   RTS thr:off   Fragment thr:off
      Power Management:off

我需要针对 Linux 操作系统的这个答案的解决方案。

先感谢您..

答案1

即使您只称它为home hot-spot,它实际上是被用作老人的路由器,并且您希望该路由器包含安全性,这就是防火墙的用途。

只需安装防火墙并应用规则来拒绝您想要阻止的地址即可。就这么简单。

请注意,无论阻止特定地址有多简单,找到要阻止的地址可能是完全不同的故事。

答案2

在 Linux 中,如果尚未安装 iptables,则安装 ipset 和 iptables。

ipset create banned_hosts hash:net family inet hashsize 65536 maxelem 200000 counters comment

iptables -I INPUT 1 -m set -j DROP  --match-set banned_nets src
iptables -I FORWARD 1 -m set -j DROP  --match-set banned_nets src
iptables -I FORWARD 2 -m set -j DROP  --match-set banned_nets dst
iptables -I OUTPUT 1 -m set -j DROP  --match-set banned_nets dst

您必须在重启之前/之后保存并恢复列表。

ipset save >/somewhere/ban.txt
ipset restore </somewhere/ban.txt

如果您的 Linux 使用 systemd,我有几个规则可以使其自动化。该文件应该看起来像这样,但前后列表可能会有所不同。

创建 /etc/systemd/system/basic.target.wants/ipset.service

[Unit]
Description=IP sets for iptables
After=ufw.service
Before=network.target
Before=iptables.service
Before=webmin-iptables.service
AssertPathExists=/src/all.txt

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/sbin/ipset restore -f /src/all.txt
ExecStop=/sbin/ipset save -f /src/all.txt
#ExecReload=/usr/libexec/ipset/ipset.start-stop reload
# Save current ipset entries on stop/restart.
#   Value: yes|no,  default: no
# Saves all ipsets to /etc/sysconfig/ipset if ipset gets stopped
Environment=IPSET_SAVE_ON_STOP=yes IPSET_SAVE_ON_RESTART=no

[Install]
WantedBy=basic.target

相关内容