Icon Welcome to my blog. 👋

Free your mind. Return to the source code.

AdGuard 编辑器自定义编辑规则

前言 最近在折腾博客的时候,想起来我之前在火山引擎买了几个域名证书,想部署到博客上(不用白不用,反正都买了),然后打开 SSL控制台后,发现全是空白界面,开发者工具全是跨域错误 到这,本来我以为是火山引擎的锅,我就提了个工单。然后鬼使神差的点开了另一个页面,也是跟域名有关的控制台,这时候发现,这个页面也是和这个 SSL 控制台一样的全是跨域错误。 这时候我才意识到,这可能是我本地的问题,毕竟这么多页面如果同时出现问题,没有及时修复的话,火山引擎还想不想干了 hhh,尝试许久以后才发现,是 AdGuard 的锅。 在添加自定义规则的时候也发现,AdGuard 的 Wiki 关于这方面竟然都是英文的,虽然现在 AI 可以帮助分析,但写此篇,以后不用浪费和 AI 解释的机会就可以自行添加。 添加自定义过滤器 首先打开桌面端 AdGuard,点击右上角设置 然后在广告拦截中,点击过滤器编辑器 点击加号,就能添加新的规则 我看了下,官方给的规则太多了,想完全了解不现实。我们只需要记住几个常用的规则怎么写就行了,能应急(就比如使某个域名不被拦截) 举例 1. 取消拦截整个网站 比如本次出现问题的便是火山引擎的 volcengine.com 域名 我们只需要将这个域名添加进就可以了 取消拦截整个网站的语法就是 @@||example.com^$document 两个 @@ 两个 || 加上 域名 再加上 ^$document 这样,整个域名就被过滤器放弃了拦截请求 2. 取消拦截某个地址 比如你明确的知道了,是此域名下的哪个子域名或路径出现了问题,可以用这个方法,更精准,并且也能进行一定的拦截 取消拦截磨个地址的语法就是 @@||example.org/banner.png 同样两个 @@ 两个 || 加上 精准的域名 3. 拦截地址 这个其实就可以举一反三了,如果想要拦截某个地址或者整个网址的话,同样用上方的语法,只需要去掉前面的 @@ 即可 结尾 我将域名加入以后,控制台便恢复了正常 顺带吐槽一下 现在这个证书真的很恶心,越来越短的签发周期。之前买这个域名证书就是为了长时间不用申请(虽然有自动签发,但是还是这个更省心一些,而且这个也是 DV 证书,虽然是测试的。但是它便宜啊,一个证书只要 6.8) 但是这回登录回去,我这已购证书都变成 199 天了,虽然页面上显示的一年,但是签发完就变成 199 天了,算了算了用回免费证书吧 ...

新建 Hugo文章时自动递增文章编号

前言 我现在使用 hugo 创建新的文章和瞬间用的是 hugo new posts/1/index.md 和 hugo new ramble/1/index.md 每次新建文章的时候还得去看一下我已经写了多少文章,我想的是,写一个脚本,自动判断我写了的文章数,然后每次自动加 1。 开始折腾 因为我是使用 Windows 系统,所以原生终端 powershell 是我常用的,所以也是决定选用 powershell 脚本 创建 PowerShell 脚本 在你的 hugo 项目的目录下,创建一个新文件,命名为 new.ps1 将以下内容复制进去: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 param ([string]$Type) if ($Type -ne "posts" -and $Type -ne "ramble") { Write-Host "用法: .\new_post.ps1 posts 或 .\new_post.ps1 ramble" -ForegroundColor Red exit } $path = "content/$Type" if (!(Test-Path $path)) { $nextNum = 1 } else { $maxNum = Get-ChildItem -Path $path | Where-Object { $_.PSIsContainer -and $_.Name -match '^\d+$' } | Select-Object -ExpandProperty Name | ForEach-Object { [int]$_ } | Sort-Object -Descending | Select-Object -First 1 if ($null -eq $maxNum) { $nextNum = 1 } else { $nextNum = $maxNum + 1 } } $targetPath = "$Type/$nextNum/index.md" hugo new $targetPath Write-Host "成功创建: content/$targetPath" -ForegroundColor Green 使用方式 在 Windows 资源管理器输入框中输入 powershell (如果是 CMD,请先输入 powershell 切换) 直接运行 ...

Windows资源管理器更改位置后无法移动

前言 Windows 更改下载文件夹位置的时候,不小心更换为 F 盘的根目录,再想更换为 F:\Download 的时候,提示,无法将文件移到此处。无法将父项重定向到子项。指定的路径无效。 解释原因 这种情况通常是因为 Windows 文件夹重定向机制的逻辑冲突导致的。当你将“下载”文件夹直接设为 F:\(根目录)时,系统认为整个 F 盘就是你的下载路径。此时你尝试将其更改为 F:\Download,系统会判定你在尝试把“父目录”(F 盘)移动到它自己的“子目录”(Download)里,从而触发“无法将父项重定向到子项”的保护报错。 解决方案 直接修改注册表路径 按下 Win + R 键,输入 regedit 并回车,打开注册表编辑器。 在地址栏直接粘贴以下路径: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders 在右侧列表中找到名为 {374DE290-123F-4565-9164-39C4925E467B} 的项(这代表“下载”文件夹)和 {7D83EE9B-2244-4E70-B1F5-5393042AF1E4} 的项。 注:有时也会显示为字符串 Downloads 双击,将这两项的数值数据修改为你想要的真实路径,例如:F:\Download 关键步骤: 修改完成后,重启电脑或在任务管理器中重启“Windows 资源管理器”,路径就会生效。 重启后解决

DDNS-GO美化Bark推送

前言 最近迁移了一下 iStoreOS 决定使用 DDNS-GO 作为更新 DDNS 的插件。 DDNS-GO 的优势 主要是支持的服务商比较多,而且更新比较及时。各种操作都比较符合直觉。 然后就是支持Webhook URL了 我这次折腾也是因为官方提供的 Webhook 教程太丑了(虽然就是一个通知,不过还是想让它更好看一点) 1. Webhook URL 这是 Bark 的基础推送地址,包含了您的设备 Key 和消息的分组/存档参数。 1 https://api.day.app/您的Key?group=DDNS&isArchive=1 2. RequestBody 在 ddns-go 的 Webhook 内容 (RequestBody) 中填入以下 JSON。这里使用了 \n 实现换行,确保通知内一行只显示一个数据: 1 2 3 4 5 { "title": "IPv6变动通知", "body": "域名: #{ipv6Domains}\n新的IPv6: #{ipv6Addr}\nIPv6更新结果:#{ipv6Result}", "group": "DDNS" } 3. Headers 在 ddns-go 的 Webhook Headers 中填入,声明发送的内容格式为 JSON: 1 Content-Type: application/json 更多变量 剩下的可以参考这里 把需要的变量填入 “body” 里就可以了,用 \n 来进行换行不用输入其他的 ...

从零开始安装Portainer

前言 最近狐蒂云跑路,我也顺带整理了一下手头的服务器。我不爱用探针(机子少,也懒得统一管理),结果翻出一台吃灰很久的国内机。 这台机器还是当年华为云搞活动时领的“慈善”款:2 H 1 G 配置,足足 10 年有效期。之前一直挂着 1 Panel,但对于 1 G 内存的机器来说,1 Panel 显得有些臃肿,光面板运行就占了近 300 M 内存。考虑到我平时只用反向代理和 Docker,这显然得不偿失。于是决定重装系统,换成更轻量级的 Portainer 来管理。 教程开始:轻量化 Docker 环境搭建 1. 系统环境准备 (DD 系统) 首先建议使用纯净的系统。我选择通过 DD 脚本重装系统。 为什么要 DD 系统? 并非为了规避审查(国内机器建议保持合法合规),主要是厂商原版镜像通常预装了各种监控插件(如云镜、安骑士等),这些后台进程会蚕食本就不富裕的 1 G 内存。DD 后的纯净系统能省下几十兆宝贵的内存空间。 在纯净系统下,先更新系统包列表并安装必备工具: 1 2 apt update && apt upgrade -y apt install -y curl vim wget gnupg dpkg apt-transport-https lsb-release ca-certificates 2. 安装 Docker 官方引擎 使用官方一键脚本安装,简单且标准: 1 2 3 4 5 6 # 下载并运行安装脚本 curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh # 启动并设置开机自启 systemctl enable --now docker 验证安装: ...

NameCrane邮件全部捕获地址设置

由于我懒得设置每一个邮箱的前缀,再加上有无限别名邮箱的需求,所以想着开启一下“全地址捕获”,但是发现全网没有一个这方面的教程(也可能是我太菜了 教程开始 首先打开NameCrane域名管理页面 如下图 选择你要修改的邮箱后面的三个点,选择 Manage Aliases/Forwarders 进入 “用户别名/转发器” 界面 选择添加新别名 按照以下步骤操作即可启用兜底地址: 1. 填写别名基础信息 Alias / Forwarder: 输入一个别名名称,例如 catchall。 Display Name: 随便填一个方便识别的名字,比如“兜底邮箱”。 2. 启用 Catch All (关键步骤) 找到页面中间的 Catch All 下拉菜单。 将状态从 Disabled 改为 Enabled。 系统会提示这会捕获所有发往该域名但不存在的地址的邮件。 3. 设置邮件去向 在底部的 Email Destinations 文本框中,输入你真正用来收信的邮箱地址(例如你的主邮箱)。 注意:每行只能输入一个地址。 如何验证是否成功? 设置完成后,你可以尝试使用别的邮箱(如Gmail,outlook mail等)给此邮箱随意一个前缀发送地址(例如:asdf@ example.com)如果能收到就是可以了~

30元夺舍 Yubikey 5 喂饭级教程

前言 前两天写了# 自制 Yubikey-为树莓派 Pico RP2350 编译与烧录 Pico FIDO2 固件以后,发现好像过于复杂了,其实作者已经提供了编译好的固件,所以写一个小白级喂饭教程 教程开始 准备阶段 Windows/Linux/Mac都可以 Pico2设备(处理器需为 RP2350) 可以访问Github(如果你能顺利访问此博客应该也能访问Github了) 开始刷入 首先进入这个页面下载pico-fido2-pico2-eddsa.uf2 这里解释下为什么使用 picofido2-7.4.2-librekeys+1 不选择使用 picofido-7.4.2-librekeys+2 因为我们是完全替代Yubikey的,所以要实现fido2+openpgp,只能刷入Picofido2,因为在刷入Picofido后是没有OpenGPG功能的,为了一步到位,所以选择Picofido2 下载后我们将固件(xxxx.uf2)放在桌面(或者任意你喜欢的位置) 按Pico2设备上的BOOT键电脑后松手 此时电脑上会将Pico识别为一个U盘 将下载的xxxx.uf2文件拖入这个“U盘”,之后他会自动识别并刷入 重启后会自动识别为物理安全密钥 夺舍Yubikey 我们刚刚刷入固件后,只是把你的Pico变成一个物理安全密钥,要想夺舍Yubikey更方便管理安全密钥,我们需要对Pico做一个伪装 此时我们会用到这个项目 进入上方项目。下载最新发行版应用,一般Windows电脑可以选择 64-setup.exe 安装好后打开应用,选择 Configuration 按下图所示进行设置一般没有问题详细的解释可以跳转到文章末尾进行查看 点击右下角 Apply Changes 会自动修改后重启。 至此,已经完成了对Yubikey的夺舍,你的Pico会被任何设备识别为Yubikey。除了没有NFC功能外其他已经和Yubikey无异 管理密钥 下载 Yubico-Authenticator 电脑端移动端都是这个名 打开软件后重新插拔一下设备,软件就会自动识别 左侧出现 账户 通行密钥 证书 则为完全体。 补充说明 PicoForge 伪装设置 选择YubiKey 5软件会自动帮你填写 VID(1050) 和 PID(0407) 这是设备被识别为YubiKey的第一步 Product Name 请务必填写为 Yubico Yubikey 建议直接复制填入,差一个大小写都不会被Yubikey的应用完全识别(具体表现为,会在管理软件的二级页面一直转圈圈) 其他设置 LED设置 填写Pico设备的LED灯的针脚,设备上一般会标出来数字,找到LED对应的数字填上就行 LED驱动 我们这个是Pico所以不用动 灯的亮度,0代表关闭 15代表最大亮度,建议1-3亮度即可。有个提醒就行 开启LED调光 LED常亮,建议关闭(关闭后只会在需要触摸密钥时才会亮) 触摸设置 ...

自制 Yubikey-为树莓派 Pico RP2350 编译与烧录 Pico FIDO2 固件

前言 小白可以直接看这个文章(因为这篇文章我有点想复杂了) 最近想要买一个实体物理密钥,关注到了Yubikey,发现已经贵的离谱了(参考它之前促销的价格),而且中国大陆地区还无法直接收到(即使海外,也要10美金),转运+运费+售价,已经是天价了,国内淘宝平台卖的更贵。 所以就在Google上搜索有没有平替。就搜索到了这篇文章 但由于过了一年多,项目发生了一些变化。原项目因为作者想要商业化圈钱,故发售了许可证,30欧元/设备,这个价格和去购买成品Yubikey几乎没有什么区别了。甚至这只是一个许可证。 如果想要实现fido2+openpgp的,原作者支持此功能的的pico-fido2不提供代码并且需要付费licence,但是开源社区有一个亲测可用的Fork,因此本教程都是基于此Fork所进行。 硬件选择 在2026年的今天,目前有且仅有推荐RP2350 准备工作 硬件:RP2350 树莓派开发版 系统:最好使用Windows 11/Linux 网络:能够正常访问 GitHub。 第一阶段:安装与配置 WSL (Windows 本地 Linux 子系统) 若使用Linux跳转至此 由于嵌入式编译在 Linux 环境下最为稳定和友好,我们将使用微软官方的 WSL 工具,在 Windows 中直接无缝运行一个 Ubuntu Linux 系统。 右键点击 Windows 的“开始”按钮,选择 Windows PowerShell (管理员) 或 终端 (管理员)。 在弹出的蓝色或黑色窗口中,输入以下命令并回车: 1 wsl --install 系统会自动下载并安装 WSL 核心组件以及默认的 Ubuntu 发行版。 安装完成后,重启你的电脑。 重启后,系统通常会自动弹出一个名为 “Ubuntu” 的命令行窗口。如果没有自动弹出,请在 Windows 开始菜单中搜索 “Ubuntu” 并打开它。 首次启动需要等待一两分钟解压文件。 随后,系统会提示你创建一个 Linux 用户名 (Enter new UNIX username) 和密码 (New password)。 看到绿色的命令提示符(例如 username@hostname:~$),说明你的 Linux 环境已经搭建完毕 第二阶段:搭建底层编译环境 接下来的所有命令,都请在刚刚打开的 Ubuntu 终端 中执行。我们将安装交叉编译工具链和官方开发包。 ...

iOS 无法收到海外应用推送的解决方法

前情提要 🍎💊 2026年4月30日 苹果APNs推送出现无法推送海外应用的通知,最严重的是Telegram,几乎所有出现此问题的用户,都是Telegram无法收到推送。 两种方法看你能接受哪个 方案一 流量多的情况下 在iOS 的任意代理工具中添加远程规则 1 https://raw.githubusercontent.com/blackmatrix7/ios_rule_script/master/rule/Surge/Apple/Apple_All_No_Resolve.list 以上域名全部走代理即可收到海外应用推送 但会使苹果所有的流量都会走代理 方案二 适合流量少的情况下 在iOS 的任意代理工具中添加远程规则 1 https://raw.githubusercontent.com/QuixoticHeart/rule-set/refs/heads/ruleset/loon/apns.list 并打开代理工具的包含APNS 不过两个方案都有致命的缺点。就是一旦你的代理崩了,你的设备就啥通知也收不到了 建议在添加时加入一个Fallback,这样最后即使收不到海外的消息,也能保证国内通知不死 建议各位使用方案二+Fallback Loon教程 别的软件我没用,具体也不太清楚 第一步 策略 策略 - 右上角… - 添加 - 别名:Apple Push - 策略类型 - fallback - 测试间隔 60 - 最大超时 300 - 添加 - 填入节点 第二步 规则 配置 - 规则 - 右上角加号 - 填入URL - 别名随意 - 策略 - 策略组 - Apple Push Loon开启APNs教程 右下角⚙️配置 滑到最底下 “高级配置” - “路由系统服务” - 打开“包含所有网络” - 打开“包含APNS” ...

iOS 微信双开 无后台推送测试

无后台推送消息的bundleId必须为下方指定的几个: com.tencent.xin (官替:如果已经安装App Store版的微信不要使用这个,会替换掉原版) com.tencent.qy.xin (多开,需要注入微信助手/HBB插件) com.tencent.wx (多开,需要注入微信助手/HBB插件) com.tencent.mm.xin (多开,只能dev开发证书签名且需要注入微信助手/HBB插件) 已测试,使用 com.tencent.qy.xin 目前来说是最稳定的推送 微信助手 使用微信助手后,无后台推送会出现图中问题 HBB 使用任何 bundleId(指的是上方那些,任意BID功能正在开发中) 都不影响无后台推送,有 昵称 头像 消息内容