nondanee / UnblockNeteaseMusic

Revive unavailable songs for Netease Cloud Music
MIT License
17.39k stars 2.51k forks source link

本教程 安卓 ios mac 可以完美本地和远程解锁, win10 可以本地解锁,远程只能点亮。 #546

Open h605290713 opened 4 years ago

h605290713 commented 4 years ago

安卓 ios mac 可以完美本地和远程解锁, win10 可以本地解锁,远程只能点亮。来个大佬解决一下win的远程解锁😄。

生成证书文件

看这里https://blog.neroxps.cn/2018/03/17/acme/

配置nginx

server { listen port3 ssl http2; server_name 你的域名; ssl_certificate /你的证书路径/你的域名.cer; ssl_certificate_key /你的证书路径/你的域名.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA'; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:50m; ssl_stapling on; ssl_stapling_verify on;

    location / {
             proxy_pass  http://127.0.0.1: port2;
            }
    }

配置乳酸菌转发

服务端部署 glider 下载 glider

wget -N --no-check-certificate https://github.com/nadoo/glider/releases/download/v0.9.3/glider_0.9.3_linux_amd64.tar.gz 解压

tar zxvf glider_0.9.3_linux_amd64.tar.gz && cd glider_0.9.3_linux_amd64 复制二进制文件

cp glider /usr/bin/ && chmod +x /usr/bin/glider 创建配置文件,以适用于 macOS / iOS / Linux 为例

mkdir /etc/glider/ && vi /etc/glider/https-ss.conf 写入以下内容并保存,需自行修改加密方式 method,密码 password,Shadowsocks 监听的端口 port 及 UnblockNeteaseMusic 监听的端口。

###################################### verbose=True

listen=ss://method:password@:port1

forward=http://127.0.0.1:port2

######################################

通过 systemd 创建开机启动

vim /etc/systemd/system/glider-https-ss.service 写入以下内容并保存

[Unit] Description=Glider UnblockNeteaseMusic Shadowsocks Service for macOS, iOS, Linux After=network.target nss-lookup.target

[Service] Type=simple Restart=on-failure LimitNOFILE=102400 CPUAccounting=yes MemoryAccounting=yes

ExecStart=/usr/bin/glider -config /etc/glider/https-ss.conf

CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE NoNewPrivileges=true

[Install] WantedBy=multi-user.target

启用 glider-https-ss.service

systemctl enable glider-https-ss.service

启动 glider-https-ss.service

systemctl start glider-https-ss.service

查看 glider-https-ss.service 状态

systemctl status glider-https-ss.service

使用node启动项目

node /UnblockNeteaseMusic-0.25.3/app.js -p port2:port3 -o kuwo qq migu -e https://music.163.com

加一个自生成证书模板

生成 CA 私钥

openssl genrsa -out ca.key 4096

生成 CA 证书 ("YOURNAME" 处填上你自己的名字)

openssl req -x509 -new -nodes -key ca.key -sha256 -days 730 -out ca.crt -subj "/C=CN/CN=UnblockNeteaseMusic root CA/O=root"

生成服务器私钥

openssl genrsa -out server.key 2048

生成证书签发请求

openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CN/L=Hangzhou/O=NetEase (Hangzhou) Network Co., Ltd/OU=IT Dept./CN=*.music.163.com"

使用 CA 签发服务器证书

openssl x509 -req -extfile <(printf "extendedKeyUsage=serverAuth\nsubjectAltName=DNS:music.163.com,DNS:*.music.163.com") -sha256 -days 730 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt

将服务器私钥 (server.key) 和服务器证书 (server.crt) 拷贝到仓库中覆盖原有文件 (若使用 docker,可通过添加 -v /path/to/server.crt:/usr/src/app/server.crt -v /path/to/server.key:/usr/src/app/server.key 参数映射本地路径覆盖原有文件),再将 CA 证书 (ca.crt) 安装到系统;如果不自行签发,直接安装仓库里的 CA 证书 (ca.crt) 即可

CA 证书需要手动配置为信任,切记 (macOS 上信任证书的简便步骤 👉 #463) (iOS 上容易遗漏的步骤 👉 https://support.apple.com/zh-cn/HT204477)

nondanee commented 4 years ago

你配 nginx 的目的是什么?

Z3p5 commented 4 years ago

按照步骤试了一下发现ios可以,但是安卓不行,不知道是不是安卓的ssr软件有问题

lulu1199 commented 4 years ago

小白看的有点迷糊 不知可否配个图文教程?

lulu1199 commented 4 years ago

这个服务是搭建在vps上的吗?

h605290713 commented 4 years ago

按照步骤试了一下发现ios可以,但是安卓不行,不知道是不是安卓的ssr软件有问题

安装使用clash 加规则

h605290713 commented 4 years ago

这个服务是搭建在vps上的吗?

是的

lulu1199 commented 4 years ago

我是在群晖虚拟机里虚拟了一个contos7 使用你这种方法不知可否远程解锁?

h605290713 commented 4 years ago

我是在群晖虚拟机里虚拟了一个contos7 使用你这种方法不知可否远程解锁?

都可以 注意端口号 不能错

Z3p5 commented 4 years ago

按照步骤试了一下发现ios可以,但是安卓不行,不知道是不是安卓的ssr软件有问题

安装使用clash 加规则

我用clash for android好像不能导入ss,然后clashA可能配置文件有问题,灰色音乐没有解锁,安卓太难了😭😭😭

lulu1199 commented 4 years ago

不知可否加个联系方式?

nondanee commented 4 years ago

按照步骤试了一下发现ios可以,但是安卓不行,不知道是不是安卓的ssr软件有问题

@Z3p5 用这个参数 Android 是一定不行的 https://github.com/nondanee/UnblockNeteaseMusic/issues/30#issuecomment-472538422

node /UnblockNeteaseMusic-0.25.3/app.js -p port2:port3 -o kuwo qq migu -e https://music.163.com

API 26 以上默认不信任用户证书,endpoint 设成 https://music.163.com 必定会 SSL error 你可以换到 6.3 及以下的网易云 app,能装证书后测试

其实 Android 根本就不难,默认参数就行了

Z3p5 commented 4 years ago

按照步骤试了一下发现ios可以,但是安卓不行,不知道是不是安卓的ssr软件有问题

@Z3p5 用这个参数 Android 是一定不行的 #30 (comment)

node /UnblockNeteaseMusic-0.25.3/app.js -p port2:port3 -o kuwo qq migu -e https://music.163.com

API 26 以上默认不信任用户证书,endpoint 设成 https://music.163.com 必定会 SSL error 你可以换到 6.3 及以下的网易云 app,能装证书后测试

其实 Android 根本就不难,默认参数就行了

谢谢大佬,问题解决了

h605290713 commented 4 years ago

按照步骤试了一下发现ios可以,但是安卓不行,不知道是不是安卓的ssr软件有问题

@Z3p5 用这个参数 Android 是一定不行的 #30 (comment)

node /UnblockNeteaseMusic-0.25.3/app.js -p port2:port3 -o kuwo qq migu -e https://music.163.com

API 26 以上默认不信任用户证书,endpoint 设成 https://music.163.com 必定会 SSL error 你可以换到 6.3 及以下的网易云 app,能装证书后测试 其实 Android 根本就不难,默认参数就行了

谢谢大佬,问题解决了

那为什么我的安卓能用呢 -。- 我是7.1.30.254054版本

nondanee commented 4 years ago

@h605290713 哦,那可能某个版本开始音源也可以降级了吧 总之 Android 上是会 ssl error 的,ssl error 以后降到 http windows 端就不会降,播放不了,大概就是你说的远程只能点亮的现象

lulu1199 commented 4 years ago

请你抽盒中华能不能帮忙配置一下🤗