Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deepin/ubuntu 配置记录 #590

Open
MentalOmega opened this issue Aug 4, 2020 · 17 comments
Open

deepin/ubuntu 配置记录 #590

MentalOmega opened this issue Aug 4, 2020 · 17 comments

Comments

@MentalOmega
Copy link

效果图

image
image

记录一下解锁过程

#48
首先是按照这里面的过程,签发一个CA证书

# 生成 CA 私钥
openssl genrsa -out ca.key 2048

# 生成 CA 证书 ("YOURNAME" 处填上你自己的名字)
openssl req -x509 -new -nodes -key ca.key -sha256 -days 1825 -out ca.crt -subj "/C=CN/CN=UnblockNeteaseMusic Root CA/O=YOURNAME"

# 生成服务器私钥
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 365 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt

然后按照这篇
#208

lushan@u:~/Downloads$ sudo cp ca.crt /usr/local/share/ca-certificates/
[sudo] password for lushan: 
lushan@u:~/Downloads$ sudo update-ca-certificates 
Updating certificates in /etc/ssl/certs...
1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...

Adding debian:ca.pem
done.
done.

我在这里使用了 node.js 启动,需要同时 -p 80:443 映射两个端口,若在本机运行程序,请指定网易云服务器 IP -f xxx.xxx.xxx.xxx (可在修改 hosts 前通过 ping music.163.com 获得) 使用代理 -u http(s):https://xxx.xxx.xxx.xxx:xxx,以防请求死循环。

westwood@westwood-PC:~/Desktop/UnblockNeteaseMusic$ sudo node app.js -p 80:443 -f 59.111.181.60
HTTP Server running @ http:https://0.0.0.0:80
HTTPS Server running @ http:https://0.0.0.0:443

增加默认启动参数
Linux 客户端 (1.2 版本以上需要自签证书 MITM,启动客户端需要增加 --ignore-certificate-errors 参数)

lushan@u:/usr/share/applications$ ls | grep netease
netease-cloud-music.desktop
lushan@u:/usr/share/applications$ sudo vim netease-cloud-music.desktop 

在这里插入图片描述
修改host

sudo vim /etc/hosts
127.0.0.1 music.163.com
127.0.0.1 interface.music.163.com

此时访问 music.163.com 是可以验证成功的,客户端也是可行的。
在这里插入图片描述

@zwbdmm
Copy link

zwbdmm commented Aug 9, 2020

非常感谢!看了您的总结,终于能让大块的灰色消失!

@TyrantLucifer
Copy link

看了您的总结,很受启发,但是有个问题想要请问一下,如何卸载已经安装的证书呢?

@MentalOmega
Copy link
Author

看了您的总结,很受启发,但是有个问题想要请问一下,如何卸载已经安装的证书呢?
sudo update-ca-certificates

@TyrantLucifer
Copy link

看了您的总结,很受启发,但是有个问题想要请问一下,如何卸载已经安装的证书呢?
sudo update-ca-certificates

后来查找资料了解了一下这个证书的生成过程和安装过程,问题已经解决。
在此记录一下:
如果要删除已经信任的证书,则将/usr/local/share/ca-certificates/下拷贝的.crt文件删除,执行
sudo update-ca-certificates -f,刷新配置文件,删除软链接。

@ghost
Copy link

ghost commented Sep 13, 2020

呜哇~
困扰了我整一年的问题终于有解决办法了

@rainbye
Copy link

rainbye commented Oct 19, 2020

大佬,这个本地sudo node app.js -p 80:443 -f 59.111.181.60 的命令,如何添加开机启动,这条命令好像连上网后才能生效

@Her-Joe
Copy link

Her-Joe commented Oct 22, 2020

经过验证
不需要导入证书,因为没用,直接忽略证书错误就行 | 见 #432 如是说
代理模式亦可使用
这里想问下 @MentalOmega

我在这里使用了 node.js 启动,需要同时 -p 80:443 映射两个端口,若在本机运行程序,请指定网易云服务器 IP -f xxx.xxx.xxx.xxx (可在修改 hosts 前通过 ping music.163.com 获得) 或 使用代理 -u http(s):https://xxx.xxx.xxx.xxx:xxx,以防请求死循环。

映射两个端口与作者指南中映射一个端口有何区别呢

@QianfengClarkShen
Copy link

hello,请问有没有比较方便的海外党获取music.163.com IP地址的方式啊。在这边ping出来的全是香港的IP。

@MentalOmega
Copy link
Author

大佬,这个本地sudo node app.js -p 80:443 -f 59.111.181.60 的命令,如何添加开机启动,这条命令好像连上网后才能生效

Hello,我也是参考这里,https://www.lolimay.cn/2018/10/14/autostart-in-deepin/ ,将命令写在rc.local,用root启动,确实会存在“开机时如果没有连上网络,node app.js命令会启动失败”的问题,目前没想到优雅的解决方法

@MentalOmega
Copy link
Author

经过验证
不需要导入证书,因为没用,直接忽略证书错误就行 | 见 #432 如是说
代理模式亦可使用
这里想问下 @MentalOmega

我在这里使用了 node.js 启动,需要同时 -p 80:443 映射两个端口,若在本机运行程序,请指定网易云服务器 IP -f xxx.xxx.xxx.xxx (可在修改 hosts 前通过 ping music.163.com 获得) 或 使用代理 -u http(s):https://xxx.xxx.xxx.xxx:xxx,以防请求死循环。

映射两个端口与作者指南中映射一个端口有何区别呢

Hello,您的这个疑问跟我当时的想法一模一样,可以看我贴出来的第二张命令行里的图片,播放歌曲的时候有http(80)和ssl(443)两个连接,所以需要同时代理两个端口。

@MentalOmega
Copy link
Author

hello,请问有没有比较方便的海外党获取music.163.com IP地址的方式啊。在这边ping出来的全是香港的IP。

Hello, may be would help you http:https://ip.tool.chinaz.com/music.163.com

@Her-Joe
Copy link

Her-Joe commented Nov 13, 2020

经过验证
不需要导入证书,因为没用,直接忽略证书错误就行 | 见 #432 如是说
代理模式亦可使用
这里想问下 @MentalOmega

我在这里使用了 node.js 启动,需要同时 -p 80:443 映射两个端口,若在本机运行程序,请指定网易云服务器 IP -f xxx.xxx.xxx.xxx (可在修改 hosts 前通过 ping music.163.com 获得) 或 使用代理 -u http(s):https://xxx.xxx.xxx.xxx:xxx,以防请求死循环。

映射两个端口与作者指南中映射一个端口有何区别呢

Hello,您的这个疑问跟我当时的想法一模一样,可以看我贴出来的第二张命令行里的图片,播放歌曲的时候有http(80)和ssl(443)两个连接,所以需要同时代理两个端口。

谢谢你的回复,那之后我补充了一点网络知识,发现如果使用hosts模式,那么80端口负责http协议,443端口负责https协议,因为新版本网易云没办法将https降级为http了,所以需要指定2个端口来满足两个协议的端口需求.
当然代理模式不用特别指定80和443,随便两个都是可以的

@myfreax
Copy link

myfreax commented Apr 16, 2021

经过验证
不需要导入证书,因为没用,直接忽略证书错误就行 | 见 #432 如是说
代理模式亦可使用
这里想问下 @MentalOmega

我在这里使用了 node.js 启动,需要同时 -p 80:443 映射两个端口,若在本机运行程序,请指定网易云服务器 IP -f xxx.xxx.xxx.xxx (可在修改 hosts 前通过 ping music.163.com 获得) 或 使用代理 -u http(s):https://xxx.xxx.xxx.xxx:xxx,以防请求死循环。

映射两个端口与作者指南中映射一个端口有何区别呢

你说的代理模式是PAC吗?我在PAC模式就没有成功过,可以说说你的配置吗?

@myfreax
Copy link

myfreax commented Apr 16, 2021

Hello every one,我编写一个一键配置脚本,欢迎使用
huangyanxiong01/auto-unlock-netease-music

@MentalOmega
Copy link
Author

经过验证
不需要导入证书,因为没用,直接忽略证书错误就行 | 见 #432 如是说
代理模式亦可使用
这里想问下 @MentalOmega

我在这里使用了 node.js 启动,需要同时 -p 80:443 映射两个端口,若在本机运行程序,请指定网易云服务器 IP -f xxx.xxx.xxx.xxx (可在修改 hosts 前通过 ping music.163.com 获得) 或 使用代理 -u http(s):https://xxx.xxx.xxx.xxx:xxx,以防请求死循环。

映射两个端口与作者指南中映射一个端口有何区别呢

你说的代理模式是PAC吗?我在PAC模式就没有成功过,可以说说你的配置吗?

你好啊,我使用的是修改 hosts 的方法。PAC 模式没有测试过。

@myfreax
Copy link

myfreax commented Apr 17, 2021

经过验证
不需要导入证书,因为没用,直接忽略证书错误就行 | 见 #432 如是说
代理模式亦可使用
这里想问下 @MentalOmega

我在这里使用了 node.js 启动,需要同时 -p 80:443 映射两个端口,若在本机运行程序,请指定网易云服务器 IP -f xxx.xxx.xxx.xxx (可在修改 hosts 前通过 ping music.163.com 获得) 或 使用代理 -u http(s):https://xxx.xxx.xxx.xxx:xxx,以防请求死循环。

映射两个端口与作者指南中映射一个端口有何区别呢

你说的代理模式是PAC吗?我在PAC模式就没有成功过,可以说说你的配置吗?

你好啊,我使用的是修改 hosts 的方法。PAC 模式没有测试过。

那看来是跟你的一样的,我也是直接nginx+host+systemd代理

@colawithsauce
Copy link

我在这里使用了 node.js 启动,需要同时 -p 80:443 映射两个端口,若在本机运行程序,请指定网易云服务器 IP -f xxx.xxx.xxx.xxx (可在修改 hosts 前通过 ping music.163.com 获得) 使用代理 -u http(s):https://xxx.xxx.xxx.xxx:xxx,以防请求死循环。

映射出两个端口是关键!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants