Difference between revisions of "Setting up a server/ja"

From Minetest Wiki
Jump to navigation Jump to search
(update Japanese translation)
(Translate "Allowing external players to connect")
Line 48: Line 48:
  
 
ポートフォワードしない限り、ネットワークの外にいるプレーヤーはサーバーに参加できません。
 
ポートフォワードしない限り、ネットワークの外にいるプレーヤーはサーバーに参加できません。
 
+
# サーバーを実行するポート番号を選択する。デフォルトの30000を推奨します
#Choose a port to run the server on. The default of 30000 is recommended
+
# サーバーを実行しているコンピューターのIPアドレスを確認する
#Find out your internal IP of the computer you are running the server on
+
#* '''Linux''': 端末を開き、<code>ifconfig</code>と入力してEnterキーを押します。そして、wlan0またはeth0の近くにある「inet adr」を探します。(ifconfigが時代遅れで無い場合は<code>ip a</code>使います。)
#*'''Linux''': open a terminal and type <code>ifconfig</code> and hit enter. Look for "inet adr" near "wlan0" or "eth0".
+
#* '''Windows'''
#*'''Windows'''
+
#** コマンドプロンプトを開く: スタート→ファイル名を指定して実行を開き、<code>cmd.exe</code>と入力してEnterキーを押します。
#** Open command prompt: Start → Run …, enter <code>cmd.exe</code> and hit enter.
+
#** <code>ipconfig</code>と入力してEnterキーを押します。
#** Type <code>ipconfig</code> and hit enter.
+
#** <code>IPv4 Address</code>を探します。
#** Look for <code>IPv4 Address</code>.
+
#* '''macOS''': コマンドプロンプトを開いて、<code>netstat -nr</code>と入力します。
#*'''macOS''': Open the command prompt and enter netstat -nr.
+
# ルーターにログインして見つけたIPアドレスの選択したポート番号のUDPをポートフォワーディングする
#Login to your router, and port forward UDP on your chosen port to the internal IP you found
+
# 選択したポートへのトラフィックを許可するためにファイアーウォールの設定を変更する
#Alter any firewalls you may have to allow traffic to the port you choose
+
# minetest.confに以下の設定を行い、サーバーリストにサーバーを掲載する
#Make your server listed in the server list by setting the following settings in minetest.conf
+
#* <code>server_announce = true</code> - Minetestがサーバーリストにサーバー情報を掲載します。
#* <code>server_announce = true</code> - makes Minetest tell the server list about the server.
+
#* <code>server_name</code> - サーバー名を設定します。
#* <code>server_name</code> - set the value of this to your server's name.
+
#* <code>server_description</code> - サーバーについての説明を設定します。
#* <code>server_description</code> - set the value of this to a longer description describing your server.
+
#* <code>server_address</code> - サーバーにドメイン名がある場合、ドメインを設定します([[How to get a domain name for your server|ドメイン名が必要な場合にドメイン名を取得する方法]])
#* <code>server_address</code> - if you have a domain name for your server, then set this to the domain name ([[How to get a domain name for your server|how to get a domain name if you want one for your server]]).
+
#* <code>server_url</code> - サーバー用のウェブサーバーがある場合、ウェブサイトのURLを設定します。
#* <code>server_url</code> - if you have a website for your server, then set this to the website URL.
+
#* <code>motd</code> - プレーヤーが参加したときに送信されるメッセージ。 歓迎メッセージを送るために使用します。
#* <code>motd</code> - a message that is sent to the player when they join. Use this to welcome them.
+
#* 変更した設定が適用されたことを確認するため、サーバーを再起動する。
#* You should restart the server to make sure any changed settings changed
 
  
 
== サーバーを保護する ==
 
== サーバーを保護する ==

Revision as of 10:12, 24 September 2021

Languages 言語: English • Deutsch • français • italiano • 日本語 • русский

ハードウェアの選択

ゲームサーバーを公開する場合、VPSもしくは専用サーバーの利用をお勧めします。家庭用インターネット回線は信頼性が低く、アップロード速度も低い傾向があります。また、自宅でホスティングを行う場合、24時間、常にサーバーを稼働させることができない可能性もあります。

とはいうものの、オンラインにできるハードウェアがあり、十分なインターネット接続環境があれば自宅でのホスティングはうまくいきます。

Minetestクライアントを使ってサーバーのホスティングはできますが(LAN内のゲームでは問題ありません)、Minetestの専用サーバーモードを使って公開サーバーをホスティングすることをお勧めします。

サーバーを起動する

Linux

  1. 端末(ターミナル)を開きます。
  2. YOUR/MINETEST/DIRECTORY/bin/minetestserver (/YOUR/MINETEST/DIRECTORYは実際のディレクトリの場所に置き換えて)と入力するか、(/Minetest/bin/ディレクトリにある)minetestserverの実行ファイルを端末にドロップします。(以下の注意も読んでください)
    • 特定のゲームIDを指定する場合は、コマンドの最後に--gameid thegameidを追加してください(ゲームIDは、/Minetest/games/ディレクトリにあります)。
    • "Multiple worlds are available."(複数のワールドが利用可能です)というエラーが表示された場合、コマンドの最後に--worldname theWorldを追加してください(ワールドのリストは、/Minetest/worlds/ディレクトリにあります)。
  3. サーバーがクラッシュした場合は、/Minetest/bin/にあるdebug.txtを見てください。
  4. サーバーをダメージから保護するようにしてください。

簡単に実行できるように、minetestserver.shという名前のファイルを作成します。そして、以下の行を追加して、/Minetest/bin/ディレクトリ以下に置きます。サーバーを実行するには、ターミナルでこのファイルを実行するだけです。

#!/bin/bash

while true
do
    ./minetestserver --gameid minetest --worldname world
    sleep 10
done

Windows

  1. Minetestをインストールしたフォルダを開きます。「bin」フォルダの中でShiftキーを押しながら空ファイル(minetest.exeではありません)を右クリックして「コマンドウィンドウをここで開く」を選び、コマンドプロンプトを開きます。
  2. minetest.exe --serverと入力します。
    • "Multiple worlds are available."(複数のワールドが利用可能です)というエラーが表示された場合、変わりにminetest.exe --server --worldname world_nameを使ってください(world_nameはワールドの名前です)。
  3. サーバーがクラッシュした場合は、/Minetest/bin/にあるdebug.txtを見てください。
  4. サーバーをダメージから保護するようにしてください。

クラッシュしたサーバーを起動したくない場合は、以下のコードのバッチファイルからサーバーを起動します。

@echo off
:crash
minetest.exe --server --worldname world_name
goto crash

外部のプレーヤーの接続を許可する

ポートフォワードしない限り、ネットワークの外にいるプレーヤーはサーバーに参加できません。

  1. サーバーを実行するポート番号を選択する。デフォルトの30000を推奨します
  2. サーバーを実行しているコンピューターのIPアドレスを確認する
    • Linux: 端末を開き、ifconfigと入力してEnterキーを押します。そして、wlan0またはeth0の近くにある「inet adr」を探します。(ifconfigが時代遅れで無い場合はip a使います。)
    • Windows
      • コマンドプロンプトを開く: スタート→ファイル名を指定して実行を開き、cmd.exeと入力してEnterキーを押します。
      • ipconfigと入力してEnterキーを押します。
      • IPv4 Addressを探します。
    • macOS: コマンドプロンプトを開いて、netstat -nrと入力します。
  3. ルーターにログインして見つけたIPアドレスの選択したポート番号のUDPをポートフォワーディングする
  4. 選択したポートへのトラフィックを許可するためにファイアーウォールの設定を変更する
  5. minetest.confに以下の設定を行い、サーバーリストにサーバーを掲載する
    • server_announce = true - Minetestがサーバーリストにサーバー情報を掲載します。
    • server_name - サーバー名を設定します。
    • server_description - サーバーについての説明を設定します。
    • server_address - サーバーにドメイン名がある場合、ドメインを設定します(ドメイン名が必要な場合にドメイン名を取得する方法)。
    • server_url - サーバー用のウェブサーバーがある場合、ウェブサイトのURLを設定します。
    • motd - プレーヤーが参加したときに送信されるメッセージ。 歓迎メッセージを送るために使用します。
    • 変更した設定が適用されたことを確認するため、サーバーを再起動する。

サーバーを保護する

Minetestのワールド/サーバーを守る

新しいサーバーをセットアップするとき、どのような保護が必要であるか、検討する必要があります。これは公開サーバーにとって非常に重要なことです。 なぜなら、誰が接続して、彼らがあなたのサーバーで何をするのか予想できないからです。

一般的な問題としては以下のようなことがあります。

  • 偶然、または意図的に他のプレーヤーの作品を破壊(嫌がらせ行為)。
  • チャットスパム(悪口やスパム広告も含まれます)。
  • プレーヤー間での攻撃、嫌がらせ、その他、好ましくない行為。
  • BANをすり抜けるトラブルメーカー
  • MTコミュニティ内の有名人物のなりすまし。
  • modによって引き起こされるバグを利用して、悪意のあるプレーヤーが任意のシステムコマンドを実行。

これらの問題の多くは、事前の計画と問題を認識しておくことで、取り除いたり最小限に留めることができます。

  • areasprotectorsなどのプロテクトmodをインストールします。これにより、プレーヤーはエリアを守ることができます。他のプレーヤーは、保護されたエリアは変更できません。
  • minetest.confenable_rollback = trueを追加して、ロールバックを有効にします。ロールバックは、どのプレイヤーがノードを配置したかを知ることができ、プレイヤーの行動を元に戻すことができます。
  • xban2のような禁止行為の管理に役立つmodをインストールします。
  • サーバーのルールを作成し、サーバーを監視してルールを破るプレイヤーを監視するのに十分な時間(またはモデレーターチーム)を確保してください。
  • あなたが知っている名前を使っているだけで、プレーヤーに特権を与えないでください。プレーヤー名はサーバー間で確保されているわけではないので、プレーヤーが誰であるか常に確認する必要があります。
  • 悪口や性的なチャットを防ぐために、チャットフィルターmod(filter)をインストールして設定してください。フィルターの回避は簡単ですが、これは強制的に従わせるためではなく、プレイヤーにルールを知らせるために有効です。

なお、シングルプレイではデフォルトで有効になっているTNTと燃え広がる炎は、サーバーのデフォルトでは無効になっています。

ContentDBのServer Moderation and Toolsも参照ください。

ホストマシンを守る

  • Linux/Windowsサーバーセキュリティにについて標準的な勧告が適用されます。
  • Linuxでは、Minetestサーバーを実行する専用ユーザーを追加できます。
  • modセキュリティを絶対無効にしないでください。
  • secure.trusted_modsに追加するmodが信頼できることを確認してください。

サーバーを管理する

サーバー設定

サーバー設定ファイルの詳細な説明は、minetest.confのページを参照してください。

また、ワールドのために別のデータベース バックエンドの使用も検討できます。

サーバーコマンド

役に立つコマンド一覧は、サーバーコマンドのページを参照してください。

また、/giveまたは/givemeコマンドで使用するitemstringsについては、Itemstringsを参照してください。

特権システム

特権システムの詳細については、特権のページを参照してください。

関連項目