本文へスキップ
Rust

Rustサーバーを構築する

Rust専用サーバーは、WindowsまたはLinuxでSteamCMD(アプリ258550、匿名ログイン)を使ってインストールします。Facepunch wikiによれば空きRAM約12GB、ディスク15GB(SSD推奨)が目安で、インストールには20〜40分かかります。このガイドではローカル環境、Linux VPS、ポート、Oxide/uModまたはCarbon、systemd、運用保守を扱います。

最終更新日:2026/10/9

Rust専用サーバーは、WindowsまたはLinuxでSteamCMD(アプリ258550、匿名ログイン)を使ってインストールします。Facepunch wikiによれば空きRAM約12GB、ディスク15GB(SSD推奨)が目安で、インストールには20〜40分かかります。このガイドではローカル環境、Linux VPS、ポート、Oxide/uModまたはCarbon、systemd、運用保守を扱います。

手順ごとのインストール

  1. ハードウェアを確認:空きRAM約12GB、SSD 15GB、安定した回線。

  2. SteamCMDをインストールし、非rootユーザー(Linux)または専用フォルダ(Windows)を作成します。

  3. サーバーをダウンロード:匿名ログインでapp_update 258550 validate。

  4. サイトの「起動コマンドジェネレーター」で起動スクリプトを作成します。

  5. サーバーを一度起動し、マップの生成を待ちます。

  6. ローカルでテスト:クライアントでF1を押し、client.connect 127.0.0.1:28015を実行します。

  7. ポート28015 UDP、28016 TCP、28082 TCPを開放します(OSのファイアウォール、プロバイダ、ルーター)。

  8. 任意:プラグイン用にOxide/uModまたはCarbonのどちらか一方をインストールします。

  9. 自動起動のためsystemdサービス(Linux)またはタスクスケジューラ(Windows)を作成します。

  10. 更新・バックアップ・再起動をスケジュールし、game-rank.comにサーバーを登録します。

1. 前提条件

Facepunch wikiでは空きRAM約12GB(6000マップではさらに必要)、ディスク15GB(SSD/NVMe推奨)とされ、人数が多いほど高速なCPUが必要です。ライセンスキーは不要で、SteamCMDが匿名でアプリ258550(専用サーバー。ゲーム本体は252490)に接続します。64bitのWindowsまたはUbuntu/Debianを使用してください。

2. ローカル環境(Windows)

SteamCMDをC:\steamcmdに展開し、コマンドプロンプトで下のコマンドを実行します。続いて起動ツールの引数(RustDedicated.exe -batchmode +server.port 28015 …)でstart.batを作成します。テストはRustを起動してF1を押し、client.connect 127.0.0.1:28015と入力します。

C:\steamcmd\steamcmd.exe +force_install_dir C:\rust-server +login anonymous +app_update 258550 validate +quit

3. Linux VPS/専用サーバー(Ubuntu/Debian)

root権限のない「rust」ユーザーを作成し、SteamCMD(Ubuntuはmultiverse、Debianはnon-freeリポジトリ)をインストールしてサーバーをダウンロードします。以下ではパスに/home/rust/serverを使います。

sudo adduser --disabled-password --gecos "" rust
sudo dpkg --add-architecture i386 && sudo apt update
sudo apt install -y steamcmd lib32gcc-s1 screen   # Ubuntu: enable 'multiverse' first (sudo add-apt-repository multiverse)
sudo -iu rust
/usr/games/steamcmd +force_install_dir /home/rust/server +login anonymous +app_update 258550 validate +quit

4. Oxide/uModまたはCarbon(プラグイン)

Oxide(uMod):umod.org/games/rustからLinux版をダウンロードし、サーバーのルート(RustDedicatedのあるフォルダ)に上書き展開し、oxide.versionで確認します。Carbon:CarbonCommunity/CarbonのGitHubリリースからCarbon.Linux.Release.tar.gzを取得してルートに展開し、c.versionで確認します。両方を同時に入れないでください。プラグインはoxide/pluginsまたはcarbon/pluginsに置きます。Rust更新のたびにフレームワークも更新してください。URLやアーカイブ名は公式サイトで再確認してください。

cd /home/rust/server
# Carbon example (verify the release asset name on GitHub):
tar -xzf Carbon.Linux.Release.tar.gz
# In the server console afterwards:  c.version   (or oxide.version for Oxide)

5. 開放するポート

プロバイダのファイアウォール(OVH、Hetzner、Scalewayなどの「セキュリティグループ」)でも同じポートの受信を許可します。自宅運用ではルーターのNAT(ポート転送)でマシンのローカルIPへ転送します。テストは別回線からclient.connect IP:28015、または外部のUDPポートチェッカーを使います。

  • 28015/UDP — ゲーム(+server.port)。+server.portで変更可。
  • 28016/TCP — RCON(+rcon.port。rcon.web 1ではWebSocket)。管理者のIPにのみ開放してください。
  • 28082/TCP — Rust+コンパニオンアプリ用ポート(app.port。値はコミュニティのガイドによるもので、Facepunch wikiには「TCP」とのみ記載)。
  • クエリポート(UDP):+server.queryport。未指定ならserver.portとrcon.portの大きい方+1(上記の値では28017)。server.portと異なる必要があります。

6. Linuxファイアウォール(ufw)

ufwを有効にする前にSSHを許可して締め出しを防ぎます。RCONは管理用IPに限定してください(203.0.113.10を置き換え)。

sudo ufw allow OpenSSH
sudo ufw allow 28015/udp
sudo ufw allow 28082/tcp
sudo ufw allow from 203.0.113.10 to any port 28016 proto tcp
sudo ufw allow 28017/udp   # default query port
sudo ufw enable && sudo ufw status

7. Windowsファイアウォール

管理者権限のコマンドプロンプトで:

netsh advfirewall firewall add rule name="Rust game" dir=in action=allow protocol=UDP localport=28015
netsh advfirewall firewall add rule name="Rust query" dir=in action=allow protocol=UDP localport=28017
netsh advfirewall firewall add rule name="Rust RCON" dir=in action=allow protocol=TCP localport=28016
netsh advfirewall firewall add rule name="Rust+" dir=in action=allow protocol=TCP localport=28082

8. 自動起動(systemd)

このファイルを/etc/systemd/system/rust.serviceに置き(/home/rust/serverに実行可能なstart.shを用意)、sudo systemctl enable --now rustを実行します。Windowsではstart.batを実行する「起動時」のタスクを作成します。screen/tmuxも簡単な代替手段です。スクリプトは./RustDedicatedの前にLD_LIBRARY_PATH=./RustDedicated_Data/Plugins/x86_64をexportしてください(FacepunchのLinuxスクリプトと同様)。

[Unit]
Description=Rust dedicated server
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=rust
WorkingDirectory=/home/rust/server
ExecStart=/home/rust/server/start.sh
Restart=on-failure
RestartSec=15
LimitNOFILE=100000

[Install]
WantedBy=multi-user.target

9. 更新・バックアップ・再起動

サーバーを停止し、SteamCMDで更新、必要ならOxide/Carbonを再インストール(Rustの更新でそのファイルが上書きされます)して再起動します。クライアントとサーバーは同じバージョンが必要です。Facepunchの更新(月次フォースワイプ)のたびに、公開前に更新してください。server/<identity>(マップ、セーブ)とoxide/またはcarbon/(データ、設定)をバックアップします。cron例(rustユーザー):毎日05:00に再起動、04:50にバックアップ。

# crontab -e (as user rust; restart via a root cron or sudoers rule for systemctl)
50 4 * * * tar -czf /home/rust/backups/rust-$(date +\%F).tar.gz -C /home/rust/server server oxide
0 5 * * * sudo systemctl stop rust && /usr/games/steamcmd +force_install_dir /home/rust/server +login anonymous +app_update 258550 validate +quit && sudo systemctl start rust

10. サーバーの登録と掲載

ゲーム内リスト用に+server.hostname、+server.description、+server.urlを設定します。露出を増やすには、game-rank.com/jeux/rust(このツールの運営サイト)にサーバーを登録してください。

11. トラブルシューティング

  • 接続できない/「version mismatch」:Facepunchの更新後、サーバーがクライアントと同じバージョンではありません。app_update 258550 validateを再実行し、Oxide/Carbonを再インストールしてください。
  • サーバーが一覧に出ない:ファイアウォール、プロバイダ、ルーターで28015/UDPとUDPクエリポート(既定28017)が開いているか確認し、起動後数分待ちます。
  • RCONが接続を拒否する:+rcon.port、+rcon.password、+rcon.webを確認してください。28016/TCPが自分のIPに開放され、パスワードが空でないことが必要です。
  • プラグインが読み込まれない:Rust更新後にフレームワークを更新していない、OxideとCarbonを同時に導入している、またはoxide/config/*.jsonの構文エラー(サイトの設定エディターで検証)。oxide/logsまたはcarbon/logsを確認してください。
  • 起動時のクラッシュ/メモリ不足:マップが空きRAMに対して大きすぎます(12GB推奨、6000ではさらに必要)。+server.worldsizeを小さくするかメモリを増設してください。

よくある質問

Rustサーバーの Steam アプリ ID は?
258550(専用サーバー)で、SteamCMDの匿名ログインでインストールできます。ゲーム本体はアプリ252490です。
Rustはどのポートを使いますか?
28015/UDP(ゲーム)、28016/TCP(RCON)、28082/TCP(Rust+)、UDPクエリポート(既定28017)です。いずれも起動引数で変更できます。
OxideとCarbonのどちらを使うべき?
どちらも代替関係にあるプラグインフレームワークで、同時導入はできません。Oxide/uModはumod.orgに最大のカタログがあり、Carbonは独自の権限システムを持つ独立した代替です。選ぶ前に使用するプラグインの互換性を確認してください。
サーバー管理には管理者権限が必要ですか?
管理者としてプレイするには、サーバーコンソールでownerid <SteamID64> "名前"を実行し、続けてserver.writecfgを実行して自分のSteamID64を追加します。サーバーをrootで起動しないでください。

Rustサーバー用ツール

起動コマンドジェネレーターツールのスクリーンショットRustログイン不要
Rustサーバーの起動スクリプトを生成:ネットワーク、RCON、マップ、シード、ルール。
起動設定開く
ドキュメント
Rust
Rustログイン不要
Rustサーバーのserver.cfgを生成:名前、スロット、保存、PvE、decay、安定性、RCON。
設定server.cfg開く
ドキュメント
Rust
Rust要ログイン
Oxide/uModのグループ・メンバー・権限を作成:oxide.group、oxide.usergroup、oxide.grantコマンドをそのまま貼り付け可能。インポート対応。
権限OxideuMod開く
ドキュメント
Rust
Rustログイン不要
Rustのマップサイズ(1000〜6000)に適した人数を見積もり、シードを検証して起動引数をコピーします。
マップ計算開く
ドキュメント
Rust
Rust要ログイン
Rustのキット(アイテム、数量、コンテナ、クールダウン、権限)を作成し、キットプラグインに合わせて調整できるJSONを出力します。
キットプラグインJSON開く
ドキュメント
Rust
Rustログイン不要
Rustのワイプを計画:月次フォースワイプ、週次/隔週ワイプ、BPワイプをタイムゾーン別に表示。
ワイプスケジュール開く
ドキュメント
Rust
Rust要ログイン
Oxide/uModとCarbonのプラグイン設定JSONを編集・検証:生JSON、フィールド編集、整形。
プラグインJSON検証開く
ドキュメント