「自由時間戦争」またはBF2サーバー+オフィスの統計

良い一日Habraコミュニティ!

今日は、BattleField 2ゲームサーバーをインストールして構成し、ローカルプレーヤーの統計情報を関連付ける方法を説明します。





サーバー:

HP ProLiant ML350 G5

インテル®Xeon®5160

8 Gb RAM ECC

OS Ubuntu 12.04 LTS(GNU / Linux 3.2.0-23-generic x86_64)



ここに私の目を引いたそのような無料のマシンがあります。 構成を見て、Webサーバー、データベース、およびそれに応じてゲームサーバーを1台のマシンで処理することにしました。



OSのインストールについては説明しません。必要なパッケージから始めます。

Webサーバー、データベース、およびWebサーバーのバインディングを機能させるには、Apache、MySQL、PHP、および統計が必要です。apacheモジュールはASMスクリプトの実行をサポートしています。



便宜上、サーバー部分のすべてをシステムのルートにある別のディレクトリに保存します。

sudo mkdir /server cd /server sudo mkdir site sudo mkdir bf2
      
      





Webサーバー、PHP、MySQLのインストール


それで、インストールを始めましょう:

 sudo apt-get install apache2 apache2-mpm-prefork apache2-utils apache2-suexec libapache-asp-perl php5 php5-mysql libapache2-mod-php5 php-pear mysql-server mysql-client libmysqlclient15-dev
      
      





*インストール中に、MySQLサーバーはパスワードの入力を求めます。



仮想ホストをセットアップします。


現時点では、完全に機能するWebサーバーを取得する必要があります。 ローカルネットワーク上のコンピューターから任意のブラウザーを介してサーバーのIPアドレスにアクセスして確認します。 画面に、すべてが正常に機能する場合、 「It、works!」という碑文が表示されます。



仮想ホスト構成ファイルを変更します。

 sudo nano /etc/apache2/sites-available/default
      
      





ファイルの内容を消去し、新しい仮想ホストを挿入します。

 <VirtualHost .IP.:80> ServerAdmin somemail@some.ru ServerName .IP. ServerAlias .IP. DocumentRoot /server/site ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ </VirtualHost>
      
      





これで、サイトのあるフォルダーは/server/site



ます。



BattleField 2サーバーをインストールして構成する


この段階では、問題がありました=) EAのサイトで戦闘のサーバー部分を見つけることができなかったため、 bf2-linuxded-1.5.3153.0-installer.shファイルをインターネットで探し回る必要がありました。



bf2-linuxded-1.5.3153.0-installerファイルをダウンロードします。

 sudo wget ///bf2-linuxded-1.5.3153.0-installer.sh
      
      





ダウンロードが完了すると、インストールは次のようになります。

 sudo chmod +x bf2-linuxded-1.5.3153.0-installer.sh sudo ./bf2-linuxded-1.5.3153.0-installer.sh
      
      





インストール後、サーバー構成を編集します。

 sudo nano /server/bf2/mods/bf2/settings/serversettings.con
      
      





構成ファイルのおおよその内容とそれに必要な変更:

 sv.serverName "" //  sv.password "" //   sv.internet 1 // 1,     . sv.serverIP "XX.XX.XX.XX" //  sv.serverPort 16567 //      sv.welcomeMessage "" //  sv.punkBuster 1 // punkBuster sv.ticketRatio 100 // 100       sv.roundsPerMap 3 //   sv.timeLimit 1800 // , 1800  = 30  sv.scoreLimit 0 //    sv.autoBalanceTeam 1 //  sv.useGlobalRank 1 sv.useGlobalUnlocks 1 //  . sv.friendlyFireWithMines 1 //   
      
      





それは基本的にすべてです...起動する準備ができました!

これで、サーバーを起動して再生を開始できます。 しかし、ランクとプレーヤーの完全な統計が必要な場合は、続きを読んでください...



サーバーに統計をインストールする


統計については、 www.bf2statistics.comからダウンロードできるスクリプトを使用できます。

BF2Statistics 1.5.1ファイルをダウンロードする必要があります(必要なのは、サイトに登録してファイルにアクセスすることだけです)。

アーカイブコンテンツ-

クライアントファイル

サーバーファイル

Webファイル



最も単純なものから始めましょう。

データベースのセットアップ。

 mysql -u root -p CREATE DATABASE `bf2stats` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
      
      





ベースの準備ができました!



Pythonパーツのセットアップ


サーバーファイルフォルダーから、 サーバーのフォルダー(/ server / bf2)にコンテンツをコピーし、それぞれファイルを置き換えます。



ファイル/server/bf2/python/bf2/BF2StatisticsConfig.pyの編集

 sudo nano /server/bf2/python/bf2/BF2StatisticsConfig.py =========================================================== # ------------------------------------------------------------------------------ # Backend Web Server # ------------------------------------------------------------------------------ http_backend_addr = '.IP.' http_backend_port = 80 http_backend_asp = '/ASP/bf2statistics.php' # ------------------------------------------------------------------------------ # Player Manager # ------------------------------------------------------------------------------ pm_backend_pid_manager = 1 pm_local_pid_txt_file = 'python/bf2/pid.txt' # Relative from BF2 base folder pm_ai_player_addr = '.IP.' # Not recommended to change
      
      





保存します。



ASPセットアップ




ASPフォルダーと、 bf2scloneディレクトリーのすべてのファイルを、Webファイルディレクトリーからサイト(/ server / site)のディレクトリーにコピーします。これは、FTPサーバーとmcファイルマネージャーを使用して行いました。



権利で急上昇しないように、/ server / siteフォルダーにアクセス権777を設定します。

 sudo chmod 777 -R /server/site
      
      





セキュリティが重要な場合、サーバーに必要な777権限を持つファイルのリストは次のとおりです。

/ASP/_config.php

/ASP/_config.php.bak

/ Asp / _backup

/ ASP /ログ

/ ASP /ログ/ _processed



統計のASP部分を構成します。

/server/site/sys-games/ASP/system/config/config.phpの編集

 sudo nano /server/site/sys-games/ASP/system/config/config.php =============================================================== $db_host = '.IP.'; #    $db_name = 'bf2stats'; #    $db_user = 'root'; #    $db_pass = 'my_pass'; #    $admin_user = 'admin'; #    $admin_pass = 'admin_password'; #    $admin_hosts = array('127.0.0.1','.IP./'); # IP   IP       Web- $stats_lan_override = '.IP.'; $stats_local_pids = array('LocalPlayer01','.IP.','LocalPlayer02','.IP.'); $game_hosts = array('127.0.0.1','.IP.','.IP./24'); # IP-         .     .
      
      





次に、ブラウザを開き、アドレスに移動します .ip./ASP



.ip./ASP



。 管理パネルが開き、構成ファイルの編集時に入力した資格情報が表示されます。 左側のメニューで[ DBのインストール ]をクリックします

データベースをインストールすると、合格したDBテストに関するレポートが表示されます。 すべてが正常である場合、各アイテムを渡すことは値Passedになります。

さらに、左側のメニュー「システム=>構成の編集」に移動すると、サーバー構成をより詳細に検討できます。



Webストラッピングの構成


次に、ブラウザを開き、アドレスに移動します .ip.



.ip.



。 Webサーバー統計サーバーのインストールページが開きます。インストールスクリプトの指示に従ってください。

インストールが正常に完了したら、構成バインディングファイルを編集できます。

 sudo nano /server/site/config.inc.php ====================================================== $DBIP = 'localhost'; //    $DBNAME = 'bf2stats'; //    $DBLOGIN = 'root'; //    $DBPASSWORD = ''; //    $TITLE = ''; //  
      
      







この段階で、統計のインストールが完了します。 いつものように、大きなファイルを受け取り、「船の状態に合わせた機関車」を仕上げます...



ファイルを操作する


サーバーがキーの有効性をチェックしないように:

iptablesパッケージをインストールします。

 sudo apt-get install iptables
      
      





次に、「ネットワークに接続されているとき」の構成にポートブロッキングを含む次の行を追加しました。

 sudo nano /etc/network/if-up.d/upstart iptables -A INPUT -m udp -p udp --sport 29910 -s 0/0 -j DROP iptables -A INPUT -m udp -p udp --sport 139 -s 0/0 -j DROP iptables -A INPUT -m tcp -p tcp --sport 29910 -s 0/0 -j DROP iptables -A INPUT -m tcp -p tcp --sport 1433 -s 0/0 -j DROP iptables -A INPUT -m tcp -p tcp --sport 1434 -s 0/0 -j DROP iptables -A INPUT -m tcp -p tcp --sport 139 -s 0/0 -j DROP
      
      







カードの変更:

サーバー上のカードを変更するには、ファイル/server/bf2/mods/bf2/settings/maplist.conを編集する必要があります

 sudo nano /server/bf2/mods/bf2/settings/maplist.con ===================================================== //mapList.append _ _ _ mapList.append mashtuur_city gpm_cq 16 mapList.append road_to_jalalabad gpm_cq 16 mapList.append sharqi_peninsula gpm_cq 16
      
      







ゲームのクライアント側:

ドメインのセキュリティポリシーでは、bf2statistic.comサイトで提供されているvbsスクリプトを使用できません。 だから私は反対に行きました。



folder%SystemRoot%/ Drivers / etcで、行を追加したhosts.ics ファイルを作成しました: .IP. bf2web.gamespy.com





この行により、ゲームをサーバーにリダイレクトできます。



サーバー起動


すべてだと思います。 サーバーを起動できます:

 cd /server/bf2 ./start.sh
      
      





またはスクリーンを通して

 sudo screen cd /server/bf2 ./start.sh
      
      





キーの組み合わせCtrl + Aで画面からデタッチし、Dを押します。



この記事は完了しました。質問や問題がある場合は、コメントでご相談ください。



UPD1 :テキストのタイプミスを修正。



All Articles