
このような疑問にお答えします。
今回は「外部からアクセスできるマイクラサーバー」を構築していきたいと思います。
※お急ぎの方はこちらからどうぞ。
ここではグローバル環境から接続できるサーバーを立てます。(超簡単に言えば家のネット外からマイクラワールドにアクセスできるようにします。)
前提として【ローカル環境編】を設定し終えてください。まだ設定していない方は以下の記事をご覧ください。
更新履歴
- 2020/6/26: 情報を最新に変更
- 2020/9/22: 一部手直し
- 2020/10/10: デザイン・記述一部変更
- 2021/4/11: 文章を読みやすく変更
- 2022/8/15: 軽い手直し
設定したラズパイの環境
機器 | Raspberry Pi 3 Model B+ Raspberry Pi 4 Model B/4GB |
OS | Raspbian GNU/Linux 10 |
ラズパイ3B+でもマイクラサーバーは立てられますが、反応が遅くストレスを感じる時が多くあります。
マイクラサーバーをラズパイで立てるなら、現段階ではラズパイ4の4G・8Gモデルがおすすめです。
前提条件
今回は以下の内容が終わっていることを前提として話を進めます。
- ラズパイの購入(当たり前ですがね)
- OSのインストール(Raspberry pi OSはDebian系列なので、Ubuntuと Debianにも対応してます。)
- ラズパイに接続できる方法(SSH・VNCなどなんでも結構です。初心者はVNCがおすすめです。)
- IPアドレスの固定
- 【ローカル環境編】の設定済み
「設定してない。。。」という方もご安心ください。以下の記事に全てやり方は記載しております。参考にしてください。
マイクラにおける公式サーバーとは
マイクラの公式サーバーはMODやプラグインを導入できません。いわゆるバニラサーバーです。
もしプラグインやMODに興味がある方は以下の記事をご覧ください。
マイクラサーバーを外部から接続可能にする
お待たいたしました。早速マイクラサーバーを外部から接続可能にしていきましょう!
これ以降の設定をすることで、外部から不正アクセス等の攻撃を受ける可能性が生じることを確認してください。また自宅のIPアドレスは信用できる人以外には教えないようにしましょう。
【推奨】ラズパイのファイアウォールを設定する
マイクラが使用するポート番号25565を解放してください。ufwの詳しい設定等は以下の記事をご覧ください。
これ以降はufwのインストールが終わっている前提でお話しします。
マイクラサーバーのポート「25565」を許可する。
sudo ufw allow 25565
ラズパイを再起動してください
再起動しなくても大丈夫でした。また設定をリロードする必要もなかったです。念のためコマンドは載せておきます。
ufwの設定リロード
sudo ufw reload
再起動
sudo reboot
ポートマッピング設定
外部からのアクセスをラズパイに振り分けるため、ポートマッピング設定を行います。
ポートマッピングとは、ブロードバンドルータなどが持つ機能の一つで、グローバルIPアドレスの特定のポートを、特定のプライベートIPアドレスの特定のポートに固定的に対応付けて転送するもの。 内部ネットワークの機器に外部から着信することができる。
http://e-words.jp/w/%E3%83%9D%E3%83%BC%E3%83%88%E3%83%9E%E3%83%83%E3%83%94%E3%83%B3%E3%82%B0.html
要するにルータに対して「この通信はこのローカルIP(ここだとラズパイのIP)に送ってね」とあらかじめ指示を出さないと、ラズパイはマイクラの通信を受け取れないわけです。

ポートマッピング設定はご家庭によって使っているルーターが違うため一概に説明できません。
今回はNECのAtermということで説明します。
他の機種の方は以下のサイトが参考になります。ポートマッピング設定でポート番号25565をラズパイのIPアドレスに送るように設定してあげましょう。これ以降のAtermの説明も参考になるかと思います。
BUFFALO | https://www.buffalo.jp/support/faq/detail/8346.html |
IOデータ | https://www.iodata.jp/lib/manual/wn-ac1600dgr/ouyou/port.htm |
他のルーターをお使いでも「[機種名] ポート開放」とググれば情報は出てくるかと思います。
設定を間違えるとネットにアクセスできなくなる可能性もあります。気をつけて設定してください。
ではこれからAtermの場合のポートマッピング設定を解説します。
まずはブラウザ(safariやChrome)で192.168.0.1または192.168.10.1にアクセスしましょう。
このような画面が出ると思います。(パスワードが設定されている場合)

ユーザー名はadmin
またはadm
、パスワードは任意で設定済みのものになります。
パスワードが設定されていない場合は設定画面が表示されます。設定しましょう。
アクセスに成功するとこのような画面が出てきます。(機種によってはデザインが違うのかもしれません。それでも設定する場所は同じだと思います。)

メニューの中に「ポートマッピング設定」というのがあるので選択しましょう。
このような画面が出るので赤枠の追加をクリックしてください。

以下を参考に設定します。
- LAN側ホスト ラズパイで固定したIPアドレス(画像は例でのせたやつです)
- プロトコル そのままでOKです。
- ポート番号 「any」のチェックを外して「左側」に「25565」を入力
- 優先度 無難に「5」くらいでOKです。

Atermの場合は以上でポートマッピング設定は終了です。
ポートマッピング設定を確認する
それではポートマッピング設定がうまくいっているか確認しましょう。
こちらのリンクにアクセスしてください。(ラズパイと同じネットワークに接続した状態でアクセスしましょう。)

以下の手順でマイクラサーバーにアクセスできるか確認します。
- 現在のIPアドレス(赤枠)をクリック
→この数字を覚えましょう。これが自宅のIPアドレスです。この数字をマイクラに入力してアクセスします。 - チェックポート番号に「25565」を入力
- 規約に同意にチェック
テストする前にラズパイのマイクラサーバーを起動しておきましょう。
Portチェック実行を押すと、三つの結果の何かが出ると思います。(IPアドレスは例示用を使っています。)
マイクラを起動しており、うまくいった場合にはこのように表示されます。

マイクラが起動しておらず、このように表示されたら、ポートマッピング設定・ファイアウォール設定共にうまくいっています。
マイクラを起動して少し時間をおき、もう一度チェックしてみましょう。「アクセスできました」になれば完璧です!

この場合はポートマッピング設定・ufw設定がうまく行っていない可能性があります。設定を確認してください。

マイクラアプリから外部接続可能にしたマイクラサーバーにアクセスする
ここには重大な注意点があります。外部からマイクラサーバーに接続できるか確認する際はマイクラサーバーとは違うネットワークから接続してください。(つまり家のネットワーク外から接続確認をしましょう。)
信頼できる友達に接続を依頼するか、VPNを利用しましょう。(VPNを使った場合はローカル・グローバル両方からアクセスできました。)
ここはほとんど【ローカル編】と同じです。サーバーを起動しておきましょう。
マルチプレイを選択

「サーバーを追加」を選択

サーバー名(自由です)と先ほど確認したグローバルIPアドレスを入力します。(画像は【ローカル編】と同じのなのでIPアドレスがローカル用となっています。)

ローカルとグローバルを名前でわけておくとわかりやすいかなと思います。
これで同じワールドにローカル・グローバル両方からつなげるようになりました。(通常はどちらかのバーのみが緑色で表示されます。そっちの方が通常です。)

家のネットワーク上からグローバルIPアドレスを指定して接続することはできないはずなので、マイクラサーバーと同じネットワーク上の端末からはローカルIPアドレスを指定して接続し、違うネットワークからの接続はグローバルIPアドレスを使用しましょう。
上記の内容を簡単にまとめます。自分はローカルIPアドレスでマイクラサーバーに接続し、友達にはグローバルIPアドレスを教え、その番号でマイクラサーバーに接続してもらいましょう。
次に読みたいラズパイ・マイクラ記事リスト
OP権限の設定はこちら。
screenを使ってマイクラサーバーを起動すると、ラズパイとの通信(SSH接続など)を切断してもマイクラサーバーを動作したままにできます。screenの設定は以下の記事からどうぞ。
ラズパイでメールサーバーなんかも作れちゃいます。ちょっと難易度はマイクラサーバーに比べて難しいです。興味がある方は挑戦してみてはいかがでしょうか。