Linux中國

如何搭建「我的世界」伺服器

我們將通過一個一步步的、新手友好的教程來向你展示如何搭建一個「我的世界(Minecraft)」伺服器。這將會是一個長期的多人遊戲伺服器,你可以與來自世界各地的朋友們一起玩,而不用在同一個區域網下。

如何搭建一個「我的世界」伺服器 - 快速指南

在你開始行動之前,要先了解一些事情:

為什麼你應該使用專門的「我的世界」伺服器提供商

既然你正在閱讀這篇文章,你肯定對搭建自己的「我的世界」伺服器感興趣。不應該使用專門的「我的世界」伺服器提供商的原因有很多,以下是其中一些:

  • 它們通常很慢。這是因為你是在和很多用戶一起共享資源。這有的時候會超負荷,他們中很多都會超售。
  • 你並不能完全控制「我的世界」服務端或真正的伺服器。你沒法按照你的意願進行自定義。
  • 你是受限制的。這種主機套餐或多或少都會有限制。

當然,使用現成的提供商也是有優點的。最好的就是你不用做下面這些操作。但是那還有什麼意思呢?!

為什麼不應該用你的個人電腦作為「我的世界」伺服器

我們注意到很多教程都展示的是如何在你自己的電腦上搭建伺服器。這樣做有一些弊端,比如:

  • 你的家庭網路不夠安全,無法抵擋 DDoS 攻擊。遊戲伺服器通常容易被 DDoS 攻擊,而你的家庭網路設置通常不夠安全,來抵擋它們。很可能連小型攻擊都無法阻擋。
  • 你得處理埠轉發。如果你試著在家庭網路中搭建「我的世界」伺服器的話,你肯定會偶然發現埠轉發的問題,並且處理時可能會有問題。
  • 你得保持你的電腦一直開著。你的電費將會突破天際,並且你會增加不必要的硬體負載。大部分伺服器硬體都是企業級的,提升了穩定性和持久性,專門設計用來處理負載。
  • 你的家庭網路速度不夠快。家庭網路並不是設計用來負載多人聯機遊戲的。即使你想搭建一個小型伺服器,你也需要一個更好的網路套餐。幸運的是,數據中心有多個高速的、企業級的互聯網連接,來保證他們達到(或盡量達到)100%在線。
  • 你的硬體很可能不夠好。再說一次,伺服器使用的都是企業級硬體,最新最快的處理器、固態硬碟,等等。你的個人電腦很可能不是的。
  • 你的個人電腦很可能是 Windows/MacOS。儘管這有所爭議,但我們相信 Linux 更適合搭建遊戲伺服器。不用擔心,搭建「我的世界」伺服器不需要完全了解 Linux(儘管推薦這樣)。我們會向你展示你需要了解的。

我們的建議是不要使用個人電腦,即使從技術角度來說你能做到。買一個雲伺服器並不是很貴。下面我們會向你展示如何在雲伺服器上搭建「我的世界」服務端。小心地遵守以下步驟,就很簡單。

搭建一個「我的世界」伺服器 - 需求

這是一些需求,你在教程開始之前需要擁有並了解它們:

  • 你需要一個 Linux 雲伺服器。我們推薦 Vultr。這家價格便宜,服務質量高,客戶支持很好,並且所有的伺服器硬體都很高端。檢查「我的世界」伺服器需求來選擇你需要哪種類型的伺服器(像內存和硬碟之類的資源)。我們推薦每月 20 美元的套餐。他們也支持按小時收費,所以如果你只是臨時需要伺服器和朋友們聯機的話,你的花費會更少。註冊時選擇 Ubuntu 16.04 發行版。在註冊時選擇離你的朋友們最近的地域。這樣的話你就需要保護並管理伺服器。如果你不想這樣的話,你可以選擇託管的伺服器,這樣的話伺服器提供商可能會給你搭建好一個「我的世界」伺服器。
  • 你需要一個 SSH 客戶端來連接到你的 Linux 雲伺服器。新手通常建議使用 PuTTy,但我們也推薦使用 MobaXTerm。也有很多 SSH 客戶端,所以挑一個你喜歡的吧。
  • 你需要設置你的伺服器(至少做好基本的安全設置)。谷歌一下你會發現很多教程。你也可以按照 Linode 的 安全指南,然後在你的 Vultr 伺服器上一步步操作。
  • 下面我們將會處理軟體依賴,比如 Java。

終於,到我們真正的教程了:

如何在 Ubuntu(Linux)上搭建一個「我的世界」伺服器

這篇教程是為 Vultr 上的 Ubuntu 16.04 撰寫並測試可行的。但是這對 Ubuntu 14.04, Ubuntu 18.04,以及其他基於 Ubuntu 的發行版、其他伺服器提供商也是可行的。

我們使用默認的 Vanilla 服務端。你也可以使用像 CraftBukkit 或 Spigot 這樣的服務端,來支持更多的自定義和插件。雖然如果你使用過多插件的話會影響服務端。這各有優缺點。不管怎麼說,下面的教程使用默認的 Vanilla 服務端,來使事情變得簡單和更新手友好。如果有興趣的話我們可能會發表一篇 CraftBukkit 的教程。

1. 登錄到你的伺服器

我們將使用 root 賬戶。如果你使用受限的賬戶的話,大部分命令都需要 sudo。做你沒有許可權的事情時會出現警告。

你可以通過 SSH 客戶端來登錄你的伺服器。使用你的 IP 和埠(大部分都是 22)。

在你登錄之後,確保你的伺服器安全

2. 更新 Ubuntu

在你做任何事之前都要先更新你的 Ubuntu。你可以通過以下命令更新:

apt-get update && apt-get upgrade

在提示時敲擊「回車鍵」 和/或 y

3. 安裝必要的工具

在這篇教程中你需要一些工具和軟體來編輯文本、長久保持服務端運行等。使用下面的命令安裝:

apt-get install nano wget screen bash default-jdk ufw

其中一些可能已經安裝好了。

4. 下載「我的世界」服務端

首先,創建一個目錄來保存你的「我的世界」服務端和其他文件:

mkdir /opt/minecraft

然後進入新目錄:

cd /opt/minecraft

現在你可以下載「我的世界「服務端文件了。去往下載頁面獲取下載鏈接。使用 wget 下載文件:

wget https://s3.amazonaws.com/Minecraft.Download/versions/1.12.2/minecraft_server.1.12.2.jar

5. 安裝「我的世界」服務端

下載好了服務端的 .jar 文件之後,你就需要先運行一下,它會生成一些文件,包括一個 eula.txt 許可文件。第一次運行的時候,它會返回一個錯誤並退出。這是正常的。使用下面的命令運行它:

java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui

-Xms2048M 是你的服務端能使用的最小的內存,-Xmx3472M 是最大的內存。調整基於你伺服器的硬體資源。如果你在 Vultr 伺服器上有 4GB 內存,並且不用伺服器來干其他事情的話可以就這樣留著不動。

在這條命令結束並返回一個錯誤之後,將會生成一個新的 eula.txt 文件。你需要同意那個文件里的協議。你可以通過下面這條命令將 eula=true 添加到文件中:

sed -i.orig 's/eula=false/eula=true/g' eula.txt

你現在可以通過和上面一樣的命令來開啟服務端並進入「我的世界」服務端控制台了:

java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui

確保你在 /opt/minecraft 目錄,或者其他你安裝你的 MC 服務端的目錄下。

如果你只是測試或暫時需要的話,到這裡就可以停了。如果你在登錄伺服器時有問題的話,你就需要配置你的防火牆

第一次成功啟動服務端時會花費一點時間來生成。

我們將向你展示如何創建一個腳本來啟動。

6. 使用腳本啟動「我的世界」服務端,讓服務端長期運行並在啟動時開啟

方便起見,我們將創建一個自動啟動服務端的 bash 腳本。

首先,使用 nano 創建一個 bash 腳本:

nano /opt/minecraft/startminecraft.sh

這將會打開一個新的(空白)文件。粘貼以下內容:

#!/bin/bash
cd /opt/minecraft/ && java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui

如果你不熟悉 nano 的話 - 你可以使用 CTRL + X,再敲擊 Y,然後回車。這個腳本將進入你先前創建的「我的世界」服務端並運行 Java 命令來開啟服務端。你需要執行下面的命令來使腳本可執行:

chmod +x startminecraft.sh

然後,你就可以通過下面的命令隨時運行服務端了:

/opt/minecraft/startminecraft.sh

但是,如果/當你登出 SSH 會話的話,服務端就會關閉。要想讓服務端不登錄也持續運行的話,你可以使用 screen 會話。screen 會話會一直運行,直到實際的伺服器被關閉或重啟。

使用下面的命令開啟一個 screen 會話:

screen -S minecraft

一旦你進入了 screen 會話(看起來就像是你新建了一個 SSH 會話),你就可以使用先前創建的 bash 腳本來啟動服務端:

/opt/minecraft/startminecraft.sh

要退出 screen 會話的話,你應該按 CTRL+A-D。即使你離開 screen 會話(斷開的),服務端也會繼續運行。你現在可以安全的登出 Ubuntu 伺服器了,你創建的「我的世界」服務端將會繼續運行。

但是,如果 Ubuntu 伺服器重啟或關閉了的話,screen 會話將不再起作用。所以為了讓我們之前做的這些在啟動時自動運行,做下面這些:

打開 /etc/rc.local 文件:

nano /etc/rc.local

exit 0 語句前添加如下內容:

screen -dm -S minecraft /opt/minecraft/startminecraft.sh
exit 0

保存並關閉文件。

要訪問「我的世界」服務端控制台,只需運行下面的命令來重新連接 screen 會話:

screen -r minecraft

現在就是這樣。祝賀你,玩的開心!你現在可以連接到你的「我的世界」服務端或配置/修改它了。

配置你的 Ubuntu 伺服器

你首先肯定要設置並確保你的 Ubuntu 伺服器安全,如果你還沒有這麼做的話。按照我們之前提及的指南並谷歌一下來獲取更多信息。你需要在伺服器上配置的有這些:

開啟並配置防火牆

首先,如果防火牆還沒有開啟的話,你應該先開啟先前安裝的 UFW:

ufw enable

你應該開放默認的「我的世界」服務端埠:

ufw allow 25565/tcp

你應該根據你的使用情況開放或拒絕其他規則。如果你不用伺服器負載網站的話,就應該拒絕 80 和 443 埠。谷歌一下 Ubuntu 的 UFW/防火牆指南,你會得到建議的。設置防火牆的時候小心一些,如果你屏蔽了 SSH 埠的話你會把自己鎖在伺服器外面。

由於這是默認埠,這個埠經常被掃描以及攻擊。你可以通過屏蔽白名單之外的訪問許可權來阻擋攻擊。

首先,你需要在你的 server.properties 文件中開啟白名單模式。要開啟的話,打開文件:

nano /opt/minecraft/server.properties

並將 white-list 行改為 true

white-list=true

保存並關閉文件。

然後重啟你的伺服器(重啟你的伺服器或重新運行啟動腳本):

/opt/minecraft/startminecraft.sh

訪問「我的世界」服務端控制台:

screen -r minecraft

如果你想要某人進入你的服務端,你需要通過以下命令把他們添加到白名單:

whitelist add PlayerUsername

運行以下命令來將他們移出白名單:

whitelist remove PlayerUsername

使用 CTRL+A-D 來退出 screen(伺服器控制台)。值得注意的是,這會拒絕除白名單以外的所有人連接到服務端。

如何搭建「我的世界」伺服器 - 常見問題

我們將解答一些有關「我的世界」伺服器和我們的指南的常見問題。

我該如何重啟「我的世界」伺服器?

如果你按照我們的教程來的話,包括開啟了服務端隨系統啟動,你可以直接重啟你的 Ubuntu 伺服器。如果沒有設置歲系統啟動的話,你可以通過重新運行啟動腳本來重啟「我的世界」服務端:

/opt/minecraft/startminecraft.sh

我該如何配置我的「我的世界」服務端?

你可以使用 server.properties 文件來配置你的服務端。查看「我的世界」維基來獲取更多信息,你也可以什麼都不動,它會工作的很好。

如果你想改變遊戲模式、難度等諸如此類的東西,你可以使用服務端控制台。通過下面的命令訪問服務端控制台:

screen -r minecraft

並執行命令。像下面這些命令:

difficulty hard
gamemode survival @a

你可能需要重新啟動服務端,這取決於你使用了什麼命令。你可以使用很多命令,查看維基來獲取更多。

我該如何升級我的「我的世界」服務端?

如果有新版本發布的話,你需要這樣做:

進入「我的世界」目錄:

cd /opt/minecraft

下載最新的版本,比如使用 wget 下載 1.12.3 版本:

wget https://s3.amazonaws.com/Minecraft.Download/versions/1.12.3/minecraft_server.1.12.3.jar

接下來,運行並構建新服務端:

java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.3.jar nogui

最後,更新你的啟動腳本:

nano /opt/minecraft/startminecraft.sh

更新版本號數字:

#!/bin/bash
cd /opt/minecraft/ && java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.3.jar nogui

現在你可以重啟服務端了,一切都應該沒有問題。

為什麼你們的教程這麼長,而其他的只有 2 行那麼長?!

我們想讓這個教程對新手來說更友好,並且儘可能詳細。我們還向你展示了如何讓服務端長期運行並跟隨系統啟動,我們向你展示了如何配置你的服務端以及所有的東西。我是說,你當然可以用幾行來啟動「我的世界」伺服器,但那樣的話絕對很爛,從不僅一方面說。

我不知道 Linux 或者這裡說的什麼東西,我該如何搭建一個「我的世界」伺服器呢?

只要通篇閱讀我們的文章,複製粘貼幾個命令就行了。如果你真的不知道該如何做的話,我們可以幫你,或者直接找一個託管的伺服器提供商,讓他們幫你做這些。

我該如何在服務端上安裝 mod 和插件?

我們的文章意圖作一篇入門指南,你應該查看「我的世界維基」,或者谷歌一下來獲取更多信息。網上有很多教程。

via: https://thishosting.rocks/how-to-make-a-minecraft-server/

作者:ThisHosting.Rocks 譯者:heart4lor 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
1
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國