『ARK: Survival Ascended(アーク:サバイバル・アセンデッド/ASA)』をXServer VPS for Gameで遊ぶなら、Ubuntu 24.04のサーバーを借りて、ASAの専用サーバーを自分で入れる流れになる。契約画面で選ぶもの、黒い画面に入力するコマンド、フレンドに伝える情報まで、順番に進めよう。
入口は「XServer VPS for Game」、メモリは16GB以上。「ARK」テンプレートは『ARK: Survival Evolved(ASE)』用なので、ASAでは「Ubuntu 24.04」を選ぶ。XServer GAMEsという別サービスも並ぶため、最初の選択が大事だ。

ブラウザで設定を済ませる手軽さを重視するなら、先に2〜8人向けのASAレンタルサーバー比較を読んで選ぶと分かりやすい。XServerは、OSの更新やバックアップも自分で管理したい人に合う。
契約前に確認するもの|16GBの料金と管理の手間
- 新しく用意するサーバー:Ubuntu 24.04 LTS、メモリ16GB以上。
- 料金の目安:16GBプランは1か月契約で11,770円/月(税込、2026年11月8日確認)。8 vCPU・NVMe SSD 100GB。
- 遊ぶ側:PCのSteam版ASA本体と、サーバーと合うゲームバージョン。この記事の接続手順はSteam版を対象にする。
- 管理すること:OS・ASAの更新、空き容量、バックアップ、参加用パスワード、稼働状況。

16GBは構築の出発点。マップ、MOD、拠点、恐竜の数で必要量は増える。最初は1マップ・少人数・MODなしで接続まで確認すると、問題の切り分けが楽になる。複数マップを同時に動かす場合は、各サーバー分のメモリと保存容量も見込もう。
長期割引は期間分の負担も含めて選びたい。解約料金は0円、支払い済み料金は返金対象外で、解約後も利用期限まで使える。短く試したい人は契約期間と自動更新をよく確認しよう。料金・仕様/解約と返金の条件
手順1|VPS for GameでUbuntu 24.04を申し込む
アカウントを作り、確認コードを入力する
- XServer VPS for Gameの申し込みフォームを開く。
- 左側の「すぐにスタート!新規お申込み」を選ぶ。XServerアカウントを持っている人は、その下の登録済みの方向けリンクへ進む。
- メールアドレス、アカウント用パスワード、名前、住所、電話番号を入力する。
- 利用規約と個人情報の取り扱いを読み、内容を了承して次へ進む。
- メールの確認コードを入力する。電話認証が表示された場合は画面の案内に沿って認証する。

サーバーの種類・容量・契約期間を決める
サーバーの申し込み画面では、次を一つずつ確認しよう。
- イメージタイプ:「テンプレートなし」のUbuntu 24.04を選ぶ。
- プラン:16GB以上。小さな月額の表示だけで決めず、メモリ容量を見る。
- 契約期間:まず遊ぶ期間に合わせる。表示月額と支払い合計を確認する。
- rootパスワード:サーバー管理者用。長く推測されにくいものを設定し、自分だけが管理する。
- SSH Key:下の構築手順はブラウザのシリアルコンソールから進められる。SSH接続を使う場合は、自分の鍵の設定も確認する。
申し込み内容を確認し、支払い方法を選ぶ。最後のプラン・契約期間・税込合計・更新条件を読み、納得した内容で支払いを確定する。ゲームパネルで対象サーバーが「稼働中」になったら構築へ進もう。
すでに別のゲームを動かしているサーバーは、データを退避してから作業。アプリ再インストールを行うと、そのサーバーの保存データが削除される。ここからのコマンドは、新規のUbuntu 24.04を使う。
手順2|シリアルコンソールを開く
ゲームパネルで対象サーバーを開き、右上の「コンソール」→「シリアルコンソール」へ進む。ログイン名はroot、パスワードは契約時に決めたrootパスワードを入力する。
パスワード入力中は画面が空欄のままになる。入力後にEnterを押そう。以降はrootでログインしていることを確かめて、一つのまとまりが終わってから次へ進む。エラーが出たら、その文を確認してから作業を続ける。

手順3|UbuntuとASAの土台を準備する
ASAのサーバープログラムを取得するSteamCMD(スチーム・シーエムディー)と、Windows用プログラムをLinux上で動かすProton(プロトン)を使う。ゲーム本体を買うSteamアカウントと、サーバープログラムのダウンロードは別で、後者はanonymous(アノニマス/匿名)で進められる。
ここからのコマンドは、すべてrootのシリアルコンソールへ入力する。ASAのファイル取得と起動は、コマンド内で専用ユーザーasaに切り替える。既存のユーザーや設定を見つけると停止する設計なので、途中で止まったときは表示された場所を確認しよう。
3-1 Ubuntuを更新する
まずOSのパッケージ一覧とインストール済みソフトを更新する。
bash <<'ROOT_STEP'
#!/bin/bash
set -euo pipefail
[[ $EUID -eq 0 ]] || { echo 'Run as root'; exit 1; }
. /etc/os-release
[[ $ID == ubuntu && $VERSION_ID == 24.04 ]] || exit 1
[[ $(dpkg --print-architecture) == amd64 ]] || exit 1
apt-get update
apt-get upgrade -y
if [[ -f /var/run/reboot-required ]]; then
echo 'Reboot required. Run reboot, reconnect, then continue with section 3-2.'
fi
ROOT_STEP
「Reboot required」が出たらrebootを入力して再起動し、同じシリアルコンソールへログインし直す。コマンドの詳細はUbuntuのパッケージ管理(英語)を参照。
3-2 メモリ・保存容量と専用ユーザーを用意する
次の処理は空き容量を表示し、必要なライブラリとasaユーザーを追加する。有効なswapがある環境はそれを保ち、swapが空なら8GiBのファイルを追加する。swapは一時的な退避場所なので、物理メモリ16GB以上を用意して進めよう。
準備コマンドを表示(クリックして開く)
bash <<'ROOT_STEP'
#!/bin/bash
set -euo pipefail
[[ $EUID -eq 0 ]] || exit 1
. /etc/os-release
[[ $ID == ubuntu && $VERSION_ID == 24.04 ]] || exit 1
[[ $(dpkg --print-architecture) == amd64 ]] || exit 1
# Existing installations are deliberately not adopted or overwritten.
if getent passwd asa >/dev/null || [[ -e /home/asa || -L /home/asa ]]; then
echo 'asa user/home already exists. Stop and inspect; do not delete it.'
exit 1
fi
for p in /etc/systemd/system/asa-server.service /usr/local/sbin/asa-backup-update; do
[[ ! -e $p && ! -L $p ]] || { echo "Existing path: $p"; exit 1; }
done
free -h
swapon --show
df -h /
# Preserve every existing swap area. Add an 8 GiB file only when no swap is active.
if [[ -z $(swapon --show --noheadings) ]]; then
[[ ! -e /swapfile-asa && ! -L /swapfile-asa ]] || exit 1
if grep -Eq '^[[:space:]]*[^#[:space:]][^#]*[[:space:]]swap[[:space:]]' /etc/fstab; then
echo 'Inactive swap is already configured in fstab. Inspect it before continuing.'
exit 1
fi
[[ $(findmnt -no FSTYPE /) =~ ^(ext4|xfs)$ ]] || { echo 'Unsupported filesystem'; exit 1; }
# 30 GiB is a preparation guard, not a guarantee that all maps/mods will fit.
(( $(df -B1 --output=avail / | tail -1) >= 30*1024*1024*1024 )) || exit 1
umask 077
dd if=/dev/zero of=/swapfile-asa bs=1M count=8192 conv=excl status=progress
chmod 600 /swapfile-asa
mkswap /swapfile-asa
swapon /swapfile-asa
cp -a /etc/fstab "/etc/fstab.before-asa.$(date -u +%Y%m%dT%H%M%S).$$"
printf '\n/swapfile-asa none swap sw 0 0\n' >> /etc/fstab
fi
dpkg --add-architecture i386
apt-get update
apt-get install -y curl ca-certificates tar xvfb xauth \
lib32gcc-s1 lib32stdc++6 libsdl2-2.0-0 libsdl2-2.0-0:i386 \
libx11-6 libx11-6:i386 libgl1 libgl1:i386
adduser --disabled-password --gecos '' asa
chmod 700 /home/asa
echo 'Preparation finished. Continue with section 4.'
ROOT_STEP
「Preparation finished」が出たら次へ。「already exists」「Existing path」が出た場合は既存の設定があるため停止している。表示先を確認してから、その環境に合う方法で進めよう。swapの仕組みと作成条件:Ubuntu mkswap(英語)。
手順4|SteamCMD・ASA・Protonを入れる
ASAサーバーのアプリIDは2430930。Windows版のサーバープログラムを取得し、GE-Proton8-21で起動する構成だ。GE-Proton(ジーイー・プロトン)はコミュニティ製の互換ツールで、この例はXServerの掲載バージョンに合わせている。
ダウンロードと導入コマンドを表示(クリックして開く)
bash <<'ROOT_STEP'
#!/bin/bash
set -euo pipefail
[[ $EUID -eq 0 ]] || exit 1
runuser -l asa -c 'bash -s' <<'ASA_DOWNLOAD'
set -euo pipefail
umask 077
cd /home/asa
for p in steamcmd ASA_Server Steam; do
[[ ! -e $p && ! -L $p ]] || { echo "Existing path: $p. Stop and inspect."; exit 1; }
done
mkdir steamcmd
curl --fail --location --retry 3 \
https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz \
-o steamcmd/steamcmd_linux.tar.gz
tar -xzf steamcmd/steamcmd_linux.tar.gz -C steamcmd
./steamcmd/steamcmd.sh +@sSteamCmdForcePlatformType windows \
+force_install_dir /home/asa/ASA_Server +login anonymous \
+app_update 2430930 validate +quit
test -f ASA_Server/ShooterGame/Binaries/Win64/ArkAscendedServer.exe
mkdir -p .steam/sdk32 .steam/sdk64
for bits in 32 64; do
target="/home/asa/steamcmd/linux${bits}/steamclient.so"
link="/home/asa/.steam/sdk${bits}/steamclient.so"
test -f "$target"
if [[ -e $link || -L $link ]]; then
[[ $(readlink "$link") == "$target" ]] || { echo "Unexpected existing file: $link"; exit 1; }
else
ln -s "$target" "$link"
fi
done
mkdir -p Steam/compatibilitytools.d Steam/steamapps/compatdata/2430930 downloads
cd downloads
curl --fail --location --retry 3 \
https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton8-21/GE-Proton8-21.tar.gz \
-o GE-Proton8-21.tar.gz
tar -xzf GE-Proton8-21.tar.gz -C /home/asa/Steam/compatibilitytools.d
test -x /home/asa/Steam/compatibilitytools.d/GE-Proton8-21/proton
ASA_DOWNLOAD
ROOT_STEP
SteamCMDでSuccess! App ‘2430930’ fully installed.と表示されたことを確認する。取得の途中でエラーが出たら、ネットワークと空き容量を確かめる。次の工程へ進む前に、ASAとProtonの取得を完了させよう。GE-Proton8-21の配布元(英語)
手順5|サーバー名と2種類のパスワードを設定する
この例はThe Island(ジ・アイランド)、サーバー名Friends_ASA、参加枠8人で作成する。名前を変える人は、下のコード内にあるFriends_ASAを書き換えてから実行しよう。参加枠の8人は設定上の上限で、快適さはワールドの負荷に左右される。
実行するとパスワードを2回聞かれる。「Join password」はフレンドへ伝える参加用、「Different admin password」は管理者専用。それぞれ異なる16〜64文字の英数字を入力する。文字は画面に表示されず、Enterで確定する。
起動用ファイル、OS起動時に使うsystemd(システムディー)のサービス、後述のバックアップ・更新用コマンドもここで作る。この起動例はBattlEyeを無効にするため、パスワード付きの信頼できるフレンド用サーバーとして使おう。
初期設定と起動ファイルの作成コマンドを表示(クリックして開く)
bash <<'ROOT_STEP'
#!/bin/bash
set -euo pipefail
[[ $EUID -eq 0 ]] || exit 1
umask 077
ini=/home/asa/ASA_Server/ShooterGame/Saved/Config/WindowsServer/GameUserSettings.ini
for dest in "$ini" /home/asa/start-asa.sh /etc/systemd/system/asa-server.service /usr/local/sbin/asa-backup-update; do
[[ ! -e $dest && ! -L $dest ]] || { echo "Existing file: $dest. Stop and inspect."; exit 1; }
done
read -r -s -p 'Join password (16-64 ASCII letters/digits): ' join </dev/tty
printf '\n'
read -r -s -p 'Different admin password (16-64 ASCII letters/digits): ' admin </dev/tty
printf '\n'
[[ $join =~ ^[a-zA-Z0-9]{16,64}$ && $admin =~ ^[a-zA-Z0-9]{16,64}$ && $join != "$admin" ]] || {
echo 'Invalid or identical passwords. Nothing created.'; exit 1;
}
runuser -u asa -- mkdir -p "$(dirname "$ini")"
chmod 700 "$(dirname "$ini")"
( set -C; printf '[ServerSettings]\nServerPassword=%s\nServerAdminPassword=%s\nRCONEnabled=False\n' "$join" "$admin" > "$ini" )
unset join admin
chown asa:asa "$ini"
chmod 600 "$ini"
( set -C; cat > /home/asa/start-asa.sh <<'ASA_FILE'
#!/bin/bash
set -euo pipefail
umask 077
cd /home/asa/ASA_Server/ShooterGame/Binaries/Win64
export SteamAppId=2430930
export STEAM_COMPAT_APP_ID=2430930
export STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/asa/steamcmd
export STEAM_COMPAT_DATA_PATH=/home/asa/Steam/steamapps/compatdata/2430930
export WINEDLLOVERRIDES='xaudio2_9=d;x3daudio1_7=d'
export SDL_AUDIODRIVER=dummy
export XDG_RUNTIME_DIR=/run/asa-server
printf '2430930\n' > steam_appid.txt
exec xvfb-run -a /home/asa/Steam/compatibilitytools.d/GE-Proton8-21/proton \
run ./ArkAscendedServer.exe 'TheIsland_WP?listen?SessionName=Friends_ASA' \
-port=7777 -WinLiveMaxPlayers=8 -ServerPlatform=ALL -NoBattlEye -NoSound
ASA_FILE
)
chown asa:asa /home/asa/start-asa.sh
chmod 700 /home/asa/start-asa.sh
( set -C; cat > /etc/systemd/system/asa-server.service <<'ASA_FILE'
[Unit]
Description=Private ASA server via Proton
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=asa
Group=asa
WorkingDirectory=/home/asa
Environment=HOME=/home/asa
UMask=0077
RuntimeDirectory=asa-server
RuntimeDirectoryMode=0700
LimitNOFILE=100000
ExecStart=/home/asa/start-asa.sh
Restart=on-failure
RestartSec=30
KillSignal=SIGINT
KillMode=control-group
TimeoutStopSec=180
[Install]
WantedBy=multi-user.target
ASA_FILE
)
chown root:root /etc/systemd/system/asa-server.service
chmod 644 /etc/systemd/system/asa-server.service
( set -C; cat > /usr/local/sbin/asa-backup-update <<'ASA_FILE'
#!/bin/bash
set -euo pipefail
[[ $EUID -eq 0 ]] || exit 1
umask 077
exec 9>/run/lock/asa-maintenance.lock
flock -n 9 || { echo 'Maintenance is already running'; exit 1; }
echo 'Players must leave first. SaveWorld in-game before continuing.'
read -r -p 'Type SAVED after saving the world: ' answer
[[ $answer == SAVED ]] || exit 1
systemctl stop asa-server.service
[[ $(systemctl show -p ActiveState --value asa-server.service) == inactive ]] || {
echo 'Service did not stop cleanly. Inspect journalctl; no update performed.'; exit 1;
}
[[ $(systemctl show -p Result --value asa-server.service) == success ]] || {
echo 'Service stop failed. Inspect journalctl; no update performed.'; exit 1;
}
saved=/home/asa/ASA_Server/ShooterGame/Saved
[[ -d $saved ]] || { echo 'Saved directory missing. Stop and inspect.'; exit 1; }
install -d -m 700 /var/backups/asa
stamp=$(date -u +%Y%m%dT%H%M%S)-$$
backup=/var/backups/asa/$stamp.tar.gz
need=$(du -sb "$saved" | cut -f1)
free=$(df -B1 --output=avail /var/backups/asa | tail -1)
(( free > need*2 + 1073741824 )) || { echo 'Insufficient backup space'; exit 1; }
tar -czf "$backup" -C / home/asa/ASA_Server/ShooterGame/Saved \
home/asa/start-asa.sh etc/systemd/system/asa-server.service
gzip -t "$backup"
sha256sum "$backup" > "$backup.sha256"
echo "Backup: $backup. Keep a separate offline copy."
read -r -p 'Type UPDATE to download the update, or Enter to leave the server stopped: ' answer
[[ $answer == UPDATE ]] || exit 0
runuser -l asa -c '/home/asa/steamcmd/steamcmd.sh +@sSteamCmdForcePlatformType windows +force_install_dir /home/asa/ASA_Server +login anonymous +app_update 2430930 validate +quit'
echo "Check SteamCMD printed: Success! App '2430930' fully installed."
read -r -p 'Type START only after confirming success: ' answer
[[ $answer == START ]] || exit 0
systemctl start asa-server.service
systemctl status asa-server.service --no-pager
ASA_FILE
)
chown root:root /usr/local/sbin/asa-backup-update
chmod 700 /usr/local/sbin/asa-backup-update
bash -n /home/asa/start-asa.sh
bash -n /usr/local/sbin/asa-backup-update
systemd-analyze verify /etc/systemd/system/asa-server.service
systemctl daemon-reload
echo 'Files created. Configure packet filtering before starting the server.'
ROOT_STEP
「Files created」が出たら設定ファイルの作成が完了。パスワードは/home/asa/ASA_Server/ShooterGame/Saved/Config/WindowsServer/GameUserSettings.iniに保存する。設定やバックアップに含まれる管理用パスワードは、自分だけが読める場所で保管しよう。参加枠の指定:ARK公式コミュニティWikiのサーバー設定(英語)。
手順6|通信を許可してサーバーを起動する
ゲームパネルの「パケットフィルター設定」で、ASA向けの通信を追加する。XServerのASA手順に合わせる設定はUDP 7777・7778・27015。サーバー側の起動設定で番号を変えた場合は、フィルターも同じ番号に合わせよう。

- 「手動で設定」を選ぶ。
- プロトコルをUDP、ポートの指定を単一ポートにする。
- ポート番号に7777を入力して「追加する」を押す。
- 同じ操作で7778と27015を追加する。
ゲーム参加用のUDPは、参加者のIPが変わるなら送信元IPを限定せず、参加用パスワードで入室を管理する。メンバー全員の接続元IPを把握できる場合は、そのIPだけを許可する運用も選べる。
通信の入口は使うものに絞る。管理用SSHを使う人は接続元IPを限定し、OS側のファイアウォールを追加している場合はそちらも確認する。ここで扱う基本構成は、外部操作用のRCONを追加せずに進められる。
フィルターを追加したら、rootのコンソールへ次を入力する。
systemctl enable --now asa-server.service
systemctl status asa-server.service --no-pager
journalctl -u asa-server.service -n 80 --no-pager
上から、OS再起動後も起動する設定、現在の状態、直近80行のログを確認するコマンドだ。active (running)はプロセスが動いている状態。ログを追って初回のワールド読み込みが終わるまで待ち、ゲーム側の接続確認へ進もう。
手順7|フレンドと接続する
- ASAを起動してサーバー参加画面を開く。
- 非公式サーバーを選び、起動設定で決めたSessionName(セッションネーム/サーバー名)を検索する。
- パスワード付きサーバーを表示する条件、マップ、MODなどの絞り込みを確認する。
- サーバーを選び、参加用のServerPasswordを入力する。
- ワールドに入れたら、フレンドにもサーバー名・参加用パスワード・必要なマップやMODを伝える。
管理用のServerAdminPasswordは管理者だけで保管しよう。公開SNSへ載せるスクリーンショットにパスワードや管理画面の情報が写り込んでいないかも確かめたい。
一覧に出てこないときは、この順番で確認
- 起動ログ:サーバーの初回起動が終わっているか。ゲームの読み込み完了もログで確かめる。
- バージョン:クライアントとサーバーを更新したか。
- 検索条件:サーバー名、パスワード付き表示、非公式、マップを確認する。
- 通信:UDPの番号、XServerのフィルター、OS側の設定を照合する。
- 容量:メモリ不足やディスク満杯のエラーを確認する。
更新とバックアップ|遊び始めた後に覚える操作
Steam版のコンソールは、Esc → 設定 → キーボードのタブ →「コンソールの切り替え」で使うキーを決め、セーブしてから開く。日本語キーボードなら、使いやすいキーを自分で割り当てよう。
更新前は管理者がゲーム内コンソールで保存し、参加者に退出してもらう。管理権限を取得してから次の順で入力する。
enablecheats 自分で設定した管理用パスワード
cheat SaveWorld
保存完了を確認したら、rootのシリアルコンソールで次を実行する。
/usr/local/sbin/asa-backup-update
- SAVED:保存を確認した後に入力。サーバーを止め、Savedフォルダーと設定を圧縮保存する。
- UPDATE:バックアップができた後に入力。SteamCMDが更新をダウンロードする。
- START:SteamCMDのSuccessメッセージを確認してから入力。サーバーを起動する。
バックアップ先は/var/backups/asa/。サーバー停止後、UPDATE・STARTを空欄で進めた場合は停止したまま。エラー時はsystemctl status asa-server.serviceで状態を確認しよう。原因を確認した後、systemctl start asa-server.serviceで起動できる。古いバックアップは保存容量を見ながら管理しよう。
停止がタイムアウトした場合はログを調べ、保存状態を確認してから更新する。バックアップはワールドと設定の保護用なので、ゲーム本体の更新を元に戻す操作とは分けて考えよう。
バックアップは、同じVPS内に加えて自分のPCなど別の保存先にも持っておこう。契約の終了やVPS全体の故障に備えられる。ワールドを入れ替えるときは、マップと対応する保存データ、MOD構成を一緒に管理すると戻しやすい。
自動更新はXServerアカウントの支払い設定で確認できる。VPS for Gameは利用期限日までに自動更新を解除する案内なので、終了日を決めたら早めに設定を見直そう。VPS for Gameの自動更新手順
海外の解説と、XServer向け手順の違い
TroubleChute(トラブルシュート)のASA専用サーバー解説(英語)は、SteamCMD、起動設定、ファイアウォールまで画面付きで追える。使っている環境はWindowsで、XServerのUbuntuとは操作が変わる。
- 起動ファイル:Windowsの.batに対し、この構成はLinuxの.shとsystemdを使う。
- 通信設定:自宅PCのルーター設定に対し、VPSはゲームパネルのパケットフィルターを確認する。
- サーバーの入手:現在はSteamCMDのanonymousで取得する。
- 参加人数:起動例の数値は接続枠の上限。快適に動く人数はマップや負荷で変わる。
まずは1マップで起動と接続まで進めて、ワールドの保存・更新・再起動を覚えよう。自分たちのペースで遊べるASAサーバーができたら、次は倍率や遊び方の調整。フレンドと相談しながら、長く遊べる世界を育てていこう!
構築の参照:XServer公式ASA構築ガイド/ARKテンプレートの対応対象。料金・サービス画面は2026年11月8日確認。
XServerのサービス名・画面に関する権利はエックスサーバー株式会社に帰属します。画面はサービスの操作説明に使用しています。
表紙画像:Steam公式『ARK: Survival Ascended』ストアページ。©2024 Wildcard Properties LLC. ARK: Survival Ascended is a trademark of Studio Wildcard. All rights reserved.


コメント