ddns+cloudflare(免备案,免费防御体系) 实现外网访问的个人应用
- 一个域名,不管多少级
- 机器(树莓派等)
- 机器具有至少一个公网地址(ipv4/ipv6)
- 推荐ipv6,获取方式更简便
- ipv6的获取方式-请使用搜索引擎搜索自己的光猫型号+ipv6
- 光猫设置为桥接
- 开启光猫的ipv6
- 路由器开启ipv6
- 路由器拨号
- 因使用本项目造成的任何后果与本人无关
- 请仔细阅读防火墙配置
- 请仔细阅读注意事项
- 曾出现运营商关闭账户的情况
- 通过防火墙协议,只允许cloudflare机器访问,即可避免被运营商扫描到端口
- 在
树莓派4B+debian
长期运行
- 但一般而言只需要支持docker都可以完成应用的安装
- 请自行备份 docker挂载的根目录
- vaultwarden 可搭配备份服务一起运行
- 请自行修改traefik的entryPoint设置,或者修改docker映射的端口
- adguardhome 界面初始化后需要重新安装
- 将内网的路由器ddns设置为机器的ipv4地址
- adguardhome 上游 DNS 服务器
- adguardhome 重定向内网dns
- 过滤器->DNS重写
- 域名:*.$domain 应答 机器内网 ipv4 地址
- 验证
- 内网运行
nslookup adguardhome.$domain
出现内网地址
- 外网运行
nslookup adguardhome.$domain
出现cloudflare的服务器地址
- https证书使用web的认证方式,强依赖于ddns
强烈建议使用非22端口
sudo ufw allow from 192.168.31.0/24 to any port 80
sudo ufw allow from 192.168.31.0/24 to any port 443
修改上面的网段为你的内网网段
for ipv4 in `curl -s https://www.cloudflare.com/ips-v4 | tee ips-v4`
do
sudo ufw allow from $ipv4 to any port 80
sudo ufw allow from $ipv4 to any port 443
done
for ipv6 in `curl -s https://www.cloudflare.com/ips-v6 | tee ips-v6`
do
sudo ufw allow from $ipv6 to any port 80
sudo ufw allow from $ipv6 to any port 443
done
sudo ufw allow from 192.168.31.0/24 to any port 139
sudo ufw allow from 192.168.31.0/24 to any port 445
修改上面的网段为你的内网网段
sudo apt install -y ufw
sudo ufw enable
sudo ufw default deny
echo '开启ssh端口权限'
sudo ufw allow 22
sudo ufw reload
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo systemctl enable docker.service
sudo gpasswd -a $USER docker
newgrp docker
sudo systemctl restart docker
git clone https://github.com/dezhishen/self-hosted-server-traefik.git
cd self-hosted-server-traefik
chmod +x ./start.sh
chmod +x -R ./scripts
./start.sh
使用过的配置文件都存放在项目目录的.args下面
- docker_data # filebrowser 文件挂载根目录
- public # 多应用挂载
- music
- downloads
- ...
- ddns # 单一应用内部使用
- aria2 # 单一应用内部使用
...
- 如果安装和正确设置了
adguardhome
,内网将直接访问机器
- 如果没有安装则和外网一致
- 容器均挂载在创建的(bridge)容器网络上
- traefik 映射宿主机 80/443
- samba 映射宿主机 139/445 端口
- ddns 网络模式为hosts以获取ipv6地址
- 部分需要upnp的容器同时挂载在(macvlan)容器网络上
- prowlarr,添加其他PVR应用,统一进行管理
- prowlarr,添加index,进行资源的搜索
- prowlarr,添加下载客户端 nzbget/qbit
- nzbget/qbit,配置分类和自动保存文件夹
- 下载完成后,PVR应用自动刮削信息
- emby/jellyfin等提供外部统一入口
- prowlarr中进行搜索,点击下载
- 等待下载完成
- 下载完成后,进入emby或者jellyfin查看资源
名称 |
说明 |
emby |
emby,用于组织和管理 电影/音乐/电视/照片,并将它们流式传输到智能电视、流媒体盒和移动设备。 |
jellyfin |
jellyfin, Emby 和 Plex 的替代方案,通过多个应用程序从专用服务器向最终用户设备提供媒体。 |
lidarr |
Lidarr是用户的音乐收藏管理器。 |
ombi |
Ombi允许您托管自己的 Plex 请求和用户管理系统。 |
prowlarr |
prowlarr 与 Sonarr、Radarr、Lidarr 和 Readarr 无缝集成,提供PT/BT源管理,提供pt/bt等搜索,发送下载到qbit/nzbget。 |
radarr |
radarr 电影管理。 |
readarr |
readarr 书籍管理 |
sonarr |
sonarr 电视剧(追剧),管理 |
bazarr |
bazarr 字幕获取 |
chinesesubfinder |
中文字幕获取 |