0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめての記事投稿
Qiita Engineer Festa20242024年7月17日まで開催中!

MinecraftのサーバをProxyサーバを経由させて外部に公開させる

Posted at

まずはマイクラサーバ構築

これについては色々なサイトで書かれているので省略
少なくとも外部からのアクセスはできるような状態になっていることを確認

別のVPS等でNginxとStream moduleを構築

今回はRocky Linux9で構築

Nginx環境をインストール

他のサイトだと1からビルドしろとか書いてあるがそんなことしなくても最新版だとyumとかapt-getでインストールしてもできるらしい

dnf -y install nginx
dnf -y install nginx-mod-stream

nginx.confを編集

インストールしたモジュールがincludeされていることを確認

RockyLinuxなら以下記載があればOK

include /usr/share/nginx/modules/*.conf;

最終行に以下を記載

これがプロキシサーバーの設定になる
あとはお好みでhttpの記載をコメントアウト

stream {
    log_format main '$remote_addr [$time_local] $protocol $status $bytes_sent $bytes_received $session_time';
    access_log /var/log/nginx/stream_access.log main;
    error_log /var/log/nginx/stream_error.log;

    upstream minecraft_backend {
        server XXX.XXX.XXX.XXX:XXXXX; # マイクラサーバIPとリッスンポート
    }

    server {
        listen 25565;  # NGINXがリッスンするポート番号
        proxy_pass minecraft_backend;  # バックエンドサーバーにプロキシ
        proxy_timeout 600s;  # 全体のタイムアウト設定
        tcp_nodelay on;  # TCP_NODELAYを有効にする
    }
}

Nginxを起動

# systemctl enable nginx
# systemctl start nginx

ポートがリッスンされていることを確認

# ss -atn
State              Recv-Q             Send-Q                             Local Address:Port                            Peer Address:Port              Process                                             
LISTEN             0                  511                                      0.0.0.0:25565                                0.0.0.0:*                                        

ファイアウォールの設定をして外部からのアクセスを受け入れる

# firewall-cmd --add-port=25565/tcp --zone=public --permanent

以上

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?