Linux
 Computer >> コンピューター >  >> システム >> Linux

Linux VPSでCS:GOサーバーを構築する方法【初心者向け完全ガイド】

Linux VPSでCS:GOサーバーを構築する方法【初心者向け完全ガイド】

Steam公式のCS:GOゲームサーバーは多くの用途に十分対応していますが、細かい設定は自分でコントロールできません。自前のサーバーを立てれば、次のようなことが可能になります。

  • マッチ時間、フリーズタイム、最大プレイヤー数、フレンドリーファイアなど、独自のルールを自由に設定できる
  • 友人だけのプライベートマッチを開催できる
  • 大会やトーナメントを主催できる
  • カスタムマップでプレイできる

なぜLinuxでゲームサーバーを構築するのか?

「Windowsの方が簡単なのでは? 自分のPCでもできるのでは?」と考える方もいるかもしれません。まず、自宅のPCでサーバーをホストする場合、一般的にはLAN内でのプレイにしか向いていません。多くのインターネット回線はダウンロード速度は十分でもアップロード速度が遅く、ラグやカクつきが発生して快適なプレイ体験を提供できません。スムーズなゲーム環境を求めるなら、信頼できるクラウドプロバイダーからサーバーをレンタルするのがおすすめです。

また、多くのクラウドサービスではWindowsもOSとして選択できますが、これも理想的とは言えません。WindowsはRAM消費量が多く、本来ゲームサーバーに使えるはずのリソースを圧迫します。その結果コストが増大するうえ、時間単位のライセンス料も追加で発生します。さらに重要な点として、ゲームサーバー(srcdsデーモン)の設定手順自体はWindowsでもLinuxでもほぼ同じです。つまり、MicrosoftのOSを使っても作業が楽になるわけではないのです。

参考までに、わずか56.7MBのRAMしか使用していないDebianシステムの例を以下に示します。

Linux VPSでCS:GOサーバーを構築する方法【初心者向け完全ガイド】

ゲームサーバーの必要スペック

CS:GOのゲームサーバーはそれほど負荷が高くないため、専用サーバーではなくVPS(仮想専用サーバー)で十分です。最小要件は以下の通りです。

  • RAM:2GB以上
  • 仮想CPUコア:2つ。「コンピュート最適化」インスタンスの方がレスポンスが良い場合があります。まずは通常インスタンスで試し、ラグを感じたら上位プランへアップグレードしましょう。
  • ストレージ:40GB以上
  • OS:Debian。他のディストリビューションも使えますが、Debianならトラブルなく進められます。本記事の手順はDebian向けです。
  • VPSプロバイダーの管理画面でファイアウォールを設定できる場合は、このインスタンスでは無効にしておきます。
  • SSHは鍵認証方式を推奨。パスワード認証を使う場合は、非常に強固なパスワードを設定してください。サーバーへの不正アクセスの多くは脆弱なパスワードが原因です。SSH鍵認証ならこれを防げます。
  • Steamアカウントを持っていない場合は、事前に公式サイトで作成しておきましょう。

LinodeやDigitalOceanなら、手頃な価格で信頼性の高いVPSを利用できます。

システムのアップデートと再起動

インスタンスのセットアップが完了したら、rootユーザーでSSHログインします。プロバイダーによってはsudo権限を持つ一般ユーザーでしかログインできない場合があります。その場合は、ログイン後に以下のコマンドを実行してください。

sudo -i # すでにrootの場合は実行しないでください!

すべてのパッケージを最新の状態に更新します。

apt update && apt upgrade

カーネルやsystemdなど重要なソフトウェアの更新を反映するため、再起動します。

systemctl reboot

再起動後、再度rootとしてログインします(一般ユーザーでログインした場合はsudo -iでrootに切り替えてください)。

steamcmdのインストール

32ビットアーキテクチャのサポートを有効にします。

dpkg --add-architecture i386

以下のパッケージをインストールします。

apt install software-properties-common

非フリー(クローズドソース)パッケージのインストールを有効にします。

add-apt-repository contrib
add-apt-repository non-free

パッケージマネージャーの情報を更新します。

apt update

steamcmdをインストールします。

apt install steamcmd
Linux VPSでCS:GOサーバーを構築する方法【初心者向け完全ガイド】

最初のダイアログでTABキーを押して「OK」を選択し、次のライセンス同意画面では「I AGREE」を選択してください。同意しないとインストールが中断されます。

続いてbyobuをインストールします。byobuを使うと、SSHセッションを切断してもCS:GOサーバーのプロセスを動かし続けられます。

apt install byobu

CS:GO専用サーバーのインストール

rootアカウントでサーバーを動かすのは避けるべきです。まず、専用サーバーデーモンを実行するための一般ユーザーを作成しましょう。

adduser --gecos "" --disabled-login cstrike

作成したユーザーに切り替えます。

su - cstrike

steamcmdを使って、必要なファイルをすべて「CSGO」ディレクトリにインストールします。

steamcmd +force_install_dir ~/CSGO/ +login anonymous +app_update 740 validate +quit

ゲームファイルのダウンロードは20GBを超えるため、完了まで時間がかかります。途中で中断された場合は、rootで再ログインし、su - cstrikeでcstrikeユーザーに切り替えてから同じコマンドを再実行すれば、続きから自動的に再開されます。

GSLT(ゲームサーバーログイントークン)の登録

ダウンロード中に、必要となるGSLT(Game Server Login Token)を登録しておきましょう。Steamのゲームサーバーアカウント管理ページにアクセスし、該当セクションまでスクロールします。

Linux VPSでCS:GOサーバーを構築する方法【初心者向け完全ガイド】

App IDには「730」を入力します。Memo欄には任意の名前を入力できます。登録するとトークンコードが生成され、後のコマンドで使用します。次の画像がログイントークンの例です。

Linux VPSでCS:GOサーバーを構築する方法【初心者向け完全ガイド】

CS:GO専用サーバーの起動

cstrikeユーザーがログインしたときにbyobuが自動起動するよう設定します。

byobu-enable

byobuセッションを開始します。

byobu

バグに関する注意: WindowsのSSHクライアントでは、コマンドラインに「1;0c」という文字列が表示されることがあります。その場合は、先に進む前にこの文字列を削除してください。

CS:GOサーバーのデーモンプロセスを起動します。次のコマンドは一例です。末尾の+sv_setsteamaccount B382BB13C7AAAFDE8272247F87586106の部分は、ご自身のGSLTに置き換える必要があります。「B382」で始まる文字列を削除し、前のステップで生成したゲームログイントークンを入力してください。

~/CSGO/srcds_run -game csgo -net_port_try 1 +game_type 0 +game_mode 0 +mapgroup mg_active +map de_dust2 +sv_setsteamaccount B382BB13C7AAAFDE8272247F87586106

-net_port_try 1+sv_setsteamaccountは必須のパラメータです。その他のパラメータは必要に応じて変更できます。デスマッチやアームズレースなど、さまざまなゲームモードの起動方法については、Valve Developer Communityのwikiページを参照してください。

F6キーを押すとbyobuセッションからデタッチでき、サーバーは動いたままになります。サーバーを停止したい場合はCtrl+Cを押してください。

後ほどrootでサーバーに再接続した際にbyobuセッションを復元するには、cstrikeユーザーとしてログインし直すだけです。

su - cstrike

セッションが自動的に開かない場合は、以下を入力します。

byobu

ゲームを起動してサーバーに接続

サーバーが正常に起動すると、ターミナルに次のようなメッセージが表示されます。

Connection to Steam servers successful.
Public IP is 203.0.113.8

表示されたIPアドレスをコピーします。

お使いのPCでCounter-Strike: Global Offensiveを起動します。

画面左上の「OFFICIAL MATCHMAKING」と表示されているドロップダウンリストをクリックします。

Linux VPSでCS:GOサーバーを構築する方法【初心者向け完全ガイド】

「コミュニティサーバーブラウザー」を選択します。「お気に入り」タブを開き、右下の「サーバーを追加」をクリックします。

Linux VPSでCS:GOサーバーを構築する方法【初心者向け完全ガイド】

VPSのパブリックIPアドレスを貼り付けます。サーバーがリストに表示されない場合は「更新」をクリックしてください。エントリをダブルクリックすると接続できます。

まとめ

おめでとうございます! これであなた自身のCS:GOゲームサーバーが完成しました。あとは、自分や友人の好みに合わせてゲーム設定を行いましょう。srcdsデーモンのコマンドラインオプションや、「autoexec.cfg」「server.cfg」による詳細な設定方法については、Valve Developer Communityのwikiページが良い出発点になるでしょう。楽しいゲームライフをお過ごしください!

  1. LinuxにKodiをインストールする方法|Ubuntu・Debian・Fedora・Arch対応ガイド

    メディアストリーミングの分野で、Kodiに勝るプレイヤーは存在しません。映画やドラマのボックスセットコレクションからライブTVまで、あらゆるコンテンツを再生できます。初代Xbox向けアプリとして誕生した頃とは別物と言えるほど進化しました。クロスプラットフォーム対応のため、Linux PCへのインストールも難しくありません。一部のLinuxリポジトリにはKodiが標準で含まれていますが、すべてのディストリビューションでそうとは限りません。本記事では、主要なLinuxディストリビューションそれぞれにKodiをインストールする手順を詳しく解説します。UbuntuにKodiをインストールする最近のUb

  2. Arch Linuxのインストール方法を徹底解説!初心者向けステップバイステップガイド

    UbuntuやLinux Mintとは異なり、Arch Linuxは「ローリングリリース」方式を採用したLinuxディストリビューションです。一度インストールしてしまえば、常に最新バージョンへと自動的にアップデートされ続けます。また、Arch Linuxは必要最小限の構成から始まるディストリビューションのため、システムに何をインストールするかを完全に自分でコントロールできるのも大きな魅力です。さらに、Linuxコミュニティ屈指の充実度を誇る「Arch Wiki」が存在する点も見逃せません。ただし、Arch Linuxで注意すべき点はそのインストールプロセスです。決して心臓の弱い方向けではありま