网络入侵探测器Pi.Alert
什么是 Pi.Alert ?
Pi.Alert
是WIFI/LAN
入侵探测器。通过扫描连接到您的
WIFI/LAN
的设备,提醒您未知设备的连接。它还警告断开“始终连接”的设备。
Pi.Alert
使用了三种扫描方式
- 方式1:arp-scan。
arp
扫描系统实用程序用于使用arp
帧搜索网络上的设备。 - 方式2:Pi-hole。:此方法是可选的,是对方法 1 的补充。如果
Pi-hole DNS
服务器处于活动状态,则Pi.Alert
会检查其活动,查找方式1未检测到的使用DNS
的活动设备。 - 方式3:dnsmasq。:此方法是可选的,是对以前方法的补充。如果
DHCP
服务器dnsmasq
处于活动状态,Pi.Alert
会检查DHCP
租约(分配的地址),以查找其他方法未发现的活动设备。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 pi.alert
,选择第一个 jokobsk/pi.alert
,版本选择 latest
。
细分的版本号是
23.5.7
,但实际上23.5.7
、23.5
、23
、latest
是同一个版本;
卷
在 docker
文件夹中,创建一个新文件夹 pialert
,并在其中建两个子文件夹,分别是 config
和 db
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/pialert/config | /home/pi/pialert/config | 存放设置 |
docker/pialert/db | /home/pi/pialert/db | 存放数据库 |
网络
勾选 使用与 Docker Host 相同的网络
环境
可变 | 值 |
---|---|
TZ | 时区设置,默认值 Europe/London |
PORT | 应用的访问端口,默认值 20211 |
HOST_USER_ID | 用户ID,默认值 1000 |
HOST_USER_GID | 用户组ID,默认值 1000 |
一般只要修改 TZ
为 Asia/Shanghai
就可以了
权限
要避免出现权限问题,可以勾选 使用高权限执行容器
老苏没有勾选,似乎也能正常工作;
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷
# 新建文件夹 pialert 和 子目录
mkdir -p /volume2/docker/pialert/{config,db}# 进入 pialert 目录
cd /volume2/docker/pialert# 运行容器
docker run -d \--restart unless-stopped \--name pialert \--network=host \-v $(pwd)/config:/home/pi/pialert/config \-v $(pwd)/db:/home/pi/pialert/db \-e TZ=Asia/Shanghai \-e PORT=20211 \-e HOST_USER_ID=1000 \-e HOST_USER_GID=1000 \jokobsk/pi.alert:latest
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
version: '3'services:pialert:image: jokobsk/pi.alert:latestcontainer_name: pialertnetwork_mode: hostrestart: unless-stoppedvolumes:- ./config:/home/pi/pialert/config- ./db:/home/pi/pialert/dbenvironment: - TZ=Asia/Shanghai - PORT=20211- HOST_USER_ID=1000- HOST_USER_GID=1000
然后执行下面的命令
# 新建文件夹 pialert 和 子目录
mkdir -p /volume2/docker/pialert/{config,db}# 进入 pialert 目录
cd /volume2/docker/pialert# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d
运行
在浏览器中输入 http://群晖IP:20211
就能看到主界面
只有两个设备显然是不正确的,我们可以选择手动编辑 config
目录下的 pialert.conf
文件
修改前,记得备份文件,当然,万一改出问题了也不用太担心,大不了重来呗
但是更简单的方式是在 settings
中进行修改
在
settings
中修改,会自动生成备份文件;
显然,系统默认启用了方式1扫描,也就是启用了 Enable ARP scan
,但是 SCAN_SUBNETS
显然不正确
老苏的 IP
应该是 192.168.0.0/24
而不是 192.168.1.0/24
,至于网络接口是 eth0
,eth1
,也是一头雾水,这需要通过 iwconfig
在容器内查询
# 进入容器
docker exec -it --user root pialert /bin/bash# (国内用户)改阿里源
sed -i "s@http://deb.debian.org@http://mirrors.aliyun.com@g" /etc/apt/sources.list# 安装 wireless-tools 包
apt-get update && apt-get install -y wireless-tools# 查找接口名称
iwconfig
看起来应该是 eth0
了
前面输入 192.168.0.0/24
,后面输入 eth0
,然后点 Add
按钮,下拉到底部点 Save
按钮
会提示生成了备份文件
然后点 Enable ARP scan
后面的 ▶️ 按钮开始扫描
回到 Devices
,局域网的设备就都显示出来了
更多的功能就留给大家自己探索了
参考文档
pucherot/Pi.Alert: WIFI / LAN intruder detector. Check the devices connected and alert you with unknown devices. It also warns of the disconnection of “always connected” devices
地址:https://github.com/pucherot/Pi.Alert
jokob-sk/Pi.Alert: 💻🔍 WIFI / LAN intruder detector. Scans for devices connected to your network and alerts you if new and unknown devices are found.
地址:https://github.com/jokob-sk/Pi.Alert
jokobsk/pi.alert - Docker Image | Docker Hub
地址:https://registry.hub.docker.com/r/jokobsk/pi.alert
Pi.Alert/README.md at main · jokob-sk/Pi.Alert · GitHub
地址:https://github.com/jokob-sk/Pi.Alert/blob/main/dockerfiles/README.md
相关文章:

网络入侵探测器Pi.Alert
什么是 Pi.Alert ? Pi.Alert 是 WIFI/LAN 入侵探测器。通过扫描连接到您的 WIFI/LAN 的设备,提醒您未知设备的连接。它还警告断开“始终连接”的设备。 Pi.Alert 使用了三种扫描方式 方式1:arp-scan。arp扫描系统实用程序用于使用 arp 帧搜索…...

Flask项目打包为exe(附带项目资源,静态文件)
1.在项目根目录创建my_app.spec文件,内容如下: # -*- mode: python ; coding: utf-8 -*-block_cipher Nonea Analysis([server.py], # flask入口pathex[],binaries[], datas[("E:/**/templates","/templates"),("E:/**/s…...

无代码开发(BIP旗舰版-YonBuilder)
目录 我的应用 新建领域 菜单管理 应用构建 新建应用 对象建模 新增业务对象 新增业务实体 页面建模 新增页面 编辑页面 发布管理 我的应用 角色管理 yonbuilder开发平台,提供标准服务和专业开发服务; 本篇文章只演示标准服务的可视化应用…...

誉天程序员-瀑布模型-敏捷开发模型-DevOps模型比较
文章目录 2. 项目开发-开发方式2.1. 瀑布开发模型2.2. 敏捷开发模型2.3. DevOps开发模型2.4. 区别 自增主键策略1、数据库支持主键自增自增和uuid方案优缺点 2. 项目开发-开发方式 由传统的瀑布开发模型、敏捷开发模型,一跃升级到DevOps开发运维一体化开发模型。 …...

flutter:占位视图(骨架屏、shimmer)
前言 有时候打开美团,在刚加载数据时会显示一个占位视图,如下: 那么这个是如何实现的呢?我们可以使用shimmer来开发该功能 实现 官方文档 https://pub-web.flutter-io.cn/packages/shimmer 安装 flutter pub add shimmer示例…...

【雕爷学编程】MicroPython动手做(30)——物联网之Blynk 4
知识点:什么是掌控板? 掌控板是一块普及STEAM创客教育、人工智能教育、机器人编程教育的开源智能硬件。它集成ESP-32高性能双核芯片,支持WiFi和蓝牙双模通信,可作为物联网节点,实现物联网应用。同时掌控板上集成了OLED…...

python-网络爬虫.BS4
BS4 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库, 它能够通过你喜欢的转换器实现惯用的文档导航、查找、修改文档的方 式。 Beautiful Soup 4 官方文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/ 帮助手册&…...
C# 开发规范
控件命名规则 控件名简写 控件名简写LabellblTextBoxtxtButtonbtnLinkButtonlnkbtnImageButtonimgbtnDropDownListddlListBoxlstDataGriddgDataListdlCheckBoxchkCheckBoxListchklsRadioButtonrdoRadioButtonListrdoltImageimgPanelpnlCalendecldAdRotatorarTabletblRequiredF…...

【uniapp 样式】使用setStorageSync存储历史搜索记录
<template><view><view class"zhuangbox u-flex"><u--inputplaceholder"请输入关键字搜索"border"surround"shapecircleprefixIcon"search"prefixIconStyle"font-size: 22px;color: #909399"v-model&q…...
git remote add origin详解
git remote add origin详解_笔记大全_设计学院 一、git remote add origin的基础 使用“git remote add origin”指令,可以轻松地将本地项目连接到远程Git仓库 二、git remote add origin的用法 “git remote add origin”指令可以使用以下语法: git…...

附录1-将uni-app运行到微信开发者工具
目录 1 在manifest.json写入AppID 2 配置微信开发者工具的安装路径 3 微信开发者工具的安全设置 4 运行 5 修改一些配置项 1 在manifest.json写入AppID 2 配置微信开发者工具的安装路径 如果你忘了安装在哪里了,可以右键快捷方式看一下属性 在运行设置…...

【LeetCode】根据二叉树创建字符串
根据二叉树创建字符串 题目描述算法分析编程代码 链接: 根据二叉树创建字符串 题目描述 算法分析 当单纯的按照前序遍历输出后,我们只要对()进行一些修改就好 编程代码 /*** Definition for a binary tree node.* struct TreeNode {* …...

【图论】强连通分量
一.定义 强连通分量(Strongly Connected Components,简称SCC)是图论中的一个概念,用于描述有向图中的一组顶点,其中任意两个顶点之间都存在一条有向路径。换句话说,对于图中的任意两个顶点u和v,…...
网络:VRP介绍
1. VRP 华为使用的通用路由平台,华为的交换机、防火墙、安全设备、无线和路由器的命令行几乎一样。 2. VRP分为用户视图、系统视图。 3. 用户视图 user view <Huawei>:其中<>代表的是用户视图,Huawei是设备的名称。命令比较少。…...

iOS - 解压ipa包中的Assert.car文件
项目在 Archive 打包后,生成ipa包 将 xxx.ipa文件修改为zip后缀即 xxx.zip ,然后再双击解压,会生成一个 Payload 文件夹,里面一个文件 如下图: 然后显示改文件的包内容: 解压 Assets.car 文件的方式&…...

【Jmeter】配置不同业务请求比例,应对综合场景压测
目录 前言 Jmeter5.0新特性 核心改进 其他变化 资料获取方法 前言 Jmeter 5.0这次的核心改进是在许多地方改进了对 Rest 的支持,此外还有调试功能、录制功能的增强、报告的改进等。 我也是因为迁移到了Mac,准备在Mac上安装Jmeter的时候发现它已经…...

TCP拥塞控制详解 | 1. 概述
网络传输问题本质上是对网络资源的共享和复用问题,因此拥塞控制是网络工程领域的核心问题之一,并且随着互联网和数据中心流量的爆炸式增长,相关算法和机制出现了很多创新,本系列是免费电子书《TCP Congestion Control: A Systems …...

使用IPSEC VPN 在有防火墙的场景和有NAT转换的场景下实现隧道通信实验
目录 一、在有防火墙的场景 1、为所有设备配置对应ip地址: 2、进入两个防火墙实现公网互通 3、测试公网是否互通 4、进入SW1配置IPSEC VPN 5、进入SW2配置IPSEC VPN 6、配置策略方向ESP的流量 7、尝试使用PC1访问PC2 二、在有NAT地址转换的场景 1、为新增加…...
Go和Java实现适配器模式
Go和Java实现适配器模式 我们通过下面的实例来演示适配器模式的使用,其中,音频播放器设备只能播放 mp3 文件,通过使用一个更高级 的音频播放器来播放 vlc 和 mp4 文件。 1、适配器模式 适配器模式是作为两个不兼容的接口之间的桥梁。这种…...

接口相似数据结构复用率高?Apipost这招搞定!
在API设计和开发过程中,存在许多瓶颈,其中一个主要问题是在遇到相似数据结构的API时会产生重复性较多的工作:在每个API中都编写相同的数据,这不仅浪费时间和精力,还容易出错并降低API的可维护性。 为了解决这个问题&a…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...

CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...