廢話不多說,先上效果圖!
感謝大神們的開發(fā),本文僅記錄自己的配置過程,大部分方法都來自項目的 issue 項目地址:https://github.com/nondanee/UnblockNeteaseMusic 感謝、感謝、感謝 直接開始! 使用 Docker 部署https://hub./r/nondanee/unblockneteasemusic/
1
| docker pull nondanee/unblockneteasemusic
|
使用自簽證書
1 2 3 4 5 6 7
| # 注意替換下方 -p 后的端口,-v 后的路徑 docker run --name unblockneteasemusic \ -p 2333:2333 -p 2334:2334 \ -v /path/to/server.crt:/usr/src/app/server.crt \ -v /path/to/server.key:/usr/src/app/server.key \ -d nondanee/unblockneteasemusic \ -s -e https://自己的域名 -p 2333:2334
|
使用自帶證書
1 2 3 4 5
| # 注意替換下方 -p 后的端口,-v 后的路徑 docker run --name unblockneteasemusic \ -p 2333:2333 -p 2334:2334 \ -d nondanee/unblockneteasemusic \ -s -e https://自己的域名 -p 2333:2334
|
舊:以下為手動配置 服務(wù)端設(shè)置原服務(wù)支持在本地運行,為方便我部署在服務(wù)器端,使用阿里云的輕量應(yīng)用服務(wù)器,CentOS 7 準備一個域名,并簽發(fā) SSL 證書 安裝 NodeJS:https://github.com/nodesource/distributions/blob/master/README.md 在 CentOS 7 中安裝 NodeJS 13.x
1 2 3 4 5 6 7
| yum install gcc-c++ make
# root 用戶 curl -sL https://rpm./setup_13.x | bash -
# 非 root 用戶 curl -sL https://rpm./setup_13.x | sudo bash -
|
在服務(wù)器端 clone 項目
1
| git clone https://github.com/nondanee/UnblockNeteaseMusic.git
|
—————- 可選步驟 —————- 在本地生成自簽名證書 (此步可省略,使用作者提供的證書亦可)
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| # 生成 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'
# 生成服務(wù)器私鑰 openssl genrsa -out server.key 2048
# 生成證書簽發(fā)請求 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 簽發(fā)服務(wù)器證書 openssl x509 -req -extfile <(printf 'subjectAltName=DNS:music.163.com,DNS:*.music.163.com') -days 365 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt
|
上述步驟完成后 將服務(wù)器私鑰 (server.key) 和服務(wù)器證書 (server.crt) 拷貝到遠程服務(wù)器倉庫中覆蓋原有文件 —————- 可選步驟結(jié)束 —————- 為解決 iOS 能夠使用,這里使用自己的域名進行轉(zhuǎn)發(fā),如沒有域名則參考官方信任自簽發(fā)證書的方法,這里不展開描述:iOS 食用指南 配置 Nginx 服務(wù),在 Nginx 配置后加入如下配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| server { listen 443 ssl http2; server_name xxx.xxx.com; # 準備的域名 ssl_certificate /root/UnblockNeteaseMusic/xxx.xxx.xxx.crt; # SSL 證書路徑 ssl_certificate_key /root/UnblockNeteaseMusic/xxx.xxx.xxx.key; # SSL 密鑰路徑 ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on;
location / { proxy_pass http://localhost:2333; # 代理到 Unblock 服務(wù)地址,端口可自行修改 } }
|
完事后測試并重載 Nginx 配置
1 2 3 4 5
| $ nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
$ nginx -s reload
|
使用 service 管理服務(wù),新建 /etc/systemd/system/UnblockNeteaseMusic.service 寫入如下內(nèi)容 /etc/systemd/system/UnblockNeteaseMusic.service 1 2 3 4 5 6 7 8 9 10 11 12 13
| [Unit] Description=UnblockNeteaseMusic
[Service] Type=simple ExecStart=/usr/bin/node /root/UnblockNeteaseMusic/app.js -s -e https://自己的域名 -p 2333:2334 WorkingDirectory=/root/UnblockNeteaseMusic Restart=always RestartSec=10 User=root
[Install] WantedBy=multi-user.target
|
注意: ExecStart 和 WorkingDirectory 根據(jù)情況改動ExecStart 中 -e 后接已經(jīng)簽發(fā)證書的域名,記得為 https 。這一參數(shù)的原因詳見:iOS 配置經(jīng)驗分享ExecStart 中 -s 表示啟用嚴格模式,僅允許網(wǎng)易云相關(guān)的通過,防止 HTTP 代理濫用,可選ExecStart 中 -p 后接端口,隨意設(shè)置,如 2333:2334,第一個端口保持和 nginx 配置中設(shè)置的一致- 記得在阿里云控制臺防火墻中放行第一個端口 2333
啟動服務(wù)
1 2
| systemctl daemon-reload systemctl start UnblockNeteaseMusic
|
服務(wù)端完成 管理命令
1 2 3 4 5 6
| systemctl status UnblockNeteaseMusic # 查看服務(wù)狀態(tài) systemctl start UnblockNeteaseMusic # 啟動服務(wù) systemctl restart UnblockNeteaseMusic # 重啟服務(wù) systemctl stop UnblockNeteaseMusic # 停止服務(wù) systemctl enable UnblockNeteaseMusic # 開機自啟動 systemctl disable UnblockNeteaseMusic # 取消開機自啟動
|
macOS配合 Proxifier 食用 Proxies 添加 HTTPS 代理 添加規(guī)則 Applications 添加:NeteaseMusic; com.apple.WebKit.Networking Target Hosts 添加:*.music.163.com; *.netease.com; Action 選擇上一步添加的 HTTPS 代理 打開網(wǎng)易云音樂 App,如出現(xiàn)以下提示,則還需要信任一個證書
使用 Safari 打開 music.163.com,會出現(xiàn)危險警告,選擇查看詳細信息,并點擊最后訪問此網(wǎng)站,然后信任證書 搞定! 注意:Proxifier 需要一直在后臺運行,才能轉(zhuǎn)發(fā)網(wǎng)易云的流量 iOS配合 Quantumult X 食用 手動修改 Quantumult X 配置文件 在 [policy] 下添加組策略:
1
| static=NeteaseMusic, NeteaseUnlocker, direct, img-url=https://raw.githubusercontent.com/Koolson/Qure/master/IconSet/Netease_Music_Unlock.png
|
在 [server_local] 下添加 HTTP 代理:
1
| http=xxx.xxx.xxx.xxx:2333, over-tls=false, fast-open=false, udp-relay=false, tag=NeteaseUnlocker
|
xxx.xxx.xxx.xxx:2333 替換為服務(wù)器 IP 和指定端口 在 [filter_local] 下添加規(guī)則:
1 2 3 4
| DOMAIN-SUFFIX,music.163.com,NeteaseMusic DOMAIN-SUFFIX,api.iplay.163.com,NeteaseMusic DOMAIN-SUFFIX,mam.netease.com,NeteaseMusic DOMAIN-SUFFIX,hz.netease.com,NeteaseMusic
|
完成!
Windows配置簡單,打開網(wǎng)易云音樂的設(shè)置 工具 -> 自定義代理 -> HTTP 代理 填入相應(yīng)的服務(wù)器和端口,重啟應(yīng)用生效
完成!
參考資料:
|