Minecraft以外のゲームサーバー
VPSでCS2、Rust、Terraria、Valheim、Palworldのサーバーをホストする方法です。ティア要件、SteamCMDでのインストール、ポート、よくある問題を説明します。
更新日 2026年8月23日
ほとんどのゲームサーバーは SteamCMD からインストールし、通常の Linux サービスとして実行します。VDS の完全な root アクセスがあれば何でも実行できますが、制約となるのはメモリ、コア数、そして多くのゲームがメインループをシングルコアで処理するという点だけです。
何が何を制限するか
| ゲーム | メモリ | 備考 |
|---|---|---|
| Terraria、Factorio | 1〜2 GB | VDS-1 で十分 |
| Valheim | 4〜6 GB | ワールドサイズに応じて増加、VDS-2 または VDS-3 |
| CS2 | 2〜4 GB | 重要なのはコア数ではなくコアクロック |
| Rust | 12〜16 GB | VDS-4 以上、マップでディスクがすぐ埋まる |
| Palworld | 8〜16 GB | 目立つメモリリーク、定期的な再起動が必要 |
Ryzen 9 7950X は高いクロックを発揮するため、下位ティアでは通常 CPU ではなくメモリが制約要因になります。
SteamCMD でのインストール
dpkg --add-architecture i386 && apt update
apt install -y steamcmd lib32gcc-s1
useradd -m -d /srv/game -s /bin/bash game
sudo -u game /usr/games/steamcmd \
+force_install_dir /srv/game/server \
+login anonymous \
+app_update 896660 validate \
+quit
各ゲームには独自のアプリ ID があります。サーバーの更新も同じコマンドで行います。変更されたファイルをダウンロードします。
サービスとポート
[Service]
User=game
WorkingDirectory=/srv/game/server
ExecStart=/srv/game/server/start.sh
Restart=on-failure
RestartSec=20
[Install]
WantedBy=multi-user.target
ゲームサーバーは通常 TCP ではなく UDP で待ち受けます。これが「サーバーは起動しているのに見えない」というよくある原因です。
ufw allow 2456:2458/udp
ss -ulpn | grep 2456
パブリック IPv4 アドレスは /hosting/vds/m/<id> パネルの「概要」タブで確認できます。2 つ目のアドレスや IPv6 はないため、同じゲームのサーバーを 2 つに分ける場合はアドレスではなく異なるポートで分けてください。
自動再起動とバックアップ
メモリリークのあるゲームでは、夜間の再起動を設定してください。
0 6 * * * systemctl restart valheim
セーブデータをスケジュールでコピーし、マシン外へ移動してください。自動バックアップやスナップショットはありません。
tar czf /srv/backups/world-$(date +%F).tar.gz /srv/game/server/saves
rsync -az /srv/backups/ backup@other-host:/store/
一般的な手順はデータベースのバックアップで説明しています。セーブファイルでも同じです。
よくある間違い
| 症状 | 原因 |
|---|---|
| サーバーがリストに表示されない | UDP ポートが閉じている、またはクエリポートが開いていない |
| 数時間後にクラッシュする | メモリリーク、MemoryMax の未設定、夜間再起動の未設定 |
steamcmd: not found | パッケージが multiverse または non-free セクションからインストールされている |
| サーバーが満員のときにラグが発生する | シングルスレッドのループがコアを使い切っている。より高いクロックだけが解決策 |
| 空き容量不足 | ログと古いセーブデータ。「概要」のディスク使用量リングを確認してください |
ゲームサーバーを root で実行するのは悪い考えです。エンジンにはパケット解析の脆弱性が定期的に見つかります。ゲームごとに専用のシステムユーザーを作ることは必須です。