云服务器搭建网易云解锁服务

知识分子没文化
2021-06-06 / 0 评论 / 294 阅读 / 正在检测是否收录...

目录:

环境说明:

服务器:ubuntu 20.04

客户端:Win10 / DeepinV20 社区版

网易云音乐版本:V2.8.1(Win10) / V1.2.1(Deepin)

前言

openwrt上面有一款插件叫“网易云音乐解锁”,可以解锁网易云的所有会员歌曲和没有版权的歌曲,可是要使用这项服务就必须连接到openwrt路由器,如果在外面的话就不行了,所以还是有一定的局限性。

最近在github上发现一个项目,可以利用云服务器来搭建一个网易云解锁服务。项目地址:GitHub - nondanee/UnblockNeteaseMusic: Revive unavailable songs for Netease Cloud Music

还有另外一个项目:GitHub - meng-chuan/Unlock-netease-cloud-music: 解锁网易云音乐客户端变灰歌曲,这个项目整合了目前各个平台解锁网易云的相关方法,核心就是上面的那个项目。作者写了一个详细的教程,也包括本地搭建和服务器(Linux/Windows)端搭建的教程。服务器环境是直接使用宝塔面板,并不是手动搭建。目前我的服务器并没有使用宝塔面板,不得不手动搭建环境。所以就有了这一篇博客。

下面就是在云服务器上搭建环境并运行项目的整个过程:

1.安装node.js和npm

ubuntu中用一句命令就可以安装node.js和npm:

sudo apt update
sudo apt install nodejs npm

安装完成后,输入以下命令可以查看node.js版本:

nodejs --version

2.启动服务

从github上把项目文件拉取下来,然后上传到服务器上的任意一个位置。

git clone https://github.com/nondanee/UnblockNeteaseMusic.git

完成后,进入到服务器上该项目的文件夹里,运行如下命令启动服务:

node app.js -p 10000 -f 59.111.181.60

-p”命令表示设置服务端口,这里选择10000端口。同时,需要在服务器的安全组中放行这个端口。“-f”命令表示强制使用网易服务器ip。

01

3.设置服务开机启动

此时,如果退出了ssh连接窗口,那么这个服务将会停止,所以我们还需要把这项服务添加到开机启动项目中,使其开机就能启动并在后台运行。

/etc/init.d目录下新建一个脚本文件:

sudo nano /etc/init.d/uncm.sh

输入以下内容,并根据注释更改相关内容:

#!/bin/bash
### BEGIN INIT INFO
# Provides:     unlockmusic
# Required-Start:  $remote_fs $syslog
# Required-Stop:   $remote_fs $syslog
# Default-Start:   2 3 4 5
# Default-Stop:   0 1 6
# Short-Description: start unlockmusic
# Description:    start unlockmusic
### END INIT INFO

# 下面这一部分是命令内容,以exit 0结束
# /root/Unlock-netease-cloud-music换成自己的目录
cd /root/Unlock-netease-cloud-music
node app.js -p 10000

exit 0

修改完之后ctrl +o保存,ctrl +x退出。执行以下语句给脚本文件足够的执行权限:

sudo chmod 755 uncm.sh

最后再将脚本添加到开机启动:

sudo update-rc.d uncm.sh defaults 90

# 90表示执行的优先级,数字越大表示越晚执行。

附:移除脚本命令:

sudo update-rc.d -f [脚本文件名] remove

做完这些之后,重启一遍服务器,使服务开机运行起来,然后我们就可以放手不用管了。至此,一个安全稳定的网易云解锁服务就搭建好了。只要服务器不挂,解锁服务就能生效。

4.设置网易云音乐代理

4.1 Windows端

打开win10的网易云音乐,进入“设置”->“工具”选项,选择“自定义代理”,“服务器”填写域名或者ip地址,“端口”填前面启动项目时设置的端口号即可。

02

然后点击测试按钮,如果配置无误,那么就会提示“该代理可以使用

03

点击确定,重启网易云音乐。

4.2 Linux端

此项是解锁Linux端网易云音乐的无版权歌曲,Windows用户直接忽略即可。

还有,请注意此项所述的“Linux”是指客户端,前面的”Linux“是指服务器端。

此处以Deepin系统为例,方法整理自:Linux 客户端食用指南 · Issue #208 · nondanee/UnblockNeteaseMusic (github.com)

(1) 设置反向代理

Linux端的网易云音乐客户端没有设置代理的选项,也不能指定服务端口,因此这个服务必须要运行在服务器端的80/443端口,但这两个端口一般都是被占用的(因为服务器要提供网站服务),所以还要做反向代理。当然,如果端口没有被占用,就可以跳过设置反向代理这一步了。

添加一个Nginx配置:

server {
    listen 80;
    listen 443 ssl;
    server_name music.163.com interface.music.163.com;

    ssl_certificate /etc/nginx/ssl/server.crt;
    ssl_certificate_key /etc/nginx/ssl/server.key;

    ssl_session_timeout 10m;
    ssl_session_cache shared:SSL:10m;

    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers 'AES128+EECDH:AES128+EDH';
    ssl_prefer_server_ciphers on;

    location / {
            proxy_pass https://127.0.0.1:52000;
            proxy_set_header HOST 'music.163.com';
    }
}

然后重新载入Nginx配置文件:

nginx -s reload
(2) 添加证书

项目目录中默认带有证书文件“ca.crt”。或者也可以选择自己签发证书:进阶配置 · Issue #48 · nondanee/UnblockNeteaseMusic (github.com)

切换到项目目录,将证书文件复制到/usr/local/share/ca-certificates/目录下:

sudo cp ca.crt /usr/local/share/ca-certificates/

然后刷新:

sudo update-ca-certificates

如果要删除已经信任的证书,先将/usr/local/share/ca-certificates/下拷贝的.crt证书文件删除,

然后执行以下命令,刷新配置文件,删除软链接:

sudo update-ca-certificates -f
(3) 修改host文件

host文件位置为/etc/hosts。向host文件末尾添加如下内容:

# host文件格式为“ip地址 网址”,中间有空格
[服务器ip] music.163.com
[服务器ip] interface.music.163.com
(4) 添加默认启动参数

修改网易云的启动项,位于/usr/share/applications,直接编辑:

sudo nano /usr/share/applications/netease-cloud-music.desktop

在“Exec”这一行末尾增加--ignore-certificate-errors 即可。

此时,Linux端的网易云音乐也可以听变灰的歌曲了。

0

评论 (0)

取消