当前位置: 首页 > news >正文

家庭网络防御系统搭建-生产要素准备

搭建家庭网络防御系统原因

原因如下:

  • 当前的网络安全市场主要集中在企业安全领域,对于个人消费者安全业务来说,网络安全成熟度非常的低。
  • 网络空间安全越发严峻的今天,网络环境存在大量的后门,恶意软件,间谍软件通过U盘,邮件和网站进行传播,尤其以学校等比较严重,但是个人的感知能力非常的弱。
  • 网络空间治理是一个长期的过程,依赖于官方,各个组织以及个人共同的努力。
  • 未来网络安全缺口巨大,作为网络安全防御,SOC,应急响应的学习研究之用,从防御的角度学习和并和理解网络攻击,安全分析,应急响应,数字取证。
  • 家庭网络业务简单,利用开源的检测能力,噪声不是很大,因此很容易发现很多家庭网络环境中未知的威胁,解决低级的恶意软件感染问题。
  • 作为走在技术前列的IT从业者,互联网从业者,安全从业者,极客们,是有意愿DIY的。
  • 大量优秀的开开源件的成熟,作为网络安全的从业者,我将在本系列借助大量的开源软件完成家庭纵深防御体系的搭建,从而实现家庭网络的防御,通过个人DIY实现

家庭网络典型组成

以个人为例,家庭网络中联网设备包括如下

Andriod手机
IOS手机
IOS平板
MAC笔记本
Windows笔记本
Windows,Linux虚拟机
智能音箱
网络电视
智能手表
智能净水器
智能摄像头
打印机
路由器

家庭网络中涵盖的操作系统包括Linux,windows,MAC,andriod,不知名的IOT Linux系统,树莓派等。

家庭网络典型架构

常见的家庭网络架构图如下:
在这里插入图片描述

  • 实际上现在很多都是光纤入户,因此光猫ONT和ISP的路由器和无线功能都合二为一了。
  • 天翼网关就是这种集成多种功能的设备,通常具备一个千兆口和一个百兆口。
  • 由于无线连接比较普遍,因此千兆口通常接到个人的无线路由器上,然后无线路由器管理接入各种设备。
  • 百兆口通常接入到有线交换机,但通常对于家庭用户来说,有线口使用频率低,因此该交换机按需配置。

增加防御后的家庭网络架构

在这里插入图片描述

  • 可以看到在整个架构中加入了防火墙来做基本的流量控制,策略配置和入侵检测。
  • 加入了交换机进行流量的转发和镜像到NDR系统,做流量的深度分析。
  • 加入了SIEM管理系统来收集各种流量侧和终端侧的告警和日志信息。
  • 没有做深度的VLAN的划分,后续在模拟靶场的时候在做更为详细的VLAN划分。

硬件准备

防火墙+IDS系统,采用的是CPU J4125+8G+128+ 千兆网卡的工控主机,至少需要两个网络,一个WAN口,一个LAN口,由于防火墙724,因此需要考虑低功耗以及静音等要求,如下图:
在这里插入图片描述
NDR 流量分析,NDR系统,采用的是树莓派 4b 8G内存系统,流量分析系统一般也是7
24,但是稳定性要求一般,因此可以采用树莓派更低功耗以及更为小巧的设备,如下图:
在这里插入图片描述
交换机采用的是tp-link的TL-SG105E,主要原因是该型号的交换机具备流量镜像的功能,如下图:
在这里插入图片描述
SIEM日志日志平台,Dell的塔式服务器,根据SIEM平台的不同,硬件要求也是有所不同。如果siem平台7*24,建议不要采用工作站,毕竟整体功耗比较高。我采用工作站的原因是一个临时解决方案,引文工作站存在很多其他的虚拟机系统用来模拟各种环境。如下图:
在这里插入图片描述
上述的硬件可以在京东,淘宝等平台购买新机器,也可以在咸鱼购买二手的机器,我的大部分组网机器是在咸鱼上购买的二手设备。优点就是,成本低,防止一时兴起,避免投入产出比不高。在咸鱼上很多人学生党以及极客党购买的闲置设备是非常好的选择,基本不会出大问题。

软件准备

各个软件关系图

主要软件位EDR,NDR以及siem,对应的关系如下:
在这里插入图片描述

因此需要准备SIEM,NDR,EDR等三大块的内容。

操作系统软件

  • 防火墙采用的是开源的opensense,本身既是一个网络侧的软件,也是一个基于freeBSD的linux操作系统,当然也可以采用pfsense,看个人喜好,参考连接这里。
  • 树莓派操作系统是基于linux开发的操作系统,参考连接这里。
  • tplink一般自带的是基于Linux定制的路由器系统,不在赘述。也可以安装软路由,但是本系列不会再软路由上过多介绍。

网络侧软件

  • IDS采用的是suricata,当然也可以采用snort,参考连接这里。
  • Transaction log系统采用的是zeek开源版本,当然也可以采用corelight定制的树莓派版本,兼顾suricata和zeek的功能。zeek参考连接这里。
  • 蜜罐系统采用的是,参考连接这里。

终端侧软件

  • EDR的设备开源软件较多,流行的开源EDR软件包括 osquery,Sysmon,Velociraptor,Elastic Beats ,OpenEDR,Wazuh,Aurora Agent,BlueSpawn,兼顾AV,syslog,行为检测多种能力。
  • 这些ERD软件各有侧重,我个人使用osquery,sysmon,Elastic Beats,osquery参考连接这里,Elastic Beats参考连接这里,sysmon参考连接这里。
  • 对于无法安装agent的情况,例如网络设备,可以使用syslog直接发送终端的日志。

日志分析平台

  • 开源的日志siem平台包括humio,elastic,splunk,securityonion,我个人使用的是securityonion,主要原因是其安全相关的功能集成比较丰富,参考连接这里。

软件的安装

软件的安装方式包括如下集中。

  • docker安装,很多的软件都有提供docker的方式,前提是需要有承载的操作系统,但是通过虚拟网卡的方式处理速度上可能会存在些许问题
  • 虚拟化方式,提前安装EXSI等虚拟化环境。
  • 直接安装,可以直接安装在硬件上,也可以安装在软件上。优点是架构比较清晰,容易理解整个组网架构,这种方式和企业的部署方式类似。

总结

我前期的文章主要从网络防御以及应急响应的角度来建设家庭防御体系。等到基本防御体系建设完成之后,我会模拟实际的企业级环境进行不同网络的划分和虚机的建设,把家庭的网络打造成为一个学习的靶场,这样就可以从攻击的角度学习和理解红队技术,通过实操网络的渗透,也利于红队和紫队技术的学习。

上述就是搭建家庭网络防御体系所需要的基本生产要素,接下来就是基于这些生产要素持续构建纵深防御系统,欢迎持续关注村中少年的专栏《家庭网络防御系统搭建》,这里。

相关文章:

  • 前端基础 Vue -组件化基础
  • 开始喜欢上了runnergo,JMeter out了?
  • 【物联网】Qinghub Kafka 数据采集
  • mysql 存储过程示例
  • 谈一谈BEV和Transformer在自动驾驶中的应用
  • FPGA电平标准
  • Mac电脑虚拟显示器:BetterDisplay Pro for Mac v2.0.11激活版
  • java Web餐馆订单管理系统用eclipse定制开发mysql数据库BS模式java编程jdbc
  • Vscode与Cmake搭配配置opencv使用
  • 使用Spring Boot Admin监控和管理Spring Boot应用程序
  • SpringBoot集成Solr全文检索
  • mysql - 缓存
  • 如何利用python 把一个表格某列数据和另外一个表格某列匹配 类似Excel VLOOKUP功能
  • HTML快速入门笔记
  • 【Python机器学习系列】skearn机器学习模型的保存---pickle法
  • [数据结构]链表的实现在PHP中
  • 「面试题」如何实现一个圣杯布局?
  • Apache Spark Streaming 使用实例
  • CSS实用技巧
  • github指令
  • JavaScript服务器推送技术之 WebSocket
  • leetcode讲解--894. All Possible Full Binary Trees
  • OSS Web直传 (文件图片)
  • python学习笔记-类对象的信息
  • SegmentFault 2015 Top Rank
  • 多线程事务回滚
  • 飞驰在Mesos的涡轮引擎上
  • 简析gRPC client 连接管理
  • 入职第二天:使用koa搭建node server是种怎样的体验
  • 说说动画卡顿的解决方案
  • 听说你叫Java(二)–Servlet请求
  • 源码安装memcached和php memcache扩展
  • 智能合约开发环境搭建及Hello World合约
  • AI算硅基生命吗,为什么?
  • Java性能优化之JVM GC(垃圾回收机制)
  • UI设计初学者应该如何入门?
  • 阿里云服务器如何修改远程端口?
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • #include<初见C语言之指针(5)>
  • (12)目标检测_SSD基于pytorch搭建代码
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (C语言)二分查找 超详细
  • (C语言)输入一个序列,判断是否为奇偶交叉数
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (二)JAVA使用POI操作excel
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • *Django中的Ajax 纯js的书写样式1
  • .[hudsonL@cock.li].mkp勒索加密数据库完美恢复---惜分飞
  • .NET Core 中的路径问题
  • .Net+SQL Server企业应用性能优化笔记4——精确查找瓶颈
  • .NET8.0 AOT 经验分享 FreeSql/FreeRedis/FreeScheduler 均已通过测试
  • .Net开发笔记(二十)创建一个需要授权的第三方组件
  • /etc/fstab 只读无法修改的解决办法