阿里云Ubuntu16系统搭建Minecraft PE服务器,并开放接口

前言

昨天突发奇想用阿里云来搭建一个Minecraft的服务器共手机版使用,本以为很简单的事情,结果兜兜转转做了两天才勉强搭建成功。
这个教程不能说从0开始,毕竟你先得有钱买服务器,
也不能说技术贴,毕竟不深入,也比较照顾新手。
总体对接触过linux的同学会容易一点。

配置说明

云平台:阿里云
系统版本:Ubuntu16
服务器平台:Nukkit
使用到的工具:Putty,FileZilla,浏览器

第一步:购买服务器和下载工具

首先你得有一个阿里云服务器,学生的话9.9一个月买最低配,可供5人左右小型服务器。至于怎么选内存,规格什么的,就不细说了,这个没太大影响,而且网上也有很多教程。
买好服务器后,需要下载Putty,FileZilla。
Putty是为了通过SSH连接服务器,作为操作窗口(毕竟图形化太占内存了,本来配置就不高)
FileZilla是为了从你的window电脑传文件到云主机
所以不用这两个也行,可用同类软件代替。
putty使用教程:https://jingyan.baidu.com/article/f96699bbe53d82894e3c1bec.html
FileZilla使用教程:https://help.aliyun.com/knowledge_detail/36243.html
(我觉得阿里云官方的putty教程对新手不太友好)
觉得不够详细可以自己百度。
顺便附上我的阿里云折扣卷:https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=vaz2csxo&utm_source=vaz2csxo
(购买云服务器ECS会用到)
你的支持是我创作的动力

putty.exe

第二步:下载Nukiit核心

下载方法很多,可以去官网下载,如果官网挂了的话,也可以去贴吧、论坛等地方下载,我也会提供一个。
内核就是这样一个东西。


Nukkit内核

官网地址:https://ci.nukkitx.com/job/NukkitX/job/master/
我用的内核:https:/防/pan.b和aidu.c谐om/s/10cEqMKmXiaAiLcnDBFpNVw 密码:f26f
官网进去之后点这个下载

Nukkit官网下载

名字不太一样,不过没关系下载完成之后用FileZilla传到你的云主机上。


上传内核

我是在home里面新建Nukkit文件夹,然后把内核直接拖过去。
把各种文件分清楚看起来比较舒服。

第三步:运行Nukkit

首先要确定你的云主机装了JDK,通过这条命令

java -version

查看jdk版本

如果没有显示版本号,下面会提示安装,并给出安装命令。
也可以直接用下面这句:(改变openjdk-8-jdk可下载不同版本)

apt-get install openjdk-8-jdk

然后再次检查你的JDK,版本要1.8或以上的
JDK安装完后请cd到Nukkit核心所在的文件夹,即移动到文件夹下


移动到对应文件夹下

如果你的位置和我的一样,可以用我的指令,注意看‘#’后面的变化,
用ls指令可以查看文件夹下的文件,如图。
(小技巧:如果文件夹名字太长,可以用TAB键自动补全,即文件夹名字敲到一半,按TAB键会自动补全名字)

注意:下面一键开服务

之后用下面的命令运行Nukkit开服

java -jar nukkit.jar

通过该条指令就可一键开服了


一键开服

如图开服成功,注意图中红框部分。
chs是选择中文简体,服务器对应PE版本是v1.1.3,对应端口是19132

第四步:开放阿里云接口

然鹅,到这里还没有结束。
一般的教程到这里就结束了,如果你用局域网用自己的window开服确实也就结束了。
但用阿里云开服还没有结束,你会发现你的手机还是没法连上服务器,因为......
划重点!划重点!划重点!
还没有关闭防火墙,开放端口。
下面我们只能继续:
用这条指令查看防火墙状态:

ufw status

未关闭防火墙

active,看到这个单词就说明防火墙在活跃状态,没有关闭。

随后用这条指令关闭:

ufw disable

image.png

如图所示,然后再次查看防火墙状态inactive,妥了,防火墙已经关闭了
接下来开放阿里云端口,我们需要开放UDP协议19132端口
在浏览器打开阿里云官网,登录你的账号,打开控制台。(在右上角)


进入控制台

先选择你服务器所在的地区,我的服务器在华北2
然后云服务器ECS->安全组->配置规则

配置安全规则

进入配置规则页面后,
右上角添加安全组规则

添加安全组规则

具体配置内容
说明一下:
协议类型:自定义UDP
(打死我也想不到是用UDP协议来传输数据,这里折腾了我一晚上)
端口范围:19132
(服务器所用的接口,可以在 server.properties里更改)
授权对象:0.0.0.0/0
(所以外网IP都可以访问)
描述:为我的世界服务器开放的端口
(自己写的备注,防止以后忘了这是干嘛用的)


安全组规则

规则配置完成之后是这个样子,
我们要确认这三个:自定义UDP,19132/19132,,0.0.0.0/0

安全组规则添加完成

然后就可以用手机通过你的公网IP和端口来接入服务器了,
可以装各种插件(我还不会),和基友一起愉快的玩耍了!


添加服务器

第五步:用screen将进程挂在后台。
此时你会发现,一但关闭putty窗口后,服务器就关闭了,因此我们需要screen。

apt-get install screen

然后创建一个新对话框,并在里面开启服务器

screen -R mc
java -jar nukkit.jar

接着Ctrl+a然后按d挂起
下次连接putty时,用下面指令回复窗口

screen -r mc

如果恢复不了,用下面这两条:

screen -d mc
screen -r mc

查看挂起的所有窗口

screen -ls

用exit指令可结束窗口,
更具体可以百度:linux中screen的用法

最后一步:检查

如果登不进去,请检查
1.防火墙已关闭
2.端口已开放,并且选择的是自定义UDP
3.公网IP和端口号无误
4.PE版本号和服务器版本号对应
5.登录名不能是steve
以上有任何我没写清楚的地方,推荐自己百度,毕竟大体思路是没有问题,剩下细枝末节的照顾不到,当然也可以下方留言。

后序

这两天我几乎把开发相关的帖子、文章都看遍了,还有关于用pocketMine开服也看了很多,但pocketMine遇到的问题实在太多,最终只有Nukkit能搭起来,然后用了一下午时间整理出这篇文章,虽然没法面面俱到,但也有些参考价值。有问题可以在下方留言,不敢说都能解决,但有空会看的。
希望能有dalao交我如何用PocketMine开服。
创作不易
买高配云服务器的话请考虑用我的折扣卷,喜欢的换请点下方的爱心,可以适当打赏我会更开心,你们的支持将是我创作的动力,祝你们顺利开服。

你可能感兴趣的:(阿里云Ubuntu16系统搭建Minecraft PE服务器,并开放接口)