问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

用OpenWRT打造家庭网络安全防护墙

创作时间:
作者:
@小白创作中心

用OpenWRT打造家庭网络安全防护墙

引用
CSDN
11
来源
1.
https://blog.csdn.net/u010835747/article/details/122714083
2.
https://blog.csdn.net/qiaohewei/article/details/108622449
3.
https://blog.csdn.net/langaopeng/article/details/115071697
4.
https://blog.qiaohewei.cc/2021/06/28/openwrt_adguardhome/
5.
https://doc.embedfire.com/openwrt/user_manal/zh/latest/User_Manual/openwrt/security.html
6.
http://www.bilibili.com/read/cv29556738/
7.
https://www.bilibili.com/read/cv21341898/
8.
https://18kas.com/openwrt-block-site
9.
https://www.right.com.cn/forum/thread-472479-1-1.html
10.
https://www.anquanke.com/post/id/257719
11.
https://blog.mutoe.com/2021/home-network-infra-notes/

随着互联网的普及,家庭网络已经成为我们日常生活的重要组成部分。然而,网络安全问题也随之而来,如何保护家庭网络免受恶意网站、广告和病毒的侵扰,成为每个家庭都需要面对的课题。OpenWRT作为一个开源的路由器操作系统,以其强大的功能和高度的可定制性,成为打造家庭网络安全防护墙的理想选择。

01

为什么选择OpenWRT?

OpenWRT是一个基于Linux的开源路由器操作系统,相比传统的路由器固件,它具有以下优势:

  • 高度可定制:用户可以根据需要安装各种软件包,实现个性化功能。
  • 强大的安全性:内置防火墙、VPN等安全功能,可以有效保护网络免受攻击。
  • 优秀的性能:能够充分利用路由器硬件性能,提供更稳定的网络连接。
  • 活跃的社区支持:遇到问题时,可以很容易地在社区中找到解决方案。
02

DNS过滤:拦截恶意网站的第一道防线

DNS过滤是保护家庭网络免受恶意网站侵害的有效手段。通过配置DNS过滤,可以阻止设备访问不良网站,同时还能拦截广告,提升上网体验。这里我们使用AdGuard Home来实现DNS过滤功能。

安装AdGuard Home

  1. 登录OpenWRT管理界面,进入“软件包”页面。
  2. 搜索并安装adguardhomeluci-app-adguardhome两个软件包。

配置AdGuard Home

  1. 安装完成后,在OpenWRT管理界面中找到“服务”->“AdGuard Home”。
  2. 点击“更新核心版本”,等待更新完成后启用AdGuard Home。
  3. 设置管理员密码:点击“改变网页登录密码”,按照提示设置密码。

配置DNS服务器

在AdGuard Home的“设置”->“DNS设置”中,添加上游DNS服务器。这里推荐使用以下DNS服务器:

119.29.29.29
223.5.5.5
8.8.8.8
8.8.4.4

为了提高解析速度,可以开启“并行请求”选项。

设置DNS过滤规则

在AdGuard Home的“过滤器”->“DNS封锁清单”中,添加合适的过滤规则。这里推荐使用以下规则:

  • EasyList China
  • EasyPrivacy
  • AdGuard DNS Filter

这些规则可以有效拦截广告和恶意网站。但要注意不要滥用规则,以免误拦截正常网站。

让AdGuard Home生效

最后,需要将AdGuard Home设置为OpenWRT的DNS服务器。在OpenWRT的“网络”->“DHCP和DNS”中,将“DHCP服务器”下的“DNS服务器”设置为AdGuard Home的IP地址(默认是192.168.68.1)。

03

URL过滤:精准拦截特定网站

除了DNS过滤,我们还可以通过URL过滤来实现更精细的控制。这里我们使用dnsmasq+ipset+iptables的组合来实现URL过滤。

配置dnsmasq

  1. 首先需要安装dnsmasq-full,它支持ipset功能。在OpenWRT管理界面的“软件包”页面中搜索并安装dnsmasq-full

  2. 创建配置目录和文件:

mkdir /etc/dnsmasq.d
touch /etc/dnsmasq.d/domain.conf
  1. 编辑/etc/dnsmasq.d/domain.conf,添加需要过滤的域名:
ipset=/www.example.com/blocked
ipset=/www.bad-site.com/blocked

配置防火墙规则

使用iptables配合ipset实现黑白名单功能:

ipset -N blocked iphash

# 黑名单配置
iptables -t filter -A FORWARD -m set --match-set blocked dst -j DROP
iptables -t filter -A FORWARD -m set --match-set blocked src -j DROP

# 白名单配置(可选)
iptables -t filter -A FORWARD -m set --match-set allowed dst -j ACCEPT
iptables -t filter -A FORWARD -m set --match-set allowed src -j ACCEPT
iptables -t filter -A FORWARD -j DROP

注意事项

  • 需要重启dnsmasq服务使配置生效:/etc/init.d/dnsmasq restart
  • 对于HTTPS网站,由于加密原因,URL过滤可能无法完全生效。
04

其他安全功能

除了DNS和URL过滤,OpenWRT还提供了丰富的安全功能:

  • 防火墙:可以配置复杂的防火墙规则,保护网络免受攻击。
  • 流量监控:实时监控网络流量,帮助发现异常行为。
  • VPN支持:可以配置VPN服务器或客户端,实现安全的远程访问。
  • 家长控制:可以限制特定设备的上网时间或访问内容。
05

总结与建议

OpenWRT作为一个强大的开源路由器操作系统,为家庭网络提供了全方位的安全防护手段。通过DNS过滤和URL过滤,可以有效拦截恶意网站和广告,保护家庭成员免受网络威胁。但需要注意的是,没有任何一种防护手段是万无一失的,建议结合使用多种防护措施,同时培养良好的上网习惯,共同构建安全的网络环境。

此外,OpenWRT的配置相对复杂,需要一定的技术基础。如果对网络配置不熟悉,建议在专业人士的指导下进行操作,以免影响正常使用。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号