Ausgangslage
Um Server besser vor Cheatern zu schützen, hat Psb eine Master-Ban-List (MBL) eingeführt. Auf dieser Liste werden Cheater erfaßt. Um die Liste nicht manuell täglich einem Update unterziehen zu müssen, wurde das AMBL-Tool entwickelt. Das AMBL-Tool nimmt zudem andere Punkbustereinstellungen vor (CVAR-Checks, MD5Tool-Queries etc.).
Voraussetzungen
CoD Server V1.5 (Linux)
funktionierender aktueller Punkbuster
Zugang zu crontabs
ftp-Zugang zum Gameserver
shell-Zugang (z.B. Per ssh)
freigeschalteter Account bei psb (http://www.punksbusted.com/cgi-bin/membership/new.cgi)
Die einzelnen Schritte
1. In die Datei pbsv.cfg muß folgender Eintrag enthalten sein:
- Code: Alles auswählen
pb_sv_load pbsvlog.cfg // Loads PsB Repository settings
2. Es muß im pb-Verzeichnis (das selbe in dem auch schon die pvsv.cfg zu finden ist) eine Datei namens pbsvlog.cfg vorhanden sein. Der Inhalt muß so aussehen:
- Code: Alles auswählen
;Call of Duty PB Repository Commands
pb_sv_logaddr rep.punksbusted.com // Repository IP Address
pb_sv_logport 24407 // Repository Port
pb_sv_loguser ClanID // Enter your PsB ClanID (e.g. 0123)
Die erste Zeile ist dabei allerdings nur ein Kommentar.
3. Server neustarten (evtl. reicht auch ein pb_sv_restart).
4. Der Gameserver läuft unter einem Benutzer, der relativ wenig Rechte hat (Sollte das nicht so sein, dann sputet Euch und macht dies so!). In dieser Anleitung heißt dieser Benutzer gserver und ist in der Gruppe gserver. Diesen Benutzer können wir auch für das AMBL-Tool verwenden. Loggt Euch unter diesem Benutzer in der Shell ein.
5. Erstellt einen Ordner für das AMBL-Tool. Nehmen wir an, der Server liegt im Verzeichnis /home/gserver/cod/. Ich würde dann empfehlen, das AMBL-Tool in /home/gserver/ambl/ zu legen. Mit wget dann das AMBL-Tool ziehen und auspacken. Das Verzeichnis in einen schöneren Namen umbenennen.
- Code: Alles auswählen
# cd /home/gserver/
# wget http://www.punksbusted.com/downloads/mblupdt/autombl_gui_console_3.0.tar.gz
# tar xzvf autombl_gui_console_3.0.tar.gz
# mv autombl_gui_console_3.0 ambl
# cd ambl
Anmerkungen: Das AMBL-Tool gibt es bei
Die # vor den Kommandos ist eine Sicherheitsmaßnahme, damit niemand Befehle absetzt, obwohl er sich nicht auskennt. Wenn ihr nicht wißt, was die # bedeutet, dann laßt besser einen Fachmann ran.
http://www.punksbusted.com/.
6. Nun muß in dem ambl-Verzeichnis eine Config angelegt werden. Der Name der Config ist autombl.conf.
- Code: Alles auswählen
Settings]
ScheduleFrequency=0
NextDate=18.10.2005 18:15:43
ServerCount=1
PunksUsername=1234
PunksPassword=meinpw
[Server0]
ServerName=*^3!nF^7*^3Cl^7a^3n ^4Public Server ^7www.infclan.net
GameType=2
Version=0
UpdateMethod=0
FTPIP=12.12.12.12
FTPPort=21
FTPUsername=gserver
FTPPassword=myftppw
FTPRemoteFolder=/.callofduty/pb/
FTPPASVMode=0
LocalFolder=/home/gserver/.callofduty/pb/
RCONIP=12.12.12.12
RCONPort=27010
RCONPassword=rconpw
MD5AddToTop=1
EnableBandwidthLimiter=0
[Position]
X=0
Y=0
W=546
H=412
Anmerkungen:
PunksUsername=1234: 1234 ist Eure Clan-ID. Die bekommt man aber erst, wenn der Account von einem Admin freigeschaltet wurde. Geht mal von mindestens 24h aus, bis Euer Account auf ACTIVE steht.
PB-Ordner: Der PB-Ordner befindet sich bei CoD immer im Home-Verzeichnis des ausführenden Nutzers, es sei denn man gibt in der Startzeile des Servers mit +set fs_homepath und +set fs_basepath andere Pfade an. Ich würde die Pfade grundsätzlich in das Gameserververzeichnis legen (+set fs_homepath . +set fs_basepath .).
Der FTP-Zugang muß funktionieren! Prüft Euere Daten mit einem FTP-Client ab. Der FTP-Zugang braucht im PB-Ordner Schreibrechte.
7. Erstellt Euch im ambl-Ordner ein kleines Skript zum Starten des AMBL-Tools.
- Code: Alles auswählen
# vi ambl.sh
# chmod 0700 ambl.sh
Der Inhalt sollte so aussehen:
- Code: Alles auswählen
#!/bin/sh
start=`date '+%H:%M on %d/%m/%y'`
echo "AMBL server started @ $start" >>/daten/gs/ambl/ambl.log
cd /daten/gs/ambl
./automblc -f -m
Anmerkungen:
Anstatt vi könnt ihr auch einen anderen Editor verwenden, der auf Eurem System installiert ist (z.B.: pico, joe, e3, red). vi ist schwer zu bedienen, aber für einen echten Linuxianer einfach ein Grundboardmittel. Eine lesenswerte Einführung
8. Prüft Euer AMBL-Tool, sobald der Account bei Psb auf ACTIVE steht. Den Status seht ihr unter den Admin-Tools, wenn Ihr Euch da einloggt.
- Code: Alles auswählen
# /home/gserver/ambl/ambl.sh
Wenn Ihr Euch im ambl-Verzeichnis befindet, dann reicht auch ein
- Code: Alles auswählen
# ./ambl.sh
Die Ausgabe sollte in etwa so aussehen:
- Code: Alles auswählen
./ambl.sh
This module must be distributed under the terms of the GNU General Public License (GPL), version 2. A copy of this license can be found at:http://www.borland.com/kylix/gpl.html.
[26.10.2005 17:55:09] *******************************************************************************
[26.10.2005 17:55:09] *******************************************************************************
[26.10.2005 17:55:09] FULL BAN LIST UPDATE STARTING
[26.10.2005 17:55:09] *******************************************************************************
[26.10.2005 17:55:09] *******************************************************************************
[26.10.2005 17:55:09]
[26.10.2005 17:55:10] Processing *^3!nF^7*^3Cl^7a^3n ^4Public Server ^7www.infclan.net
[26.10.2005 17:55:13] Full ban list received
[26.10.2005 17:55:13] Retrieved 10124 bans from *^3!nF^7*^3Cl^7a^3n ^4Public Server ^7www.infclan.net
[26.10.2005 17:56:56] *^3!nF^7*^3Cl^7a^3n ^4Public Server ^7www.infclan.net ban list processed
[26.10.2005 17:56:56] 6 bans added
[26.10.2005 17:56:56] Ban list uploaded to *^3!nF^7*^3Cl^7a^3n ^4Public Server ^7www.infclan.net
[26.10.2005 17:56:56] Performing restart of *^3!nF^7*^3Cl^7a^3n ^4Public Server ^7www.infclan.net PB
[26.10.2005 17:57:07] Reply from pb_sv_banempty = No Reply - Perform Manual Check
[26.10.2005 17:57:17] Reply from default pb_sv_banload = No Reply - Perform Manual Check
[26.10.2005 17:57:17]
[26.10.2005 17:57:17] *******************************************************************************
[26.10.2005 17:57:17] *******************************************************************************
[26.10.2005 17:57:17] FULL BAN LIST UPDATE COMPLETED
[26.10.2005 17:57:17] *******************************************************************************
[26.10.2005 17:57:17] *******************************************************************************
*^3!nF^7*^3Cl^7a^3n ^4Public Server ^7www.infclan.net MD5 Tool Update:- No file checks added! Your server is up to date.
9. Jetzt müßt Ihr noch dem Benutzer gserver einen Crontab verpassen, damit der Server regelmäßig seine Updates bekommt.
- Code: Alles auswählen
# crontab -e
Der Crontab sollte dann in etwa so aussehen:
- Code: Alles auswählen
38 5 * * * /home/gserver/ambl/ambl.sh > /dev/null 2>&1
Euer Server sollte jetzt also streamen. Es ist geschafft!
Bei Fehlern und Anregungen würde ich mich über eine PN oder eine eMail freuen.
