Arma Reforger専用サーバーは無料で、WindowsとLinuxでSteamCMD(app 1874900)から匿名ダウンロードできます。所要時間は20〜40分:インストール、config.json、UDPポート2001・17777・19999の開放、自動起動サービスの設定です。
手順ごとのインストール
マシンを確認:64ビット、高速な複数コア、スロット数とMODに見合うRAMとSSD。
SteamCMDをインストールし、匿名ログインでapp 1874900をダウンロードします。
サイトのツールでconfig.jsonを生成します(bindPort 2001、a2s 17777)。
-configと-maxFPS 60で初回起動し、127.0.0.1に接続して確認します。
システムとプロバイダーのファイアウォールで2001/UDP、17777/UDP(RCON使用時は19999/UDPも)を開放します。
Workshop MODをgame.modsに追加します。起動時にダウンロードされます。
自動再起動のため、systemdサービス(Linux)またはタスクスケジューラ(Windows)を作成します。
アップデート(app_update)、プロファイルのバックアップ、毎日の再起動をスケジュールします。
外部から接続を確認し、game-rank.comにサーバーを登録します。
必要条件
サーバーはWindowsとLinux(64ビット)向けがあり、ホストにゲームのライセンスは不要です(匿名ログイン)。参照した情報源にはスロット数ごとの保証された最小スペックは記載がありません。シングルスレッド性能の高い複数コア、MODが多い場合は8〜16GB以上のRAM、SSD、安定した上り帯域を用意してください。サーバーとクライアントは同じバージョンが必要です。実験版ブランチ(app 1890870)もあります。
ローカルインストール(Windows)
Valve提供のSteamCMD(steamcmd.exe)をダウンロードし、以下のコマンドを実行します。その後config.jsonをサーバーフォルダーに置いて起動し、ゲームから127.0.0.1(必要ならポート付き)に接続します。
steamcmd.exe +force_install_dir C:\ArmaReforgerServer +login anonymous +app_update 1874900 validate +quit
cd /d C:\ArmaReforgerServer
ArmaReforgerServer.exe -config .\config.json -profile .\profile -maxFPS 60Linux VPS/専用サーバーへのインストール
Ubuntu/Debianでは、root以外の専用ユーザーを作成してSteamCMDをインストールします。Debianでは先に「non-free」リポジトリを有効にしてください。steamcmdのインストール時にSteamライセンスへの同意が求められます。
sudo apt update && sudo apt install -y software-properties-common
sudo add-apt-repository -y multiverse && sudo dpkg --add-architecture i386 && sudo apt update
sudo apt install -y steamcmd lib32gcc-s1 ca-certificates
sudo adduser --disabled-password --gecos "" reforger初回起動
専用ユーザーでサーバーをダウンロードして起動します。-maxFPSでCPU負荷を制限し(無制限だとコアを使い切ることがあります)、-profileでログとデータのフォルダーを指定します。
sudo -iu reforger
mkdir -p ~/server ~/steamcmd
/usr/games/steamcmd +force_install_dir ~/server +login anonymous +app_update 1874900 validate +quit
cd ~/server && mkdir -p profile
# put config.json here, then:
./ArmaReforgerServer -config ./config.json -profile ./profile -maxFPS 60開放するポート
Bohemia Interactive wikiの既定値です。config.json(bindPort/publicPort、a2s.port、rcon.port)で変更できます。RCONポートはrconを有効にした場合のみ必要です。
- 2001/UDP — ゲーム
- 17777/UDP — A2S(Steamサーバーリスト)
- 19999/UDP — RCON(任意)
Linuxファイアウォール(ufw)
sudo ufw allow 2001/udp
sudo ufw allow 17777/udp
sudo ufw allow 19999/udp
sudo ufw status verboseWindowsファイアウォール(netsh)
netsh advfirewall firewall add rule name="Arma Reforger 2001 UDP" dir=in action=allow protocol=UDP localport=2001
netsh advfirewall firewall add rule name="Arma Reforger 17777 UDP" dir=in action=allow protocol=UDP localport=17777
netsh advfirewall firewall add rule name="Arma Reforger 19999 UDP" dir=in action=allow protocol=UDP localport=19999プロバイダーのファイアウォールとルーター(NAT)
OVH、Hetzner、Scaleway などでは、サーバー本体より前で通信を制御するプロバイダー側ファイアウォール(セキュリティグループ/パネルのファイアウォール)でも同じポートを開放してください。自宅ホスティングでは、ルーターで各ポートをサーバーのローカルIPへ正しいプロトコルで転送(NAT)します。外部(モバイル回線)から確認し、RCONなどの管理用ポートは強力なパスワードなしで公開しないでください。
自動起動(systemd)
このファイルを/etc/systemd/system/reforger.serviceとして保存し、sudo systemctl daemon-reload && sudo systemctl enable --now reforgerを実行します。ログはjournalctl -u reforger -fで確認。Windowsでは「起動時」のタスクスケジューラで同じパラメーターのArmaReforgerServer.exeを実行します。
[Unit]
Description=Arma Reforger server
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=reforger
WorkingDirectory=/home/reforger/server
ExecStart=/home/reforger/server/ArmaReforgerServer -config ./config.json -profile ./profile -maxFPS 60
Restart=on-failure
RestartSec=15
LimitNOFILE=100000
[Install]
WantedBy=multi-user.targetアップデート
サービスを停止し、app_updateを再実行して再起動します。クライアントとサーバーは同じバージョンが必要です。更新後、古いMODは作者が更新するまで起動を妨げることがあります。
sudo systemctl stop reforger
sudo -u reforger /usr/games/steamcmd +force_install_dir /home/reforger/server +login anonymous +app_update 1874900 validate +quit
sudo systemctl start reforgerバックアップと定期再起動
profileフォルダー(永続化セーブ、ログ)とconfig.jsonをバックアップし、cronで空いている時間帯に毎日の再起動をスケジュールします(ここでは5:00、バックアップは4:55)。
# crontab -e (root)
55 4 * * * tar czf /var/backups/reforger-$(date +\%F).tgz -C /home/reforger/server profile config.json
0 5 * * * systemctl restart reforgerサーバーの登録と検索
サーバーが外部から接続できるようになったら、game-rank.com/jeux/arma-reforger(本ツール運営者のサイト)に登録するとプレイヤーに見つけてもらえます。
トラブルシューティング
- サーバーが起動しない:JSONが不正(余分なカンマ、BindPortのような大文字小文字の誤り)。ツールでconfig.jsonを再生成し、-profileのログを確認してください。
- 一覧に表示されない:17777/UDPが閉じている、config.jsonにa2sがない、またはNAT内でpublicAddressが誤っている。
- 外部から接続できないがローカルでは接続可:2001/UDPがシステム/プロバイダーのファイアウォールやNAT転送で開いていない(TCPではなくUDP)。
- CPUを使い切る:起動コマンドに-maxFPS(60〜120)を追加してください。
- MODが拒否される/バージョン不一致:GUID(16桁の16進)を確認し、サーバーとMODを更新するか、任意MODはrequiredをfalseにします。
よくある質問
- サーバーをホストするのにArma Reforgerの所有は必要ですか?
- 不要です。専用サーバー(app 1874900)はSteamCMDの匿名ログインでダウンロードできます。
- 既定のポートは?
- 2001/UDP(ゲーム)、17777/UDP(A2S)、19999/UDP(RCON、任意)。
- scenarioIdはどう調べますか?
- -listScenariosで起動すると利用可能なパスが表示されます。
- サーバーのFPSを制限する理由は?
- -maxFPSがないと無制限で動作し、コアを丸ごと占有することがあります。実用上は60〜120で十分です。
