目次
/ UPDATE :
/ Author: sasigume

2021年版 VPSでマイクラのクロスプレイサーバーを立てる手順

2021年版 VPSでマイクラのクロスプレイサーバーを立てる手順のアイキャッチ画像
このチュートリアルでは、マインクラフトのJEとBEのどちらでも入れるサーバーを立てる方法を解説します。具体的には、UbuntuでPaperサーバーを立てて、Gayser+FloodgateでBEと繋ぎます。

前提条件

サーバーを立てる前に、以下のことを確認してください。
  • VPSはお金がかかることを理解している
  • ターミナル・コマンドプロンプトをいじったことがある
  • エラーの英語から原因を推察できる
  • 何かしらのパスワードマネージャーを使っている
  • 基本的な英語が読める
一つでも欠けると苦戦すると思います。それぐらい手間のかかる作業をします。 筆者はMacを使っていますが、Windowsの場合、文中のcontrolCtrlキーで代用できるはずです。

事前に用意するもの

学生優待GitHub Proアカウント

これを下のTermiusと連携させます。 Proが使えない場合、OSのターミナルでSSH接続してください。 大学生の方は、無料でGitHub Proを使えます。

Termius

Termiusのダウンロード
https://termius.com
Termiusは、SSHに加えてSFTPもできるクライアントです。ダウンロードしましょう。 同時にTermiusアカウントを作って、学生認証したGitHubアカウントと紐づけてください。Termiusの有料機能が使えるようになります。

Vultrアカウント

タイトル
VultrというVPSを借りてサーバーを建てていきます。 Vultrに入金 「Billing」画面を開き、PayPalなどを使って、10ドルほどクレジットを入金しといてください。

ステップ1. サーバーデプロイと接続

新しいサーバーをデプロイ

Deploy New Server Vultrの「Products」-> プラス -> 「Deploy New Server」で新しいサーバーをデプロイします。 Ubuntu 以下のものを選びます
項目 選択肢
Choose Server Cloud Compute
Server Location Tokyo
Server Type Ubuntu (x64)
SSD 25GB
2021年7月14日現在、この構成で月5ドルになります。 「Server Hostname」はmc-paper、「Label」はマイクラBEJEなどにしましょう。 暗号鍵を本来は設定すべきですが、説明の都合上省略します。 鍵を使ったSSH接続はここでは説明しません。

なぜUbuntu?

Java版だけならCentOSで構わないが、万が一BEのサーバー(BDS)を動かす必要が生じた時のため。BDSはUbuntuを想定して作られている。

Termiusで接続

IPとパス サーバーをデプロイしてしばらく経つと、IPがわかるようになります。必ずパスワード管理ソフトなどにメモしましょう。 また、rootユーザのパスワードも必ずパスワード管理ソフトなどに記録してください。 Termiusで接続 Termiusをインストールしてログインし、「NEW HOST」をクリックしてください。 以下のように設定して保存してください。
項目 選択肢
Label マイクラサーバー(root)
Adress さっきのIP
Username root
Password さっきのroot用パス
「SAVE」を押して保存し、ダブルクリックします。接続できたでしょうか。 信頼するホストに追加するか聞かれた場合は、Yesを選んでください。 root接続成功 IPとパスが正しければこんな画面が出るはずです。

ステップ2. サーバー用ユーザの作成

ユーザの作成

rootでマイクラサーバーをいじるのは危険なので、minecraftユーザを作ります。 まずパスワード管理ソフトなどで、minecraftユーザ用のパスワードをrootと別に作ってください。
adduser minecraft
# ここでminecraftユーザ用のパスワードを設定する
# パスワード以外は全部Enterで飛ばしていい
gpasswd -a minecraft sudo
ユーザーを作れたら、control+Dでサーバーからログアウトしてください。

豆知識

SSHクライアントでは、control+Dでサーバーからログアウトする。

Termiusでマイクラ用ホストを追加

ホスト複製 先ほどのroot用ホストを「Duplicate(複製)」します。 Edit 複製されたホストを「Edit(編集)」します。 ラベル変更 「Label」をマイクラサーバー(minecraft)に変えます。 ユーザ変更 ユーザー名をminecraftに変え、パスワードも先ほど作ったminecraftユーザ用に変えてください。 できた 「SAVE」してダブルクリックし、[email protected]サーバー名と出たら成功です。

ステップ3. paperのインストール

Paperは、Spigotプラグインを入れられる軽量マイクラサーバーで、現在幅広いサーバーで使われています。

SFTPで接続しよう

Termiusの「SFTP」を開いてください。 左にパソコンのファイルが出るので、右側のホスト選択で「マイクラサーバー(minecraft)」を選んでください。 (rootユーザでSFTPを使わないでください。) おそらく/home/minecraft/ディレクトリが出ます。

paper導入

paperのダウンロード

[[dl|PaperMCのダウンロード]] |https://papermc.io/downloads#Paper-1.16

serverディレクトリを作る

mkdir server

paperを入れてリネーム

serverフォルダにpaperのjarファイルを入れ、
cd server

# .XX.X-XXXXXはTabキーで補完してください
mv paper-1.XX.X-XXXXX.jar paper.jar

# 外フォルダに出る
cd ../
paper.jarにリネームします。

スクリプト準備

Vimを使います。
I 編集(INSERT)モードに
Esc 編集終わり
:wq 保存して終了
編集(INSERT)モードで:wqって打たないでね!必ずEscで編集を終わろう。

起動スクリプトを作る

vi start.sh
#!/bin/bash

cd $HOME/server

screen -md -S minecraft java -XX:+UseBiasedLocking -XX:+DisableExplicitGC -XX:+UseTLAB -Xms2G -Xmx4G -XX:TargetSurvivorRatio=90 -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=4 -XX:-UseParallelGC -XX:ParallelGCThreads=2 -XX:ConcGCThreads=2 -jar paper.jar nogui
start.shを作り、以上をCmd+Vでペーストして:wq

再起動スクリプトを作る

vi restart.sh
#!/bin/bash

WAIT=15
STARTSCRIPT=$HOME/start.sh
SCREEN_NAME='minecraft'

screen -p 0 -S ${SCREEN_NAME} -X eval 'stuff "say §oリスタートシーケンスを開始...\015"'

screen -p 0 -S ${SCREEN_NAME} -X eval 'stuff "say '${WAIT}'秒後にサーバ
ーを再起動します\015"'
screen -p 0 -S ${SCREEN_NAME} -X eval 'stuff "say 30秒ほど経てば再接続>可能になるので、しばらくお待ち下さい\015"'

sleep $WAIT
screen -p 0 -S ${SCREEN_NAME} -X eval 'stuff "stop\015"'

sleep 10

$STARTSCRIPT
restart.shを作り、以上をCmd+Vでペーストして:wq

サーバー起動

minecraft/
L   backup.sh
L   restart.sh
L   start.sh
L   server/
    L   paper.jar
こんなファイル構成になっているはずです。 ここからはscreenで画面を切り替えます。
操作 キー・コマンド
画面一覧 screen -ls
アタッチ screen -r (PID)
デタッチ control+A -> control+D
キル screen kill <PID>

起動してみる

bash start.sh
screen -r
start.shはサーバーをscreenで起動しますから、screen -rアタッチしないとサーバーは見れません。(裏では動いています) すると、途中で利用規約に同意してほしい旨のメッセージが出て、サーバーが止まります。
minecraft/
L   server/
    L   eula.txt
    L   paper.jar
L   backup.sh
L   restart.sh
L   start.sh
SFTPを見ると、こんなファイル構成になっているはずです。 :::warning シェルスクリプトはpaper.jarと別フォルダ! サーバーが生成したファイルと、自作したファイルが混ざるのは、明らかに混乱を招きます。 シェルスクリプトはserverフォルダの外に置きましょう。 :::

eulaの同意

cd server
vi eula.txt
IキーでINSERTモードにし、
eula=true
に変えてください。Esc -> :wqで保存。

改めて起動

cd ../
bash start.sh
screen -r
サーバーが起動するはずです。
minecraft/
L   server/
    L   cache/
    L   logs/
    L   plugins/
    L   world/
    L   world_nether/
    L   world_the_end/
    L   ...
    L   eula.txt
    L   paper.jar
L   backup.sh
L   restart.sh
L   start.sh
こんなファイル構成になっているはずです。

サーバー設定の変更

cd server
vi server.properties
人数などを変えてください。

Termiusのスニペットに登録

Termiusのスニペット機能に以下を登録しましょう。

「サーバー起動」

cd /home/minecraft && bash start.sh

「サーバー再起動」

cd /home/minecraft && bash restart.sh

「アタッチ」

screen -r

ステップ4. 自動でバックアップさせる

バックアップフォルダ

バックアップは/home/minecraft/world_backupに入れます。

バックアップを自動化

vi backup.sh

backup.sh

#!/bin/bash

WAIT=15
STARTSCRIPT=$HOME/start.sh
SCREEN_NAME='minecraft'

screen -p 0 -S ${SCREEN_NAME} -X eval 'stuff "say '${WAIT}'秒後にサーバ
ーを再起動します\015"'
screen -p 0 -S ${SCREEN_NAME} -X eval 'stuff "say 1分ほど経てば再接続可
能になるので、しばらくお待ち下さい\015"'

sleep $WAIT
screen -p 0 -S ${SCREEN_NAME} -X eval 'stuff "stop\015"'

sleep 20

cd /home/minecraft/world_backup
DIR=`date '+%Y%m%d_%H%M'`
tar -zcvf $DIR.tar.gz -C $HOME/server world

$STARTSCRIPT

cronに登録

crontab -e

参考

ステップ5. プラグインを入れる

以下のプラグインを入れてください。

BEで入れるようにする

  • Gayser
  • Floodgate

必須

  • WorldGuard
  • LuckPerms
  • CoreProtect
  • ViaVersion
  • ConsoleSpamFix

任意

  • FAWE
  • Multiverse-core
  • Dynmap

ステップ6. 独自ドメイン

サーバーに独自ドメインを設定する手順です。

独自ドメインで接続しやすく

有名なサーバーはほぼ100%独自のドメインを使っています。あなたのサーバーも数字でなく好きなドメインで接続可能にしましょう。

おすすめはGoogle Domains

https://domains.google Google Domainsは余計なメールが一切なく、設定の反映も爆速です。

Google DomainsでIPに独自ドメインを接続

「DNS」画面で「Manage Custom Records」->「Create new record」をクリックします。 あとは 「A」レコードを選んで、IP欄にサーバーのIPを入れるだけ です。

ドメインが設定できたら

サーバーを宣伝しましょう。Dynmapはhttp://なんちゃら.com:8123で見れます。
以上でチュートリアルは終了です。
記事が役に立ったら、
シェアしてね!
Tweet

こちらの記事も読まれています

2021年版 VPSでマイクラのクロスプレイサーバーを立てる手順”には1件のコメントがついています

コメントを残す

メールアドレスが公開されることはありません。

記事の内容・画像・動画その他ファイルを引用・転載する際や、アンテナサイトに掲載する場合は該当ページへのリンクをお願いします。当サイトで紹介する著作物はそれぞれの権利者に帰属します。当サイトはMojang ABおよびMicrosoft社とは無関係であり、記事を利用したことによる如何なる損害も管理人は責任を負いません。