You are on page 1of 28

TekBase

Administrator Handbuch
by TekLab.de – Christian Neumann
Inhaltsverzeichnis
Vorwort ................................................................................................................................................... 5
1. Kapitel - Installation Webserver .......................................................................................................... 6
I. Upload der TekBase Version ............................................................................................................ 6
II. Ioncube installieren ......................................................................................................................... 6
Variante A ........................................................................................................................................ 6
Variante B ........................................................................................................................................ 6
III. Datenbank einrichten ..................................................................................................................... 7
IV. LibSSH und PECL SSH installieren ................................................................................................... 7
Vorbereitung ................................................................................................................................... 7
Suse ................................................................................................................................................. 8
Debian ............................................................................................................................................. 8
Libssh ............................................................................................................................................... 8
PECL SSH .......................................................................................................................................... 9
V. Qstat installieren ............................................................................................................................. 9
VI. Munin installieren und einrichten................................................................................................ 10
Suse ............................................................................................................................................... 10
Debian ........................................................................................................................................... 10
Munin einrichten ........................................................................................................................... 10
2. Kapitel - Installation Rootserver ........................................................................................................ 12
I. Unser erster Rootserver ................................................................................................................. 12
Installskript .................................................................................................................................... 12
Eigene SSH Keys erstellen.............................................................................................................. 12
Unser eigenes Installskript ............................................................................................................ 13
Suse ............................................................................................................................................... 13
Debian ........................................................................................................................................... 13
Munin-node einrichten ................................................................................................................. 13
II. Weitere Rootserver ....................................................................................................................... 14
Installskript .................................................................................................................................... 14
Suse ............................................................................................................................................... 14
Debian ........................................................................................................................................... 14
Munin-node einrichten ................................................................................................................. 14
III. Fehler vermeiden und Sicherheit erhöhen .................................................................................. 15
FTP Server richtig einstellen .......................................................................................................... 15
SSH Zugriff für User verweigern .................................................................................................... 15
Sudo überprüfen ........................................................................................................................... 16
3. Kapitel - Das Webinterface ................................................................................................................ 17
I. Von A bis Z der Schnelldurchlauf .................................................................................................... 17
Der erste Login .............................................................................................................................. 17
Einstellungen und Lizenzschlüssel ................................................................................................. 18
Administrator Passwort ändern .................................................................................................... 19
Den ersten Rootserver eintragen .................................................................................................. 20
Email Templates anlegen .............................................................................................................. 20
Der erste Kunde ............................................................................................................................. 22
Des Kunden erster Gameserver .................................................................................................... 22
FiBu einrichten............................................................................................................................... 23
Einen Artikel anlegen..................................................................................................................... 24
Kundenpaket mit Artikel füllen ..................................................................................................... 25
Die erste Rechnung erstellen ........................................................................................................ 25
Geschäftsvorfälle verwalten .......................................................................................................... 26
Bezahlte Rechnungen verbuchen .................................................................................................. 27
II. Die einzelnen Module und ihre Funktionen .................................................................................. 28
III. Fehlermeldungen und Lösungsansetze ........................................................................................ 28
Vorwort

Danke, dass sie sich für TekLab entschieden haben. Wir sind sicher, dass sie diesen Schritt nicht
bereuen werden. In dieser Anleitung gehen wir nun Schritt für Schritt die Installation und
Handhabung der einzelnen Bereiche im Webinterface durch und hoffen ihnen hier ein möglichst
komplettes und anschauliches Handbuch geschrieben zu haben.

Sollten dennoch Fragen oder Probleme auftauchen so helfen wir ihnen gerne. Sie können dazu unser
Forum, Email, Telefon oder auch unseren LiveSupport nutzen. Sie sehen also, dass wir sie auch nach
dem Kauf nicht im Regen stehen lassen.

Außerdem würden wir uns über ein positives oder auch negatives Feedback in unserem Forum
freuen. Gerne können sie dort auch neue Anregungen und Vorschläge posten, die wir dann in einem
unserer nächsten Updates einbauen werden.

In einer der nächsten Versionen entfällt das Installieren von Libssh, PECL SSH sowie das Erstellen der
Keys, da wir unseren eigenen Daemon einführen. Damit wird auch das von Hand updaten der Skripte,
sollten diese sich mal ändern, unnötig. Das Webinterface kann dann automatisch alle Rootserver mit
den neusten Skripten versorgen.
1. Kapitel - Installation Webserver

Die Installation der aktuellen TekBase Version ist einfacher als es sich angesichts dieser Anleitung
vermuten lässt und sollten wir Probleme haben so wissen wir, dass wir die Installation auch von
TekLab gegen ein geringes Entgelt durchführen lassen können oder uns Information im Forum oder
Live Support besorgen können.

I. Upload der TekBase Version


Wir beginnen als erstes damit, dass wir unsere aktuelle TekBase Version per FTP (CuteFTP ist ein
guter FTP Client) auf unseren Webserver kopieren. Sollte das hochladen problemlos geklappt haben
setzen wir die config.php und das /tmp Verzeichnis auf chmod 0777. Danach richten wir uns eine
neue Datenbank ein und schreiben uns die Zugangsdaten auf.

II. Ioncube installieren


Als nächstes haben wir die Wahl, ob wir den Ioncube Loader in unsere php.ini einbinden oder nicht.
Wir erläutern hier schnell beide Schritte. Aber vorher downloaden wir uns die aktuellste Version des
Ioncube Loaders.

32Bit Rootserver oder 64Bit Rootserver mit einer 32Bit Linux Version
http://www.teklab.de/downloads/ioncube_x86.tar

64Bit Rootserver mit einer 64Bit Linux Version


http://www.teklab.de/downloads/ioncube_x86-64.tar

Variante A
Die einfachste Möglichkeit Ioncube zu installieren besteht darin, dass wir die gedownloadete Datei
endpacken und das Ioncube Verzeichnis per FTP auf unseren Webserver kopieren (In das gleiche
Verzeichnis wo auch unser TekBase liegt!).

Variante B
Die andere Variante wäre, dass wir das endpackte Ioncube Verzeichnis auf unseren Webserver nach
/usr/local kopieren und danach einen Eintrag in der php.ini vornehmen, wie oben schon erwähnt.

Wir öffnen also unsere php.ini diese liegt bei Suse in /etc und bei Debian meist in /etc/php/apache2
nun begeben wir uns an das Ende der Datei und tragen folgendes ein:

zend_extension=/usr/local/ioncube/ioncube_loader_lin_x.x.so

Wichtig: Anstelle der x.x tragen sie bitte ihre PHP Version ein zum Beispiel 4.3, wenn sie ihre PHP
Version nicht wissen, dann rufen sie einfach die admin.php des vorhin hochgeladenen TekBase auf,
dort sollte eine Fehlermeldung mit der Angabe der richtigen Ioncube Loader Datei erscheinen.
Sollten sie auf ihren Root den Zend Optimizer installiert haben so muss die Ioncube Loader Zeile
vor Zend Optimizer Eintragungen stehen.
Nachdem wir die php.ini gespeichert haben starten wir unseren Apache Webserver mit folgendem
Befehl neu.

./etc/init.d/apache2 restart (oder apache restart für Apache 1.x)

III. Datenbank einrichten


Wir rufen nun die install.php von unserem TekBase auf und tragen dort die erforderlichen
Zugangsdaten für unsere Datenbank ein als Sitekey können wir hintereinander irgendwelche Zahlen
und Buchstaben eintragen dieser dient nur dazu, das von außen keine Manipulation erfolgen kann.

http://www.unsereurl.de/install/install.php

Jetzt müssen wir lediglich nur noch ein zwei Mal bestätigen und schon ist unsere Datenbank
eingerichtet. Wir setzen jetzt die config.php wieder auf chmod 0644 und löschen das install
Verzeichnis sowie die xxx-xxx.php Dateien im Hauptverzeichnis, denn dieses sind die Updater für
ältere Versionen.

IV. LibSSH und PECL SSH installieren


Wichtig: Diesen Abschnitt müssen sie nur befolgen, wenn sie den Lizenzschlüssel für ein
Gameserver oder Shoutcast Webinterface haben. Bei dem CMS können sie diesen Schritt getrost
überspringen.

Vorbereitung
Zuerst einmal müssen wir uns auf unserem Root einloggen. Nachdem dies getan wurde führen wir
einfach folgende Befehle aus:

cd /home
wget teklab.de/downloads/libssh2.tar.gz
wget teklab.de/downloads/ssh2.tgz

Jetzt müssen wir noch einige Programme installieren, damit es keine unschönen Fehlermeldungen
während der eigentlichen Installation gibt.

Folgendes wird benötigt und muss unter Umständen installiert werden:

autoconf
automake
gcc
m4
mod_php4-dev oder mod_php5-dev
openssl-dev
zlib-dev
Suse
Am einfachsten geht dies unter SUSE mit Yast, indem wir dort auf Software
installieren/deinstallieren klicken und danach mit ALT+F und der Funktion Suchen nach diesen
Paketen suchen. Für die mod_php4-dev bzw. mod_php5-dev geben wir einfach nur php ein und
suchen uns das passende Paket, denn es kann unter Umständen auch nur php4-dev heißen.

Debian
Für die Installation tippen wir einfach folgende Befehle ab:

apt-get update
apt-get install php4-dev (kann auch eine höhere Version sein)
apt-get install gcc
apt-get install g++
apt-get install zlib1g-dev (kann auch eine höhere Version sein)
apt-get install autoconf
apt-get install automake
apt-get install m4
apt-get install openssl
apt-get install libssl-dev

Libssh
Jetzt brauchen wir bei Suse und Debian nur noch folgenden Befehl ausführen um Libssh2 zu
installieren.

cd /home
tar -xzf libssh2.tar.gz
cd libssh2
./configure --prefix=/usr --with-openssl=/usr && make install

Sollte das nicht funktionieren können wir auch diesen Befehl nehmen:

./configure && make install

Danach sollte Libssh2 richtig installiert sein und am Ende der Ausgabe sollten keine Fehlermeldungen
stehen. Bei Fehlermeldungen sollte man sich immer die letzten Zeilen ansehen, dort steht meistens
schon die Lösung.

comp.c:39:18: zlib.h: No such file or directory


make[1]: *** [comp.o] Error 1
make[1]: Leaving directory `/home/libssh2-0.12/src'
make: *** [install] Error 1

Hier sieht man, dass das zlib-dev Paket nicht installiert wurde. Wenn wir die Installationsanleitung
befolgt hätten wäre dieser Fehler nicht passiert. Wir installieren also einfach wie unter dem
Abschnitt SuSE oder Debian beschrieben das zlib-dev Paket nach.
PECL SSH
Nachdem wir nun Libssh2 erfolgreich installiert haben müssen wir nur noch die SSH2 Funktion für
PHP bereitstellen und dies geschieht mit PECL SSH2. Wir gehen dabei wie folgt vor:

cd /home
wget teklab.de/downloads/ssh2.tgz
tar -xzf ssh2.tgz
cd /ssh2
phpize && ./configure --with-ssh2 && make install

Oder falls der Befehl nicht funktioniert nehmen wir diesen hier:

phpize && ./configure && make install

Sollten wir keine Fehlermeldungen erhalten haben, war alles richtig und wir machen weiter.
Normalerweise wird mit der make install Anweisung die erstellte ssh2.so direkt in das PHP Extension
Verzeichnis kopiert. Wir können dies aber sicherheitshalber nachprüfen. Der Pfad zu den Extension
lautet in der Regel /usr/lib/php/…/ssh2.so

Jetzt öffnen wir in /etc oder in /etc/php/apache2 die php.ini und Suchen nach dem Eintrag
extension= und tragen unter den schon angegebenen einfach folgende Zeile ein:

extension=ssh2.so

Wenn es keine extension= Zeilen gibt ist es nicht weiter schlimm, dann tragen die Zeile einfach nur
unterhalb der extension_dir Zeile ein. Danach speichern wir die php.ini ab und starten unseren
Apache neu.

./etc/init.d/apache2 restart

Jetzt sollte SSH2 als PHP Modul geladen werden und funktionieren. Wird später im Webinterface
SSH2 mit einem X angezeigt müssten wir die Installation noch einmal überprüfen, ob die ssh2.so
wirklich im angegebenen extensions_dir liegt.

V. Qstat installieren
Wichtig: Diesen Abschnitt müssen sie nur befolgen, wenn sie den Lizenzschlüssel für ein
Gameserver Webinterface haben. Bei dem CMS oder Shoutcast Webinterface können sie diesen
Schritt getrost überspringen.

Damit die online/offline Anzeige für die Spiele im Webinterface funktioniert benötigen wir noch
Qstat auf dem Webserver. Wir führen nacheinander folgende Befehle aus:

wget http://mesh.dl.sourceforge.net/sourceforge/qstat/qstat-2.11.tar.gz
tar –xzf qstat-2.11.tar
cd qstat-2.11
./configure && make
cp qstat /usr/bin
Damit unsere Abfrage dann später auch im Webinterface funktioniert gibt es drei Möglichkeiten. Die
erste wäre, wir haben Confixx oder Plesk auf unseren Webserver, dann kopieren wir die qstat Datei
nach /var/www/empty oder /srv/www/empty.

cp qstat /var/www/empty

Die zweite Möglichkeit ist, dass wir safe_mode_exec_dir = /usr/bin in der php.ini setzt, wenn
safe_mode in der php.ini auf on steht.

Die dritte Möglichkeit wäre dann, dass wir in der php.ini einfach safe_mode auf off setzen.

Die beiden letzten Lösungen erfordern ein neustarten unseres Apache Webservers. Dazu führen wir
folgenden Befehl aus:

./etc/init.d/apache2 restart (oder apache restart für Apache 1.x)

VI. Munin installieren und einrichten


Wichtig: Diesen Abschnitt müssen sie nur befolgen, wenn sie den Lizenzschlüssel für ein
Gameserver oder Shoutcast Webinterface haben. Bei dem CMS können sie diesen Schritt getrost
überspringen.

Mit Hilfe von Munin können wir uns Auswertungen unserer Rootserver ansehen, wie zum Beispiel die
Auslastung der CPU oder des Arbeitsspeichers. Munin ist nicht dringend erforderlich sondern nur
eine Art Addon. Da wir aber unbedingt diese Auswertungen haben möchten beginnen wir auch gleich
mit der Installation. Auch können wir natürlich jeden beliebigen Server als Statistikserver nehmen,
doch wir verwenden dazu unseren Webserver.

Suse
Hier müssen wir Munin als RPM Paket downloaden und installieren.

wget teklab.de/downloads/munin.rpm
rpm -i munin.rpm

Debian
Bei Debian können wir Munin ganz einfach über apt-get installieren.

apt-get install munin

Munin einrichten
Zum Schluss müssen wir noch in /etc/munin/munin.conf das html_dir Verzeichnis anpassen oder
belassen, dies gibt an, wo die Munin Auswertungen hin kopiert werden. Außerdem müssen wir noch
die Serverip des ersten Rootservers eingetragen, den wir in Kapitel 2 einrichten um uns ein hin und
her gehen zwischen den Roots zu ersparen.

[1]
address 123.123.123.12
use_node_name yes
Wichtig: Sollte der Rootserver mehrere IP Adressen besitzen so ist trotzdem nur die erste IP
Adresse anzugeben, die im Webinterface für diesen Root hinterlegt wurde.

Da unser Webserver auch gleichzeitig unser Statistikserver kopieren wir unsere Munin Auswertungen
direkt in unser Webinterface mit einem Cronjob. Wir bearbeiten dazu einfach die /etc/cron.d/munin
Datei. Hier müssen wir nun am Ende dieser einen Cronjob anlegen, der alle 30 Minuten unsere
Auswertungen in unser Webinterface Verzeichnis kopiert. Der Aufbau sieht ungefähr so aus:

*/30 * * * * root cp -R /unser munin html_dir /unser webinterface/munin

Bei unserem Webserver würde der richtige Eintrag dann wie folgt lauten:

*/30 * * * * root cp -R /var/www/munin /var/www/web1/munin

Wir können dann später in unserem Webinterface als Statistikserver diesen Pfad angeben:

http://unsereurl/munin

Jetzt müssen wir als letzte Tat auf unserem Webserver lediglich noch cron neustarten. Das geschieht
indem wir folgenden Befehl ausführen:

./etc/init.d/cron restart

Das war die komplette Installation unseres Webserver Roots nun machen wir eine kurze Kaffeepause
und stürzen uns danach auf unseren ersten Rootserver, den wir für unsere Game-, Shoutcast-, oder
Voiceserver nutzen wollen.
2. Kapitel - Installation Rootserver

Wichtig: Diesen Abschnitt müssen sie nur befolgen, wenn sie den Lizenzschlüssel für ein TekGWI
oder TekSWI haben. Bei dem TekCMS können sie diesen Schritt getrost überspringen.

I. Unser erster Rootserver


Wir haben unseren Webserver fertig eingerichtet und nehmen uns nun den ersten Rootserver vor,
den wir für Gameserver, Shoutcastserver, Voiceserver und Programme nutzen möchten. Diese erste
Einrichtung dauert in der Regel 10-20 Minuten aber wir machen lieber erst einmal alles in Ruhe und
planen daher einmal 30 Minuten ein.

Installskript
Zuerst laden wir uns jetzt als das Installskript auf unseren Rootserver endpacken und starten dies
anschließend.

cd /home
wget teklab.de/downloads/tekbase_installer.tar
tar -xf install.tar
cd install
./install.sh

Als erstes wählen wir unsere Linux Distribution aus. Nun werden die noch nötigen Programme
automatisch installiert und danach werden wir aufgefordert die Passwörter für den User user-webi
einzutragen.

Anschließend gehen wir nur noch nach /home/user-webi/.ssh öffnen dort die known_hosts
und ersetzen die schon die am Anfang eingetragene IP mit der IP unseres Webservers.

Eigene SSH Keys erstellen


Dem Installskript liegen schon Standardkeys bei, die eigentlich ohne Probleme auf den meisten
Rootservern funktionieren sollten. Wenn wir aber dennoch unbedingt unsere eigenen erstellen
möchten gehen wir wie folgt vor.

su user-webi
cd /home/user-webi
rm -R .ssh
ssh-keygen -t rsa
cd .ssh
cat id_rsa.pub >> authorized_keys
ssh user-webi@WEBSERVERIP
exit

Nun sollten im /home/user-webi/.ssh Verzeichnis vier Dateien liegen, die authorized_keys, id_rsa,
id_rsa.pub und die known_hosts. Wir müssen aber nun auch noch die neuen id_rsa und id_rsa.pub
Dateien in unser Webinterface kopieren und chmod 0644 geben. Das Verzeichnis dafür ist
Standardmäßig tmp diesen können wir aber nach Belieben anpassen.
Unser eigenes Installskript
Sollten wir unsere eigenen SSH Keys erstellt haben, so müssen wir unserem Installskript auch noch
die richtigen SSH Keys geben, nicht dass wir dies immer wieder von Hand auf neue Roots kopieren
müssen. Da wir unser Installskript noch nicht gelöscht haben, befindet es sich noch in /home/install
und dort liegt auch die keys.tar welche wir gleich ersetzen werden.

cd /home/user-webi
tar -czf keys.tar .ssh
cp keys.tar /home/install
cd /home
tar -cf eigenerinstaller.tar install

Nun befindet sich in /home eine eigenerinstaller.tar Datei. Dieses können wir anstatt des TekLab
Installskripts mit unseren eigenen erstellten SSH Keys auf jedem Rootserver nutzen.

Möchte wir den Server außerdem noch mit Munin überwachen, so müssen wir zusätzlich Munin-
node installieren.

Suse
Hier müssen wir das Munin-node als RPM Paket downloaden und installieren.

wget teklab.de/downloads/munin-node.rpm
rpm -i munin-node.rpm

Debian
Bei Debian können wir Munin-node ganz einfach über apt-get installieren.

apt-get install munin-node

Munin-node einrichten
In der /etc/munin/munin-node.conf tragen wir anstelle der 127.0.0.1 die IP unseres Statistikservers
ein. Dazu ändern wir folgende Zeile:

allow ^127\.0\.0\.1$

Jetzt müssen wir als nächstes munin-node neustarten.

./etc/init.d/munin-node restart (oder falls es diese Datei nicht gibt cron restart)
II. Weitere Rootserver
Weitere Rootserver sind schnell eingerichtet, damit wir auch wissen wie, richten wir gleich unseren
zweiten Rootserver ein.

Installskript
Wir laden unsere eigenerinstaller.tar Datei auf den neuen Rootserver nach /home endpacken diese
und starten anschließend das Installskript.

cd /home
tar -xf eigenerinstaller.tar
cd install
./install.sh

Wir wählen hier einfach nur aus, welche Linux Distribution wir haben und setzen das Passwort für
den user-webi. Mehr brauchen wir hier nicht zu machen und die Installation hat nur wenige
Sekunden gedauert.

Möchte wir den Server außerdem noch mit Munin überwachen, so müssen wir zusätzlich Munin-
node installieren.

Suse
Hier müssen wir das Munin-node als RPM Paket downloaden und installieren.

wget teklab.de/downloads/munin-node.rpm
rpm -i munin-node.rpm

Debian
Bei Debian können wir Munin-node ganz einfach über apt-get installieren.

apt-get install munin-node

Munin-node einrichten
Wie auch bei unserem ersten Rootserver tragen wir dazu in der /etc/munin/munin-node.conf
wieder unsere Statistikserver IP ein, anstelle der 127.0.0.1 IP. Dazu ändern wir folgende Zeile:

allow ^127\.0\.0\.1$

Jetzt müssen wir als nächstes munin-node neustarten.

./etc/init.d/munin-node restart (oder falls es diese Datei nicht gibt cron restart)

Zum Schluss sollte auch noch auf unserem Statistikserver in /etc/munin/munin.conf die Serverip des
Roots eingetragen werden. Wichtig ist dabei, dass die IDS anstelle eines Namens angegeben wird.
Diese sehen wir im Webinterface, wenn wir unter Rootserver Module auf den roten Stift gehen. Sie
steht in dann in der Statusleiste oder aber wir klicken auf den roten Stift und dann steht die URL im
Adressfenster.

http://url/admin.php?op=adminRserverEdit&ids=14
In diesem Fall wäre es die 14 und unser Eintrag in die munin.conf sollte dann so aussehen:

[14]
address 123.123.123.12
use_node_name yes

Wichtig: Sollte der Rootserver mehrere IP Adressen besitzen so ist trotzdem nur die erste IP
Adresse anzugeben, die im Webinterface für diesen Root hinterlegt wurde.

III. Fehler vermeiden und Sicherheit erhöhen


Wir können von Anfang an gleich dumme kleine Fehler vermeiden, indem wir uns noch 5 Minuten
zum prüfen von FTP Server, SSH und Sudo zeit lassen. Da wir für die erste Installation ja sowieso 30
Minuten eingeplant haben liegen wir noch sehr gut im Zeitplan.

FTP Server richtig einstellen


Hier können wir ganz einfach überprüfen ob dieser funktioniert. Wir loggen uns mit einem FTP
Programm und den Daten des Users user-webi auf dem Rootserver ein. In /etc haben wir unsere FTP
Server Konfigurationsdatei, dies könnte vornehmlich die vsftpd.conf oder proftpd.conf sein.

Bei der vsftpd.conf sollte unbedingt write_enable und chroot_local_user auf yes gestellt werden und
die userlist_enable auf no.

Bei der proftpd.conf hingegen sollte unbedingt DefaultRoot ~ drinstehen, damit die Kunden sich per
FTP nicht frei auf dem gesamten Root bewegen sondern in ihr Verzeichnis eingesperrt werden. Nach
dem Ändern der Einstellungen bitte den FTP Server neustarten.

vsftpd
cd /etc/init.d
./vsftpd restart

oder
cd /etc/init.d
./xinetd restart

proftpd
cd /etc/init.d
./proftpd restart

SSH Zugriff für User verweigern


Damit unsere Kunden sich nicht einfach auf unseren Rootserver per SSH einloggen können nehmen
wir einen kleinen Eintrag am Ende der /etc/ssh/sshd.conf vor.

AllowedUsers root, user-webi

Damit erhalten nur der User root und der User user-webi einen Zugriff per SSH z.B. Putty.
Sudo überprüfen
Eigentlich sollte es bei Sudo keine Fehler geben aber wir testen trotzdem lieber einmal.

su user-webi
cd /home/skripte
sudo ./tekbase 1 musteruser PW1234

Sollte nun als Ausgabe ID1 erscheinen war alles richtig und der User konnte angelegt werden.
Ansonsten steht der Fehler schon direkt dort. Hier ein kleiner Überblick über die Fehlermeldungen,
was sie bedeuten und wie wir sie beheben können.

/home/skripte/tekbase: line xxx: useradd: command not found

Dieser Fehler sagt uns, dass die Datei useradd nicht gefunden wurde, also überprüfen wir die sudoers
im /etc Verzeichnis ob dort folgendes steht und auch ob die useradd, userdel und usermod in
/usr/sbin liegen.

user-webi ALL=(ALL) NOPASSWD: /home/skripte


user-webi ALL=(ALL) NOPASSWD: /usr/sbin/useradd
user-webi ALL=(ALL) NOPASSWD: /usr/sbin/userdel
user-webi ALL=(ALL) NOPASSWD: /usr/sbin/usermod

Der nächste Fehler könnte so aussehen:

sudoers file: syntax error, line xxx

Sehen wir also nach, was bei der genannten Zeile in der Datei /etc/sudoers steht und überprüfen ob
wir nicht einen kleinen Schreibfehler eingebaut haben. Nachdem wir unsere Fehler behoben haben
testen wir das ganze wie oben beschrieben noch einmal. Sollte es diesmal geklappt haben können
wir den User als root wieder löschen mit userdel musteruser.
3. Kapitel - Das Webinterface

Nachdem wir nun alles Mögliche eingerichtet und konfiguriert haben, ist es nun endlich soweit. Wir
können uns nun in das Webinterface einloggen. Als erstes haben wir einen kleinen Schnelldurchlauf
und danach werden wir uns jedes Modul einzeln ansehen und erklären.

I. Von A bis Z der Schnelldurchlauf


Für alle ungeduldigen Leser haben wir hier eine kurze und knappe Anleitung, wie wir uns einloggen,
die Lizenzen freischalten, den ersten Kunden anlegen und ihm seine Produkte zuweisen sowie auch
die ersten Rechnungen verschicken. Als Grundlage dient eine Gameserver Advanced Lizenz mit
Rechnungsmodulen.

Der erste Login


Wir rufen nun die admin.php zu unserem Webinterface auf um uns als Admin einzuloggen. Unsere
Kunden können sich später unter members.php einloggen um Zugriff auf ihre Kundendaten zu
erhalten.

http://www.unsereurl.de/admin.php

Die Logindaten sind zum Anfang sind als Adminname admin und als Passwort 1q2w3e4r5t, damit
loggen wir uns jetzt erst einmal ein und geben falls angezeigt noch den Security Code ein. Sollte
dieser nicht angezeigt werden so wurde gd.so Extension nicht geladen. Wir klicken auf Anmelden
und bekommen nun die Anzeige, dass unser Login erfolgreich war und wir weitergeleitet werden.
Hier sehen wir nun den Startscreen, der noch sehr leer aussieht. Dort haben wir links das Menü,
welches wir aber mit einem eigenen Design zum Beispiel nach oben oder rechts verlagern können.
Im Hauptbereich sehen wir die Fenster News und Statistiken sowie einige Icons. Oben haben wir
außerdem den TekLab Assistenten der uns zu jedem Modul wichtige Hinweise und eine kurze
Beschreibung geben kann.

Später wenn wir unseren Lizenzschlüssel eingetragen haben sehen wir links noch einige Menüpunkte
mehr und auch im Hauptbereich sind mehr Anzeigen verfügbar. So zum Beispiel die Todoliste diese
wird angezeigt, wenn einer unserer Admins eine Aufgabe erstellt. In dem Fenster Statistiken haben
wir den Überblick über Supportanfragen, Kontaktanfragen, Kunden und verschiedenen
Statusanzeigen, wie FTP und SSH.

Einstellungen und Lizenzschlüssel


Als erstes klicken wir links im Menü auf Setting Module und dann auf Einstellungen hier können wir
nun unsere Daten angeben und weiter unten auch unseren Lizenzschlüssel eintragen.

Die Felder Pfad zu id_rsa und Pfad zu id_rsa.pub können wir so stehen lassen wie sind, außer wir
haben vorhin diese beiden Dateien woanders hin kopiert.
Auch den Imageserverpfad können wir erst einmal so lassen, da wir noch keinen eigenen haben und
das Webinterface vorerst nur testen wollen. In das Feld Statistikserverpfad tragen wir unsere URL
oder Link zu Munin ein. Da wir mit unserem cronjob die Munin Daten alle paar Minuten in unser
Webinterface kopieren geben wir folgende URL an:

http://www.unsereurl.de/munin

Die Felder SSH User, SSH Port und Wartezeit lassen wir auch wie sie sind. Bei Lizenzschlüssel tragen
wir noch unseren Lizenzschlüssel ein und müssen lediglich noch auf Speichern und danach im Menü
Allgemein auf Index klicken und schon haben wir einige Menüpunkte mehr. Sollte dem nicht so sein
schreiben wir einfach TekLab an und schicken noch einmal unsere direkte Domain und IP.

Administrator Passwort ändern


Nachdem wir nun unsere Lizenz freigeschaltet haben ändern wir noch schnell das Passwort des
Standard Logins oder erstellen erst einen neuen Superadmin und löschen danach den Admin admin.
Wenn wir nun auf Speichern oder Löschen (nachdem wir einen neuen Superadmin angelegt haben!)
Werden wir ausgeloggt und müssen uns mit den neuen Daten neu einloggen.

Der Superadmin kann und darf alles. Der normale Admin hingegen kann fast alles aber darf keine
wichtigen Sachen löschen und hat auch keinen Einblick in die Rechnungsmodule. Zu guter letzt
kommt der Supportadmin, der nur zum Beispiel Gameserver starten und stoppen kann und
Supportanfragen bearbeiten darf.
Den ersten Rootserver eintragen
Damit wir Gameserver, Shoutcastserver, Voiceserver oder Programme installieren können müssen
wir zumindest einen Rootserver eintragen. Dazu gehen wir links im Menü auf Server Module und
dann auf Rootserver.

In diesem Modul klicken wir auf Rootserver eintragen und füllen alle nötigen Felder aus. Im Feld IP
können wir untereinander mehrere IPs des Rootservers eintragen. Bei den Feldern für den Typ
klicken wir lediglich auf Gameserver und bei Betriebssystem wählen wir 32Bit aus, da wir ein 32Bit
Betriebssystem auf diesem Server laufen haben. Die Felder für TS2 lassen wir einfach leer. Danach
tragen wir noch schnell die restlichen Daten ein und klicken auf Speichern. Jetzt erhalten wir eine
Meldung, dass unser Rootserver erfolgreich hinzugefügt wurde.

Email Templates anlegen


Bevor wir einen Kunden oder gar Gameserver erstellen sollten wir erst einmal Email Templates
anlegen, damit der Kunde auch seine Zugangsdaten geschickt bekommt. Dazu klicken wir links im
Menü wieder einmal auf Setting Module und dann auf Email Templates.
Danach gehen wir auf Template eintragen hier haben wir nun die Möglichkeit ein neues Template
einzutragen. Das Feld Modul ist nur wichtig, wenn wir das Feld Zusätzliche Optionen auf keine
stellen. Also tragen wir jetzt einmal unser Template ein.

Betreff: Logindaten
Modul: egal
Zusätzliche Optionen: Logindaten Email
Text:

Hallo gssurname,

hier sind deine Logindaten für das Webinterface.

Url http://www.unsereurl.de/members.php
Login: gsuserid
Passwort: gspasswd

Dein Musterfirma Team

Jetzt nur noch Speichern anklicken und das Template wurde erstellt. Nun erhält jeder Kunde, der
über das Webinterface eingetragen wird dieses Email Template über die Support Adresse, die im
Modul Einstellungen angegeben wurde. Wir legen auch gleich noch ein Template für die Rechnungs
Email an.

Betreff: Neue Rechnung


Modul: egal
Zusätzliche Optionen: Rechnungs Email
Text:

Hallo gssurname,

Im Webinterface liegt eine neue Rechnung für dich bereit.

Url http://www.unsereurl.de/members.php

Dein Musterfirma Team

Jetzt sind wir erst einmal mit dem Email Template Modul fertig und das reicht uns auch für unseren
kurzen Schnelldurchlauf.
Der erste Kunde
Wir werden nun unseren aller ersten Kunden eintragen und gehen im Menü links auf Kunden
Module und dann Kunden.

Wir klicken auf Kunden erstellen und füllen nun alle Felder aus die mit einem Sternchen versehen
sind. Die Felder Passwort und FTP Passwort können wir leer lassen, denn dann werden automatisch
Passwörter generiert. Noch schnell auf Speichern geklickt und fertig ist unser Kunde. Ganz nebenbei
wurde ihm auch gleich eine Email mit den Logindaten zugeschickt.

Des Kunden erster Gameserver


Wieder einmal gehen wir links in das Menü aber diesmal klicken wir auf Spiele Module und dann auf
Gameserver und nun können wir Gameserver erstellen auswählen.

Als erstes wählen wir unseren Kunden aus, dieser kann später nicht mehr geändert werden da der
Gameserver für diesen Kunden installiert wird. Das Feld Gameswitch lassen wir auf nein, als Spiel
nehmen wir zuerst Counter-Strike 1.6 da sich dies schnell installieren lässt. Nun müssen wir noch im
Feld Server Ip die IP des Rootservers auswählen und bei Server Port, Max Tickrate, Slotzahl und
Verzeichnis unsere Einträge machen. Das könnte dann, wenn es fertig ist so aussehen:
Kunde: Testkunde
Gameswitch: Nein
Spiel: Counter-Strike 1.6
Server IP: 123.123.123.123
Serverport: 27015
Queryport:
Max Tickrate: 100
Slotanzahl: 10
Serverstatus: Public
Serverpasswort:
Verzeichnis: cs (das Verzeichnis wäre dann /home/kundenkennung/server/cs)
Eigener Startscript:
Startscript anpassen: Nein

Wenn wir jetzt auf Speicher klicken wird der Kunde auf dem Gameserver Root angelegt, weil es dort
diesen Kunden noch nicht gibt. Der Kunde wird immer erst auf dem Root angelegt, wenn ihm ein
Game-, Stream-, Ventriloserver oder Programm zugewiesen und installiert wird.

Solange wie der Gameserver installiert wird, sehen wir in der Gameserver Übersicht bei dem
Gameserver nur einen rot Stift, freie Felder daneben und dann erst die Server IP und Server Port.
Sollte der Gameserver fertig installiert worden sein, werden die Start und Stop Icons angezeigt.
Also müssen wir uns ein wenig gedulden…

So unser Gameserver ist installiert und durch das klicken auf die grünen Pfeile starten wir ihn und
durch das klicken auf das rote Kreuz stoppen wir ihn wieder.

FiBu einrichten
Links im Menü gehen wir nun auf Rechnungs Module und dann Firmen Daten. Hier können wir
unsere Firmen Daten eingeben, die für die Rechnungsstellung wichtig sind.

Die Felder bis Rechnungslogo sind schnell ausgefüllt. Bei dem Feld müssen wir eine Gif Datei
eintragen, die im Verzeichnis images liegt. Als Rechnungskennung können wir RE stehen lassen oder
unser eigenes Kürzel verwenden.
Das DATEV Feld können wir nur ein einziges Mal auswählen, genauso wie das Feld Wirtschaftsjahr
Ende und Startdatum. Daher tragen wir in die ersten beiden Felder unsere Daten ein, die wir auch
beim Finanzamt angegeben haben. Als Startdatum wählen wir den aktuellen Monat, da sonst die
Rechnungs Module ab dem eingetragenen Datum laufen. So müssten wir bei einem Startdatum vom
10.09.2006 alle Monate erst im Geschäftsvorfälle Modul archivieren damit wir mit der
Rechnungsstellung anfangen können. Also hier das aktuelle Datum oder den aktuellen Monat
wählen. Die anderen Felder können wir wieder ohne Schwierigkeiten ausfüllen und klicken danach
auf Speichern.

Einen Artikel anlegen


Bevor wir unserem Kunden eine Rechnung schicken können, müssen wir erst noch Artikel anlegen
und dem Kunden ein Kundenpaket geben. Für ersteres klicken wir links im Menü unter Rechnungs
Module auf Artikel und dann Artikel erstellen.

Hierbei ist nur wichtig, dass wir in der Textbox Beschreibung ein Zeilenende auch mit Enter
bestätigen und nicht einen ellenlangen Text eintragen, da dieser als Artikeltext angezeigt wird. Auch
sollten wir bei Steuerschlüssel 4 Mehrwertsteuern 19% auswählen. Ein Artikel könnte so aussehen:

Artikelnummer: 0001
Titel: CS 10Slot
Beschreibung: Counter-Strike 10Slot
+Teamspeak 10Slot
Preis: 20,00
Steuerschlüssel: 4 Mehrwertsteuern 19%

In der Rechnung steht dann folgendes:

Anzahl Beschreibung Preis


1 Counter-Strike 10Slot 20,00
+Teamspeak 10Slot

Wir klicken auf Speichern und der Artikel wurde angelegt. Da wir nur einen Artikel brauchen legen
wir auch keine weiteren an und gehen nun über unserem Kunden diesen Artikel zuzuweisen.
Kundenpaket mit Artikel füllen
Links im Menü können wir unter Rechnungs Module auf Kundenpaket gehen oder aber unter
Kunden Module auf Kunden. Da der letztere Weg wohl öfter von uns genutzt wird nehmen wir jetzt
auch diesen. In der Kunden Übersicht haben wir neben der Kundenkennung zwei drei Icons eins
davon sieht wie ein Paket aus und da klicken wir drauf und nun können wir diesem Kunden einen
Artikel zuweisen.

Jetzt müsste als Kunde schon unser Testkunde ausgewählt sein. Bei Artikel wählen wir unseren
soeben erstellten Artikel aus. Nun können wir noch Bestelldatum, Vorauszahlung und
Vertragslaufzeit auswählen. Wenn wir dann auf Speichern klicken sehen wir weiter unten, dass in
dem Kundepaket nun ein Artikel liegt.

Die erste Rechnung erstellen


Damit unser Testkunde nicht kostenlos spielt erstellen wir ihm jetzt erst einmal eine Rechnung. Dazu
gehen wir links im Menü unter Rechnungs Module auf Rechnungen und klicken auf Alle Kunden.

Das war es eigentlich schon die Rechnung wurde jetzt für diesen Monat erstellt, einfach könnte es
nicht sein, selbst bei 500 Kunden und mehr. Bevor wir dem Kunden seine Rechnung zusenden
können wir noch einmal in aller Ruhe überprüfen, ob sich ein Fehler eingeschlichen hat. In unserem
Fall eigentlich unmöglich. Hier haben wir neben dem roten Stift zwei Icons einmal eine Seite, damit
können wir uns die Rechnung im HTML Format anzeigen lassen und einmal ein PDF Icon, damit
erstellen wir eine PDF Rechnung zum Download für uns.

Geschäftsvorfälle verwalten
Nachdem wir die Rechnung überprüft haben begeben wir uns zum Herzstück der FiBu, dem
Geschäftsvorfälle Modul. Wie gewohnt kommen wir über das Linke Menü zu unserem Ziel. Diesmal
unter Rechnungs Module und dann Geschäftsvorfälle.

Hier können wir alle Buchungen eintragen und auch unsere Rechnungen einlesen. Sobald wir hier
unsere Rechnung einlesen wird eine Email an unseren Kunden verschickt und die Rechnung wird in
das Archiv verschoben sowie einen Eintrag in Offene Posten erstellt. Also klicken wir auf
Rechnungen einlesen. Danach sehen wir die Rechnung als Buchungsbeleg eingetragen und das war
es eigentlich auch schon da wir noch nichts anderes verrechnen müssen. Am Monatsende klicken wir
auf Belege archivieren und der Monat wird abgeschlossen. Danach können wir für den nächsten
Monat die Buchungen vornehmen.
Bezahlte Rechnungen verbuchen
Sobald unser Kunde seine Rechnung bezahlt hat können wir sein Guthabenkonto ausgleichen. Über
das linke Menü unter Rechnungs Module, Offene Posten gelangen wir zu der Übersicht. Hier können
wir alle offenen Rechnungen einsehen und auch die jeweilige Mahnstufe.

Neben dem roten Stift wird das Icon der Zahlungsart angezeigt und wenn wir mit der Maus darüber
gehen, wird uns auch die Bezeichnung angezeigt zum Beispiel Überweisung.

Um jetzt einen Zahlungseingang zu verbuchen markieren wir das Kästchen vor dem roten Stift und
wählen in der Auswahlbox darunter markierte Posten ausgleichen und klicken dann auf Änderung
durchführen. Sollte unser DATEV Format das SKR03 EÜR sein, so müssen wir noch unter dem
Geschäftsvorfälle Modul das Datum des Zahlungseingangs ändern, da dies mit Sicherheit nicht das
Datum der Rechnungsstellung ist.
II. Die einzelnen Module und ihre Funktionen

III. Fehlermeldungen und Lösungsansetze