自建DNS劫持服务器,纯内网劫持PS5,屏蔽更新,自动hen

avatar
作者
筋斗云
阅读量:1

背景:目前PS5首次折腾必须要连外网,还要改DNS,除非使用ESP8266/32,
本文的方法是完全不改DNS,不使用ESP8266,不连接外网的情况下自动折腾

能实现什么:
1.折腾全程不连接外网
2.完全自建hen服务器,随时更新,无需重复刷写ESP8266固件
3.解决PKG浏览器首次打开锁地址,无法输入地址的问题
4.彻底屏蔽PS5升级
5.HEN后和局域网可用,可以继续使用NFS网盘和发送bin

解法: 搭建dnsmasq DNS服务器,全域名解析指向内网,搭配ngnix 反向代理所有域名到指定页面
技术栈:Docker + dnsmasq + Nginx

原理:
1.将PS5 的IP 不设置网关,或指向一个不存在的内网IP,这样就不可能上外网
2.自建内网HEN服务器,自建nginx重定向服务器-Docker
3.将PS5 的DNS设置为内网的自建DNS服务器,将所有请求解析转发到自己内网建置的HEN服务器
3.设置nginx,将访问PKG版浏览器的地址 重定向到HEN服务器

[hide]折腾的差不多了,是不是该折腾点家用服务器了![/hide]

--------------------------------------------正式开工--------------------------------------------------------------------------------
0.修改PSN5 IP 略,注意将网关设置为一个不存在的IP,如果你是用openwrt,想要DHCP方式获取特殊的IP和DNS,请修改路由器配置文件

config host         option name 'ps5-pj'         option dns '1'         option ip '192.168.31.236'         option tag 'ps5_hen'         option dhcpv6 'disabled'         option mac '5c:96:66:56:f2:ad' 

在这里插入图片描述

1.DNS劫持,建立DNS服务器 :
为了图省事dnsmasq 直接拉的docker, 参考下面的配置文件,你如果有openwrt的路由器也可以直接使用,改配置文件即可,
这个镜像 jpillora/dnsmasq 带一个web修改配置文件界面,方便

version: "3.3"  services:   dns-server:     image: jpillora/dnsmasq     container_name: dns-server     restart: always     environment:       TZ: Asia/Shanghai       HTTP_USER: admin       HTTP_PASS: admin       PORT: "5380"     network_mode: "host"     volumes:       - /volume3/docker/dnsmasq/config/dnsmasq.conf:/etc/dnsmasq.conf:rw     # 日志大小限制     logging:       driver: json-file       options:         max-size: "10m" 

2.配置dnsmasq :

2.1 配置dnsmasq :

访问容器的5380端口,修改配置文件,重启服务
我们的目的是用户访问任意网址都去我们的网站,直接这一条就好了:

#所有域名 address=/#/192.168.31.232 

如果要特定域名,比如PSGO或者其他PGK浏览器的IP地址,甚至彻底屏蔽升级,可以按下图设置
在这里插入图片描述

2.2 测试dnsmasq :
将自己电脑DNS改成你的DHCP服务器,使用浏览器访问任意网址测试下,或者直接nsloouo或者ping

nslookup www.baidu.com 192.168.31.192 
  1. 安装nginx

安装ngnix是为了实现PS5 用户指南功能,他访问的是一个长链接,类似这样:
https://manuals.playstation.net/document/ct/ps5/index.html
如果直接转发域名,它携带的/document/ct/ps5/index.html传过去,就打不开了
就毕竟我们的伪站是没有这么多路径、虚拟目录,这就需要用到ngnix的反向代理了

为了省事还是用docker,参考下列配置:
用的jc21/nginx-proxy-manage 这个容器,web配置更方便了

version: '3' services:   app:     image: 'dockerproxy.com/jc21/nginx-proxy-manager:latest'     restart: unless-stopped     ports:       - '80:80'  # 冒号左边可以改成自己服务器未被占用的端口       - '82:81'  # 冒号左边可以改成自己服务器未被占用的端口       - '443:443' # 冒号左边可以改成自己服务器未被占用的端口     volumes:       - ./data:/data # 冒号左边可以改路径,现在是表示把数据存放在在当前文件夹下的 data 文件夹中       - ./letsencrypt:/etc/letsencrypt  # 冒号左边可以改路径,现在是表示把数据存放在在当前文件夹下的 letsencrypt 文件夹中 
打开NPM的配置网站,就是81端口对应的那个,修改默认网站设置,先随便填写一个网站

然后打开配置文件直接修改为所有路径到HEN的网站:
一般是在容器的ngnix/data/nginx/default_host/site.conf 这个文件
直接修改为如下样式

# Default Site # ------------------------------------------------------------  server {   listen 80 default; listen [::]:80 default;    server_name default-host.localhost;   access_log /data/logs/default-host_access.log combined;   error_log /data/logs/default-host_error.log warn; 

#将下面的链接,修改为局域网自动破解链接

  include conf.d/include/letsencrypt-acme-challenge.conf;         location / {     rewrite ^ http://192.168.31.192:84/900/02/index.html permanent; }  } 

在这里插入图片描述

找台电脑DNS设置为dnsmasq 的服务器,随便访问下任何网站,并携带路径测试,应该都能转发到目标网站

比如:

http://123/456 http://abc/def/123 

如果先要劫持psgo或者特定PKG浏览器的,请按下图修改

4.自建hen服务器
下载HEN源码 https://github.com/ps5go/ps5go.github.io
参考下图和这篇文章:https://blog.csdn.net/wangrui1573/article/details/112347403
在这里插入图片描述
在这里插入图片描述

新建完成可以用https://IP:端口/测试下

4.修改客户端DNS
现在去PS5修改DNS为自建的dnsmasq,你也可以使用dhcp的option功能,让客户端自动获取不一样的dns

参考这篇文章:https://blog.csdn.net/wangrui1573/article/details/133270271

5.在PS5上测试用户指南
5.1 确保DNS正确
5.2 打开用户指南,信任证书,观察页面跳转和全自动破解
5.3 安装PKG版浏览器,信任证书,打开会发现自动重定向到内网hen服务器

6.网络安装
现在可以从NFS网络存储安装PKG,我们完全上面的设定后,PS5是有内网的,可以直接挂载NFS存储到本地安装
以后说不定能发展出类似 PS3netsrv这样的 网络文件夹方式

上两张图你们就懂了:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!