Garrys Modサーバーのセットアップ

手順はUbuntu 14.04 32ビット用に設計されていますが、Ubuntuのすべてのバージョンで機能するはずです。このチュートリアルでは、Garry's Modゲームサーバーの作成方法を説明します。

ターミナルからrootとしてログインします。

まず、セキュリティ問題の可能性を減らすために、ファイアウォールが安全であることを確認する必要があります。このサーバーがGarry's Mod専用であると仮定すると、Garry's Modに必要なポート以外のすべての着信ポート(ICMPを含む)を完全にブロックしても安全です。ICMPはサーバーの操作に必要ではなく、完全にブロックしてもGarry's Modに悪影響はありませんが、DDoS攻撃の攻撃経路を減らすのに役立ちます。

不要なポートをすべてブロックするには、次のコマンドが必要です。

iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j DROP

これは基本的に、ファイアウォールに、受信するすべてのICMPパケットを無視し、それに対してアクションを実行しないように指示します。これは、誰かがサーバーにpingを実行しようとしても、応答がないことを意味します。2行目は、ファイアウォールにすべての発信ICMPパケットをブロックするように指示します。これはそれほど重要ではありませんが、ICMP通信が発生しないように2倍にするだけです。

次に、次のコマンドを使用して、Garry's Mod(27005-27015を含む)に必要なすべてのポートを明確に許可する必要があります。

iptables -I INPUT -p tcp --dport 27005:27015 -j ACCEPT
iptables -I INPUT -p udp --dport 27005:27015 -j ACCEPT

これは、27005から27015までのポートでは何でも許可されることを示しています。最初のコマンドはTCP用で、2番目のコマンドはUDP用です。2番目のコマンド(UDP)は、サーバーとプレーヤー間のほとんどすべての通信がUDPで行われるため、ここで最も重要です。一部の人々はTCPのブロックに関する問題を報告しているので、そのため私たちは許可するべきです。

次に、ファイアウォールに、自分で開いた(またはサーバー上のソフトウェアが持っている)接続を許可するように指示します。つまり、サーバーに接続すると、応答を確認できるようになります。次のコマンドを入力して許可します。

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

(アカウントでコンソールを使用するのではなく)SSHを使用してサーバーを制御する場合、SSHが標準ポートで機能するためには、このコマンドが必要です。SSHを使用していない場合は、これを実行しないでください。

iptables -I INPUT -p tcp --dport 22 -j ACCEPT

そして最後に、ファイアウォールを設定するための最後のコマンド。このコマンドは、許可した接続以外のすべての着信接続をブロックします。

iptables -A INPUT -j REJECT

これらの設定は、サーバーを再起動するまでのみ適用されます。つまり、コンピューターを再起動するたびに手動でサーバーを再構成する必要があります。これは受け入れられないので、ファイアウォールルールをファイルに保存し、サーバーが起動するたびにそれをロードするインストールパッケージがあります。このパッケージをインストールするには、次のように入力します。

apt-get install iptables-persistent

画面の指示に従ってください。現在のファイアウォールルールを保存するかどうかを尋ねられたら、[はい]を押します。

これでファイアウォールが設定されました。ファイアウォールに関してこれ以上の設定は必要ありません。

SSHを使用している場合、インストールする必要があるパッケージがあり、ユーザーが間違ったSSHパスワードを試行し続けた場合にサーバーへの接続を自動的にブロックします。これは、SSHパスワードがブルートフォースされるのを防ぐのに非常に役立ちます。パッケージをインストールするには、次のコマンドを使用します。

apt-get install fail2ban

Fail2banは、パスワードの入力に数回失敗しただけで人々のアクセスをブロックするようにすでに構成されているため、構成する必要はありません。これで、サーバーは起動時よりも大幅に安全になります。

次に、「画面」をインストールする必要があります。これにより、サーバーからログアウトした場合でも、基本的にコマンドを継続的に実行できます。これは、特にSSHでサーバーを制御している場合に、GarryのModサーバーを長期間継続して実行し続けるために不可欠です。「画面」をインストールするには、次のように入力します。

apt-get install screen

インストールが完了したら、次のコマンドを実行します。

screen

免責事項が画面に表示されます。続行するにはEnterキーを押してください。screenコンソールの開始画面に入力すると、仮想コンソールの内部で作業できます。SSHから切断するか、ログアウトすると、この仮想コンソールは、その横にコマンドを置いて実行し続けます(GarryのModサーバーはLinuxコマンドとして実行されるため、これは、画面を使用する必要がある場所です)。

ここで、Steam、Garry's Mod、および必要なファイルをインストールする前に、専用のアカウントが必要です。私はそれを呼ぶことを勧めsteamます。新しいアカウントを作成するには、次のように入力します。

adduser steam

すべてを安全に保つには、rootパスワードとは異なるパスワードを使用する必要があります。このパスワードを使用することはほとんどありません。氏名、電話番号など、アカウントに関するいくつかの質問が表示されます。これらはすべて空白のままにします。

次に、必要なファイルをすべてダウンロードしている間、「steam」アカウントにログインしたいと思います。これは、「スチーム」がこれらのファイルに対するすべての所有権を取得し、Linux権限が構成なしで正しく設定されていることを意味します。rootとしてSteamをインストールし、それらの権限を変更しようとすると、権限を正しく取得することがはるかに難しくなります。Steamとしてログインするには、次のように入力します。

su steam

Steamソフトウェアを保存するためのディレクトリ(フォルダ)が必要です。ディレクトリを作成するには、次のコマンドを使用します。

mkdir ~/Steam

今、私たちはそのディレクトリの中に居たいです。これを現在の作業ディレクトリにするには、次のように入力します。

cd ~/Steam

次のように入力して、Steamソフトウェアをダウンロードする必要があります。

wget http://media.steampowered.com/client/steamcmd_linux.tar.gz

ここで、次のように解凍してインストールする必要があります。

tar -xvzf steamcmd_linux.tar.gz

64ビットOSを使用している場合、Steamを実行するには32ビットライブラリをインストールする必要があります。

apt-get install lib32stdc++6
apt-get install lib32gcc1

次のコマンドを実行してSteamを開き、「anonymous」(誰でもサーバーからフリーソフトウェアをダウンロードするために使用できるSteamアカウント)としてログインし、Garry's Modサーバーをgmoddsフォルダー( Steamアカウントのホームディレクトリ)。

./steamcmd.sh +login anonymous +force_install_dir ../gmodds +app_update 4020 validate +quit

このコマンドは長期間続くと予想できますが、その進行状況を監視できます。このコマンドが失敗する可能性があります。Steamサーバーには、ダウンロードが失敗する(またはまったく開始されない)原因となる小さな問題がよくあります。これが発生した場合は、単に再起動してください。

このコマンドが完了すると、Garry's Modサーバーの作業用コピーが作成されますが、ほとんどのGarry's ModコンテンツにはCounterStrike:Source(略してCS:S)がインストールされている必要があります。CS:Sをインストールするには、次のコマンドを実行します。

./steamcmd.sh +login anonymous +force_install_dir ../cssds +app_update 232330 validate +quit

このコマンドもしばらく時間がかかります。

Garry's ModとCounterStrikeをインストールしたら、構成ファイルを使用してそれらをリンクする必要があります。そのためには、次のファイルをこのコマンドで編集する必要があります。

nano /home/steam/gmodds/garrysmod/cfg/mount.cfg

「cstrike」を含む行では、行の先頭にある2つのスラッシュ(//)を削除してから、行のパス全体(で始まるC:/)を置き換える必要があります。行のその部分を次のように置き換える必要があります。

/home/steam/cssds/cstrike

行全体は次のようになります。

"cstrike"       "/home/steam/cssds/cstrike"

cstrikeという単語の前にタブスペースが必要です。また、行のどこにもダブルスラッシュ(//)を含めないでください。完了したら、このファイルをCtrl + X、次にYで保存できます。これにより、Garry's ModにCounterStrikeを見つけて使用できるようになります。

これで、基本的なGarry's Modサーバーがインストールされました。それを実行するには、次のコマンドで正しいディレクトリにいることを確認します。

cd /home/steam/gmodds/

次に、次のコマンドを実行します。

./srcds_run -game garrysmod +gamemode terrortown +maxplayers 16 +map cs_office

起動したら、GarryのMod Console(サーバー端末ではない)に次のように入力して参加できるはずです。

connect IP_ADDRESS

IP_ADDRESSサーバーのIPアドレスに置き換えます。IPアドレスがわからない場合は、サーバーのターミナルに次のように入力すると、そのアドレスがわかります。

url -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'

あなたのサーバー上で許可される選手の数を変更したい場合は、Ctrl + Cを実行して、サーバーを停止し、再起動コマンドを実行し、それに置き換わるものmaxplayers 16maxplayers x(変更xしたいプレイヤーの数)。デフォルトのマップ(最初に再生されるマップ)を変更するには、目的のマップcs_officeの名前に置き換えます。最後に、ゲームモードを変更するには、目的のゲームモードに置き換えterrortownます。Garry's Modには、terrortownデフォルトで(Terrorist in Trouble in Terrorist Town)とSandbox のみが付属しています。

サーバーをさらに構成するために、編集可能な構成ファイルがあります。このファイルの各行は、構成変数(cVar)と呼ばれます。次のコマンドを実行してファイルを編集します。

nano /home/steam/gmodds/garrysmod/cfg/server.cfg

次の値は変更できます。それぞれの値について簡単に説明します。

hostname "server name"
sv_downloadurl "http://example.com/files/"
sv_allowupload 1
sv_password "secret password"
sv_timeout 60

ホスト名の値を変更すると、サーバーの名前を変更できます。変更しない限り、「Garry's Mod」と呼ばれます。たとえば、これはサーバーを「My cool server」と呼びます。

hostname "My cool server"

ファイルには変数をいくつでも追加できます。新しい変数はそれぞれ新しい行が必要です。

sv_downloadurl変数は、カスタムサーバーコンテンツがからダウンロードされた場所を選択することができます。カスタムコンテンツには、Garryのmodマップ、サウンド、アドオン、およびテクスチャが含まれます。デフォルトでは、Garry's Modはサーバーからのデータのダウンロードを非常に遅い速度でのみ許可するため、データをフルスピードでダウンロードできるURLを提供する必要があります。指定するURLは、「garrysmod」フォルダのクローンである必要があるため、すべてのファイルを利用できます。

sv_allowuploadcanには0または1の2つの選択肢があります。これは、ユーザーがコンテンツをサーバーにアップロードできるようにするかどうかを指定します。これはスプレー(プレーヤーが壁にスプレーできるグラフィック)にのみ使用され、セキュリティ上の問題を引き起こす可能性があります。スプレーが頻繁に要求されるため、「1」を使用するとプレーヤーは満足しますが、「0」を使用するとサーバーの安全性が高まります。

sv passwordサーバーのパスワードを選択できます。誰かが参加するときはいつでも、このパスワードの入力を求められ、パスワードがないと参加できません。

sv_timeout接続を失った人をキックする前にサーバーが待機する秒数です。サーバーは接続が回復するまで自動的に待機しますが、その間、プレーヤーは静止したように見えます。これは60秒以下にするのが最善です。これらの設定を変更したら、サーバーの再起動が必要です。

アドオンをインストールして、ゲームに機能を追加することもできます。一部のアドオンは特定の方法でインストールする必要があるため、常にそのサイトの指示を読む必要がありますが、これはほとんどのアドオンをダウンロードしてインストールする方法です。

cd /home/steam/gmodds/garrysmod/addons/
wget http://example.com/addon.zip
unzip addon.zip

http://example.com/addon.zipアドオンが配置されている場所のURLに置き換えます。またaddon.zip、アドオンのzipファイルの名前に変更する必要があります。これでアドオンがダウンロードされ、解凍されました。次のように、zipファイルを削除してスペースを節約できます。

rm addon.zip

ここでも、addon.zipzipファイルの実際の名前に置き換えます。

サーバーが現在実行中の場合は、Ctrl + Cを使用してサーバーを再起動し、起動コマンドを再発行する必要があります。キーボードの上矢印を押すと、最後に実行したコマンドを自動的に挿入できます。

SSH接続が失われた場合、再接続するときにを発行する必要がscreen -r commandあります。これにより、前回の場所(ゲームコンソール)から再開できます。



Leave a Comment

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

Ubuntu 14.10へのMcMyAdminのインストール

Ubuntu 14.10へのMcMyAdminのインストール

McMyAdminは、サーバーの管理に使用されるMinecraftサーバーコントロールパネルです。McMyAdminは無料ですが、複数のエディションがあり、一部はパイです

Ubuntu 14 64ビットでのTeamspeak 3サーバーの作成

Ubuntu 14 64ビットでのTeamspeak 3サーバーの作成

概要開発チームとの大規模なコラボレーションプロジェクトで作業しているか、最新のロールプレイングゲームでボスを殺しているかに関係なく、

UbuntuでLeft 4 Dead 2 Serverをセットアップする方法

UbuntuでLeft 4 Dead 2 Serverをセットアップする方法

このチュートリアルでは、UbuntuでLeft 4 Dead 2サーバーをセットアップする方法を学習します。このガイドは、Ubuntuサーバー15.10でテストされています。前提条件の更新th

CentOS 7にJust Cause 2(JC2-MP)サーバーをインストールする方法

CentOS 7にJust Cause 2(JC2-MP)サーバーをインストールする方法

このチュートリアルでは、Just Cause 2マルチプレイヤーサーバーのセットアップ方法をよく学びます。前提条件開始する前に、システムが完全に更新されていることを確認してください

CentOS 7にStarbound Serverをインストールする方法

CentOS 7にStarbound Serverをインストールする方法

別のシステムを使用していますか?このチュートリアルでは、CentOS 7でStarboundサーバーをセットアップする方法を説明します。前提条件このゲームを所有している必要があります。

CentOS 7にPufferPanel(無料のMinecraftコントロールパネル)をインストールする方法

CentOS 7にPufferPanel(無料のMinecraftコントロールパネル)をインストールする方法

はじめにこのチュートリアルでは、Vultr VPSにPufferPanelをインストールしてください。PufferPanelは、オープンソースで自由に使用できるコントロールパネルで、あなたを管理します

Linux上のTShockを備えたTerrariaサーバー

Linux上のTShockを備えたTerrariaサーバー

Terrariaは、採掘、構築、および戦闘に基づいたMMORPGです。Minecraftの2Dバージョンだと言う人もいますが、Terrariaには正義がありません

Ubuntu 14でサーバーを死ぬために7日間セットアップする

Ubuntu 14でサーバーを死ぬために7日間セットアップする

このガイドでは、Ubuntuで独自の7日間toダイサーバー(7D2D)をセットアップする方法を学習します。このゲームはまだ早期アクセスであり、その

UbuntuでPaperSpigotをセットアップする

UbuntuでPaperSpigotをセットアップする

PaperSpigotは、ゲームプレイと力学の不整合を修正することを目的としたSpigotの高性能フォークです。紙には多数のユニークな機能と変更が含まれています

Ubuntu 14.04 x64でのRagnarok Online Serverのセットアップ

Ubuntu 14.04 x64でのRagnarok Online Serverのセットアップ

この記事では、Ubuntu 14.04 x64にRagnarok Online Serverをセットアップします。rootまたはスーパーユーザー権限を持つユーザーとしてログインできます。それ

CentOS 6にUnturned 2.2.5をインストールする方法

CentOS 6にUnturned 2.2.5をインストールする方法

このガイドでは、CentOS 6を実行するVultr VPSにUnturned 2.2.5サーバーをセットアップする方法を学習します。注:これは、Unturnedを編集したバージョンで、

Ubuntu 16.10でTekkit Classicサーバーをセットアップする方法

Ubuntu 16.10でTekkit Classicサーバーをセットアップする方法

別のシステムを使用していますか?Tekkit Classicとは何ですか?Tekkit Classicは、誰もが知っていて愛しているゲーム用のmodpackです。マインクラフト。いくつかのverが含まれています

CentOS 6でMinecraft PEサーバーをセットアップする

CentOS 6でMinecraft PEサーバーをセットアップする

この記事では、CentOS 6でMinecraft Pocket Editionサーバーをセットアップする方法を説明します。MinecraftPEサーバーのセットアップは非常に簡単です。まず、インストール

Teamspeak 3サーバーをUbuntu 16.04 64ビットにインストールする方法

Teamspeak 3サーバーをUbuntu 16.04 64ビットにインストールする方法

別のシステムを使用していますか?概要Discord / Skypeの使用にうんざりしていませんか?サーバーを完全に制御できないことにうんざりしていませんか?あるいは、それが不足しているためか

CentOS 7にARK Survival Evolved(ArkSE)をインストールする方法

CentOS 7にARK Survival Evolved(ArkSE)をインストールする方法

このチュートリアルでは、CentOS 7でARK Survivalサーバーをセットアップする方法をよく学びます。前提条件ARKには大量のメモリが必要です。私はVの使用をお勧めします

Counter-Strikeをインストールする方法:Windows上のグローバル攻撃サーバー

Counter-Strikeをインストールする方法:Windows上のグローバル攻撃サーバー

はじめにこのガイドでは、WindowsにCounter-Strike:Global Offensiveサーバーをインストールする方法を学習します。前提条件始める前に、youl

Ubuntu 16.04にUnturned 2.2.5をインストールする方法

Ubuntu 16.04にUnturned 2.2.5をインストールする方法

別のシステムを使用していますか?はじめにこのガイドでは、Ubuntu 16.04を実行するVultr VPSにUnturned 2.2.5サーバーをセットアップする方法を学習します。注:ティ

WindowsへのReflexサーバーのインストール

WindowsへのReflexサーバーのインストール

はじめにReflexは、Turbo Pixel Studiosによる新進気鋭の競技アリーナFPSです。このチュートリアルでは、独自のReflexサーバーを

Ubuntu 18.04でMinecraftサーバーをセットアップする方法

Ubuntu 18.04でMinecraftサーバーをセットアップする方法

Minecraftは今でも世界で最も人気のあるゲームの1つです。ゲームをプレイする場合、おそらくサーバーで常にプレイしているでしょう。このガイドは、ヨーヨーを教えることを目的としています

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。