家庭服务器的备份工具选择
Summary 在搭建了 Immich 服务之后,考虑到数据本身的重要性,又对硬盘本身的寿命和各种数据安全的场景有所顾虑,对加密备份的需求就浮出水面了,希望能有一个备份的预案来对抗各种数据风险,因此有本篇文章,对各种备份工具做简单调研和选择。 ...
Summary 在搭建了 Immich 服务之后,考虑到数据本身的重要性,又对硬盘本身的寿命和各种数据安全的场景有所顾虑,对加密备份的需求就浮出水面了,希望能有一个备份的预案来对抗各种数据风险,因此有本篇文章,对各种备份工具做简单调研和选择。 ...
文章的部分内容被密码保护: --- DON'T MODIFY THIS LINE --- Summary ...
禁止屏幕休眠显示作为 Dashboard 显示 树莓派官方的 Raspbian 系统使用的是 lightdm 桌面显示管理器,可以设置 xservice 桌面交互显示来达到屏幕常亮的目的,也就是修改桌面配置文件 lightdm.Conf 参考资料:树莓派设置禁止让屏幕休眠,显示器保持常亮状态-树莓派基础学习入门-树莓派极客,raspi.cc - Powered by raspi shell sudo vim /etc/lightdm/lightdm.conf 找到 x-server-command 取消注释并在后面加 -s 0-dpms,添加完后重启即可。 ...
Intro 问题描述 以 emby 为例,学习如何对这种自托管的服务,请求验证网站的软件进行破解,破解的整体思路分为以下的两类: 一种是改客户端,一种是改服务端。两种方式的最终原理一样,都是搭建仿冒认证服务器,客户端访问伪服务器拿到授权信息;【3】 因此无论是那种方法我们都需要搭建伪验证服务器:所以以下的操作是必须的: 抓取定位到验证服务器的地址,并获取验证服务器返回的验证信息格式; 使用 Nginx 搭建虚拟的验证服务器,使其返回激活/验证信息; 如果是修改客户端,则在搭建完验证站后需要: 修改 Host 文件,将请求验证服务器的请求劫持到本地搭建的服务上; 需要伪服务器和客户端都要安装自签名证书 如果是修改服务端,则后续需要: 修改服务端源文件,将默认的认证服务器 mb3admin.com 地址直接改成伪服务器 这样就不需要安装自签名证书 如果是使用 Docker 进行部署的 emby 可以使用别人修改好的服务端的镜像进行部署安装(like 开心版) 本文主要介绍验证服务器的搭建、修改客户端的方法,以及一些其他的注意事项; Server 伪验证服务器搭建 CA 证书申请 什么是证书:什么是 SSL 认证?- SSL/TLS 认证简介 - AWS (amazon.com) 这里由于我们并没有真正拥有认证网站 md3admin 的域名故而没有对应的证书文件,因此需要为自己的服务自签发一个假的证书文件,并手动让浏览器信任该证书,保证在将该域名通过 hosts 修改转移到自己的服务上时,浏览器能正常请求该页面。 下面介绍证书的签发过程(转载自参考文献:【2】): shell mkdir -p <username>/<docker-file-path>/nginx/cert/mb3admin.com && cd <username>/<docker-file-path>/nginx/cert/mb3admin.com # 生成 CA 密钥 openssl genrsa -out ca.key 2048 # 生成 CA 证书 openssl req -x509 -new -nodes -key ca.key -subj "/C=CN/ST=Beijing/L=Beijing/O=<username>/OU=<username>/CN=<username>/emailAddress=<user-email>" -days 36500 -out ca.crt # 将 CA 转换成 p12 格式,并指定密码 (<username>) openssl pkcs12 -export -clcerts -in ./ca.crt -inkey ca.key -out ca.p12 -password pass:<username> # 将 p12 格式的证书 Base64 编码 base64 ca.p12 # Base64 一行不能超过 76 字符,超过则添加回车换行符。如果因为换行的原因,不能安装证书,可以使用 -w 参数 base64 -w 0 ca.p12 # 将 CA 转换成 pem 格式 openssl x509 -outform pem -in ca.crt -out ca.pem # 生成服务端私钥 server.key openssl genrsa -out server.key 2048 # 生成服务端证书请求 server.csr openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CN/L=Beijing/O=<username>/OU=<username>/CN=mb3admin.com/CN=*.mb3admin.com" # 生成服务端证书 server.crt openssl x509 -req -extfile <(printf "subjectAltName=DNS:mb3admin.com,DNS:*.mb3admin.com") -days 3650 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt 上述代码中替换一下自己的相关信息即可(也可以直接去参考资源中获取直接执行的代码): ...
本系列主要介绍通过公网的 ipv6 访问局域网设备并部署自己的服务供公网访问;本篇是其中的第三篇,以 DDNS-go 开源项目为例,部署动态域名解析服务,自动更新主机记录值。 jeessy2/ddns-go: 简单好用的DDNS。自动更新域名解析到公网IP(支持阿里云、腾讯云、Dnspod、Cloudflare、Callback、华为云、百度云、Porkbun、GoDaddy、Google Domain) (github.com) 该工具使用起来非常简单,推荐需要动态域名解析的可以尝试使用该工具,简单介绍工具的使用如下: 配置 DDNS-GO 前往 release 页面下载对应系统的版本: 解压后双击打开 ddns-go.exe 会自动弹出配置的界面:locahost:9876,选择需要解析域名的 DNS 服务商,选择创建密钥并填入对应的密钥。 ...
本系列主要介绍通过公网的 ipv6 访问局域网设备并部署自己的服务供公网访问;本篇是其中的第二篇,以腾讯云和 Nginx 为例,介绍如何将服务部署到 https://域名 。 需要以下的事前准备: 腾讯云/阿里云/Cloudflare 等随便一个地方购买一个自己的域名 公网 ipv4/ipv6 地址 本地部署一个服务以供测试 Nginx(Docker) 安装 这里选择 Docker 来分离安装 Nginx 服务,Docker 部署的优势这里就不再赘述,这里建议使用 portainer 进行容器管理和运行状态查看。 首先创建存放 Nginx 配置文件和证书文件的目录,后续挂载给 Nginx Contrainer 使用: shell mkdir -p /home/username/docker-file/nginx/conf.d mkdir -p /home/username/docker-file/nginx/cert 配置文件存放到 conf.d 中,各种 SSL 证书则存放到 cert 文件夹中; ...
Windows11基于 WSL2启动 docker 后报错如下(需要注意有时候使用启动命令会报错,但是 restart 命令 docker 可以运行,对应服务无法访问) Bind: An attempt was made to access a socket in a way forbidden by its access permissions. 观察错误发现占用的信息为2345,从 windows 和 wsl 中分别查看端口是否被占用: powershell netstat -aon|findstr "2345" shell netstat -tunlp | grep 2345 均显示没有被占用,这可能是由于协议 tcp 使用的动态端口问题导致,可以使用管理员权限在 powershell 或者 cmd 中执行下列命令查看端口是否在动态范围中: ...
本系列主要介绍通过公网的 ipv6 访问局域网设备并部署自己的服务供公网访问;本篇是其中的第一篇,以电信宽带为例,说明如何开启 ipv6 服务和外网访问放行。 开启 IPV6 服务主要需要修改两个地方的配置:**光猫开启桥接模式和 IPV6 **、路由器修改为 pppoe 拨号模式以及防火墙设置;这里以本人的电信光猫和小米路由器为例: 背景介绍 需要在外网访问部署于家庭内网的一些服务,考虑了以下的几个方案,决定使用 ipv6作为核心 类型 方案 简要说明 内网穿透 Zerotier 免费,需要注册账户,支持移动端,国内速度极慢,且不稳定 内网穿透 Tailscale(备用) 免费,需要注册账号,支持移动端,国内速度一版,稳定性相 Zetotier 较好,但仍不够稳定 内网穿透 frp 申请一个有公网的服务器,使用 frp 自己作为内网穿透的中转,贵,较为麻烦 公网 IP Ipv4 难以申请,其他都好 公网 IP Ipv6(主力) 获取简单,需要配置一下光猫使用,一劳永逸,快,稳定,多,有暴露公网的危险,需要设置防火墙 其他 Cloudflare Zerotrust 简单,免费,可以绑定域名,但是网站根本登不进去配置页面,速度不快 光猫设置 查看光猫背面的管理员 url,进入光猫管理界面,登录超级管理员账户(非普通账户,会跳转到更详细的管理页面,大部分同地区的超级管理员账户应该是一致的,不对可以询问下宽带师傅) 管理地址通常为:192.168.1.1 超级管理员账号:useradmin 超级管理员密码:nE7jA%5 开始之前准备 PPPoe 拨号的帐号和密码,不知道的话等询问好了再开始操作。 在天翼网关->网络->网络设置中进行如下的操作:(这里可以尝试改成 pppoe 并通过开发者模式查看密码,不知道密码不要轻易进行后续操作) 连接名称选择 +++INTERENT_R_VID_41 连接模式从路由改为桥接 IP 模式确认为 IPv4&IPv6 点击保存/应用 ...
接下来本文安装的是 Container 版本的 HA,并非 Supervised 的版本,所以其中是不包含 Add-on 的,如果需要特定的 Add-on 的版本请注意。 基于本篇流程安装 HA 的前置条件是系统上已经安装好了可用的 Docker,该文会介绍 HA 和 HACS 的安装以及一些基础的配置。 HA & HACS 安装 本文安装于 Raspberry pi 4B,与其他操作环境可能会存在一些差异,要注意甄别。 HA 安装过程主要参考 Raspberry Pi - Home Assistant 中 Install Home Assistant Container 的章节,如果为其他的 OS 也可以在官网找到类似的指引,不过 docker 版本的差异应该不会特别的大,个人的 Docker Compose File 也已经上传到 GITHUB 可自行取用。 修改完 -v 的挂载目录以后(将数据保存在本地的目录)和 -e 的时区后,即可执行拉取和安装 docker,这里-v 挂载的本地目录要记得,后面有用。 bash docker compose up -d 安装完后基于 Host 模式的 HA 会运行在 http://localhost:8123 中,localhost 也可以用 ip 替代。安装完后随着指引 完成一些基础的设置,设置好默认的账号密码即可重启 docker 进入 HA 的界面; ...
树莓派家庭服务器的搭建以 docker 为核心,通过 docker 统一管理家庭服务,目前搭建的服务还在持续完善中,主要目的是为了方便日常使用、满足学习和探索的需求。 Docker 的安装这里不再赘述,参考 Docker Configuration01 Install on Linux 一文进行安装即可;本篇主要侧重于介绍部署的镜像和服务,以及简单介绍使用方式。 一些 Docker 容器推荐 这里推荐一些 Docker 容器:Alist、XiaoYa、PiDashboard、redis、mysql、portainer、memos、wikijs 相关的 Docker-Compose 文件会上传到AikenH/aikenh-DockerComposeYML (github.com) 数据库部署与远程连接测试 sqlite 3 Sqlite 与 Mysql 等不同,是一个无服务器、零配置的数据库,其更像是一个解析特定数据库文件的命令接口(CLI 工具),其将数据完全存储于一个单一的跨平台磁盘文件中; 由于 sqlite3 的特性,决定了其是一个轻量级且不需要额外配置的数据库,但是在远程访问方面,只能通过文件共享来实现远程操作数据库。 大多数的 Linux 系统版本都会附带 SQLite 的安装,因此我们可以直接使用下面的指令验证一下是否安装: bash sqlite3 如果没有安装的话,可以去官方的下载页面 下载对应的预编译包,然后进行安装即可。 ...