DigitalOceanでマインクラフト統合版のサーバーを立てる

クラウドサーバーを使ってマインクラフトのサーバーを立てれば、マルチプレイで家族や友達などと一緒に、各々が好きな時間に遊ぶことができます。公式のREALMSでも同じことができますが、自分でクラウドサーバーを立てればサーバーの負荷状態によって構成を最適化でき、柔軟なサーバー運営することができます。

特に、DigitalOceanではマインクラフト用のサーバー(BE版、Java版)があらかじめ用意されているので、ほぼワンクリックで簡単にサーバーを立てることができます。ここでは、DigitalOceanを用いたマインクラフト統合版のサーバーの立て方について説明していきます。

マインクラフト統合版用のDroplet(インスタンス)を作成する

DigitalOceanのアカウントを作成する

DigitalOceanを使うのが初めての方は以下の紹介リンクからアカウントを作成すると、2カ月間有効な$100分のクーポンが付属しますのでご活用ください。

指示に従って、ログイン方法や支払い方法などを登録していきましょう。

アカウント登録のウィザードでDroplet(インスタンス)作成画面が出ますが、ここでは代表的なものしか選べないので、スキップで飛ばして、DigitalOceanのコントロールパネルに移動しましょう。

マインクラフト統合版用のDropletを作成する

コントロールパネル右上の「Create」から新規のDropletを作成します。

まず作成するDropletの種類を選びますが、すでにMinecraft用のDropletのひな形が用意されているので、以下のようにしてそれを選びましょう。

続いて料金プランを選びます。プレーヤーが1人だけなら一番安い$5のプランで十分でしたが、同時ログイン人数が増えると$5では足りないケースも出てくるかもしれません。その場合でも、「負荷がかかるときだけプランを変える」などといった柔軟な運用が可能です。

データセンターの場所は日本に一番近いシンガポールを選んでおきましょう。

Dropletへのroot権限での接続方法はできる限り安全なSSHを選びましょう。

なお、SSHについては次の記事もご覧ください。

最後にDropletの名前を決めて、Dropletを作成します。

ここでは、MinecraftBE-ServerTestという名前にしています

ここで作成したDropletがマインクラフトのマルチプレイ用のサーバーになります。

Windows10版Minecraftからサーバーに接続する

サーバーのIPアドレスを取得する

サーバーのIPアドレスは、DigitalOceanのコントロールパネルから取得できます。

Windows10版Minecraftで接続する

Windows10版Minecraftを起動して「サーバー」タブから、「サーバーを追加」をクリックします。

表示されるウィザードに任意のサーバー名と、先ほど取得したIPアドレス(000.000.000.000の形式)を入力します。ポートはデフォルト設定のままで構いませんが、設定ファイルから変更した場合はこちらも変更が必要です。

最後に「遊ぶ」をクリックして今回生成したマインクラフトサーバーに入ることができます。


いかがでしたでしょうか?ここまではほぼマウス操作だけで簡単にマインクラフトサーバーを立てることができました。検証はしていませんが、Windows10版以外のマインクラフトでも同じように接続できると思います。

ただし、この接続方法から分かるように、現状はIPアドレスさえわかればだれでも自分のマインクラフトの世界に入れてしまうことになります。パスワードすら不要なので、総当たり攻撃をされたら簡単に荒らされてしまいますね。

ということで、少なくとも次の設定からホワイトリストの登録だけは行っておきましょう。なお、設定の変更にはコマンドラインでの操作が必要になります。

サーバーの設定を行う

設定ファイルの操作

ここでは、SSH接続でDropletを操作する方法を説明します。PowerShellなどのコンソールから次のコマンドでDropletに接続しましょう。IPアドレス(000.000.000.000の部分)は適宜自分の環境に合わせて変更してください。

ssh root@000.000.000.000

サーバーの設定ファイルは「~/minecraftbe/dominecraft/server.properties」に格納されているので、次のコマンドで設定ファイルを開けます。

nano ~/minecraftbe/dominecraft/server.properties

なお、ここではLinuxのテキストエディタであるnanoを用いていますが、Windowsの通常のショートカットとは異なっていることに注意してください。矢印キー「↑、↓、→、←」でカーソルを移動し、設定を書き換えたら、「Ctrl + x」でエディタを終了させます。その際に変更内容を保存するか聞かれるので、保存する場合は「y」を押して、保存するファイル名を聞かれたらそのまま「Enter」を押します。また、保存しない場合(間違えて変更してしまった場合など)は「n」を押します。

設定の変更ができたら、次のコマンドでDropletを再起動しましょう。

shutdown -r now

ホワイトリストの登録

ホワイトリストを有効にしたら、ホワイトリストに入っている人だけしかサーバーに接続できなくなります。家族や友達だけで遊ぶ場合はホワイトリストを登録すれば安心です。まず、上記の通り設定ファイルを開き、

nano ~/minecraftbe/dominecraft/server.properties

white-listをtrueに変更して、保存します。

続いて、ホワイトリストの一覧を管理しているwhitelist.jsonを修正します。

nano ~/minecraftbe/dominecraft/whitelist.json

ここでは、ゲーマータグ名で指定します。例えば、「ABC DEF」と「GHIJ」の二人をホワイトリストに入れる場合は、whitelist.jsonを次のように書き換えます

[
{
"name":"ABC DEF"
},
{
"name":"GHIJ"
}
]

以上の設定が変更できたら、Dropletを再起動しましょう。

shutdown -r now

その他の設定

ゲームの難易度の設定やクリエイティブモードの設定なども、この設定ファイル(server.properties)の設定を変更することで変えられます。

ワールドの新規作成

DigitalOceanで作成したマインクラフトサーバーには最初からワールドデータが付属していてで、最初は必ず同じワールドになるようです。ワールドデータは「~/minecraftbe/dominecraft/worlds」内のワールドごとのディレクトリに保存されるので、設定ファイル(server.properties)で新規のディレクトリを指定すると新しいワールドが生成されます。

nano ~/minecraftbe/dominecraft/server.properties

level-nameの値を任意の値に変更します。シードの設定をする場合はlevel-seedに値を入力してください。最後にDropletを再起動しましょう。

shutdown -r now

シングルでプレイしているデータを移行する

今までシングルでプレイしていたデータなど、ローカル環境やその他の環境にあるデータをマインクラフトサーバー上にアップロードすることができます。まず、Windows10版マインクラフトのワールドデータをエクスポートします。

この時、ファイル名を含めたすべてのパスに日本語が含まれないように注意してください。ここでは、「C:\BioTech-Lab\WorldData.mcworld」という名前で保存します。まずはこれをscpコマンドでアップロードしましょう。この時は、SSH接続でサーバー側に入ってしまうのではなく、Windows側のコンソールで実行します。IPアドレスの部分(000.000.000.000)は自分のサーバーのIPアドレスに合わせて変更してください。

scp "C:\BioTech-Lab\WorldData.mcworld" root@000.000.000.000:~/minecraftbe/dominecraft/worlds

ワールドデータがアップロードできたら、SSH接続でサーバー側に入った上でこれを展開します。拡張子は.mcworldですが実体はzipファイルですので、unzipコマンドでMyDataディレクトリに展開できます。ディレクトリ名は任意の名前で構いません。

unzip ~/minecraftbe/dominecraft/worlds/WorldData.mcworld -d ~/minecraftbe/dominecraft/worlds/MyData

ここで決めたディレクトリ名をワールド名と一致させる必要があるので、

nano ~/minecraftbe/dominecraft/worlds/MyData/levelname.txt

の内容をディレクトリ名に書き換えて保存します。これをしないと、次回起動時に新規ワールドで書き換えられてしまうので注意してください。

続いて、設定ファイルで

nano ~/minecraftbe/dominecraft/server.properties

level-nameの値をここで作成したディレクトリ名(=ワールド名)に変更して保存します。

最後にサーバーを再起動しましょう。

shutdown -r now

なお、プレイヤーの情報は引き継がれずに新規作成されるようなので、持ち物などもゼロから始まるので注意してください。


ここでは以下のような外部サイトの記事も参考にさせていただきました。役に立つ情報が多く載っているので、併せてご参照ください。

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)