MySQL vorbereiten

Otto speichert in einer MySQL-Datenbank, von welchen Interpreten und Alben Sie welche Musikstücke besitzen und welche Dateien auf der Festplatte ihnen entsprechen. Dazu muss der MySQL-Server installiert sein und laufen (vgl. den MySQL-Artikel auf S. 24); bei Debian heißt das nötige Paket mysql-server, bei Suse einfach mysql.

Damit Otto seine Daten darin speichern kann, müssen Sie zuvor einen Datenbankbenutzer und eine Datenbank anlegen. Die in Otto vorkonfigurierten Standardeinstellungen – der Benutzername otto und das Passwort otto – sind zumindest dann in Ordnung, wenn der MySQL-Server vom Internet aus nicht erreichbar ist (siehe auch Kasten 2). Wenn Sie andere Zugangsdaten wünschen, editieren Sie die Datei /usr/local/otto/etc/webuser.sql dahingehend, dass in der letzten Zeile statt des ersten otto der gewünschte Datenbankbenutzername, anstelle des zweiten das Passwort zu stehen kommt.

Kasten 2: MySQL gegen Zugriff von außen sichern

Wenn Sie MySQL nur für Otto installieren, ist es nicht nötig, dass man auch über das Netzwerk auf die Datenbank zugreifen kann. Am einfachsten tragen Sie daher in der MySQL-Konfigurationsdatei /etc/my.cnf (je nach Distro auch /etc/mysql/my.cnf) die Option skip-networking ein. Unter Debian ist das in der Standardinstallation der Fall, bei Suse müssen Sie das #-Kommentarzeichen am Zeilenanfang entfernen und den Server mit /etc/init.d/mysql restart neu starten.

Alternativ sperren Sie den MySQL-Port 3306 in der Firewall, wenn Sie eine betreiben. Falls der Zugang über das Netz für andere Anwendungen möglich sein muss, studieren Sie bitte die entsprechenden Abschnitte im Handbuch [5] und konfigurieren Ihr System entsprechend.

Anschließend legen Sie mit dem Befehl

mysql -u root -p -e "create database otto"

die Datenbank an. Die folgenden Kommandos legen Tabellen an, tragen Daten ein und laden MySQLs Benutzertabellen neu.

mysql -u root -p otto < /usr/local/otto/etc/schema.sql
mysql -u root -p mysql < /usr/local/otto/etc/webuser.sql
mysqladmin  -u root -p reload

Wer allen Sicherheitsbedenken zum Trotz den Datenbank-Account root noch nicht mit einem Passwort versehen hat, drückt bei der Passwort-Abfrage einfach [Enter]. Alternativ lassen Sie in diesem Fall in den obigen Befehlen die Optionen -u root -p weg und führen sie als Administrator root aus. Selbst wenn alles glatt läuft, geben die Befehle keine Erfolgsmeldungen aus.

Apache-Konfigurationsschnipsel

Zusätzlich zur Datenbank braucht Otto einen Apache-Webserver, der die Benutzerschnittstelle präsentiert. Sie installieren ihn am besten über den normalen Paketmechanismus Ihrer Distribution. Der Server bringt eine Konfigurationsdatei httpd.conf mit, die meist in /etc/httpd/conf, /etc/apache oder einem Unterverzeichnis davon liegt. Heute kommt häufig Apache 2 zum Einsatz, dessen Dateien je nach Distribution noch einmal anders aufgeteilt sind, zum Beispiel heißt die wichtige Konfigurationsdatei unter Suse 9.1 /etc/apache2/default-server.conf. In die Konfigurationsdatei tragen Sie die Otto-Einstellungen aus Listing 1 ein. Besitzt ihre Datei schon einen VirtualHost-Abschnitt, fügen Sie die Zeilen dort dazu.

Bei einem frisch installierten Apache können Sie die Otto-Konfiguration auch einfach unten in der Datei eintragen. Alternativ finden Sie auf der Heft-CD die abgebildete Konfiguration als otto-apache.conf, die Sie im selben Verzeichnis wie die Apache-Konfiguration ablegen und dort so einbinden:

Include /etc/apache2/otto-apache.conf

Die Alias-Zeile leitet Zugriffe auf http://Rechnername/otto ins Otto-WWW-Verzeichnis um; Options +ExecCGI erlaubt für dieses Verzeichnis die Ausführung von CGI-Skripten. Die AddHandler-Zeile erklärt, dass Dateien mit der Endung .cgi solche Skripte sind, und der DirectoryIndex-Eintrag schließlich sorgt dafür, dass die Datei otto.cgi auch ausgeführt wird, wenn man nur den Verzeichnisnamen im Webbrowser eingibt.

Listing 1

Apache-Konfiguration

Alias /otto /usr/local/otto/www
<Location /otto>
    Options +ExecCGI
    AddHandler cgi-script cgi
    DirectoryIndex index.html index.cgi otto.cgi
    # Optional: (falls Sie keine Zugriffsbeschraenkung
    # wünschen, stellen Sie den folgenden drei
    # Zeilen ein #-Zeichen voran oder lassen sie weg)
    AuthType Basic
    AuthName Otto
    AuthUserFile /usr/local/otto/etc/htpasswd
    Order allow,deny
    Allow from all
</Location>

Die nächsten drei Zeilen beschränken den Zugriff auf bestimmte Benutzer, die letzten beiden erlauben ihn überhaupt erst. Die Datei /usr/local/otto/etc/htpasswd bestimmt, wer Otto via Web benutzen darf. Mit Hilfe des Kommandos htpasswd legen Sie diese Datei und einen Benutzer darin an:

htpasswd -c /usr/local/otto/etc/htpasswd Benutzername

Der Befehl fragt daraufhin das gewünschte Passwort ab. Möchten Sie weitere Benutzer hinzufügen, lassen Sie die Option -c weg und führen das Kommando erneut aus. Nur wer die hier eingegebene User-Passwort-Kombination kennt, kann sich später im Webbrowser bei Otto anmelden. Eine solche Beschränkung ist sinnvoll, wenn Sie den Computern in Ihrem Intranet nicht unbedingt vertrauen können, etwa weil Sie ein Wireless LAN betreiben.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 07/2017: VIDEOSCHNITT

Digitale Ausgabe: Preis € 0,00
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Aktuelle Fragen

scannen mit LINUXMINT 18.0 - Brother DCP - 195 C
Christoph-J. Walter, 21.06.2017 08:47, 4 Antworten
Seit LM 18.0 kann ich nicht mehr direkt scannen. Obwohl ich die notwendigen Tools von der Brothe...
Anfänger Frage
Klaus Müller, 24.05.2017 14:25, 2 Antworten
Hallo erstmal. Habe von linux nicht so viel erfahrung müsste aber mal ne doofe frage stellen. A...
Knoppix-Live-CD (8.0 LU-Edition) im Uefiboot?
Thomas Weiss, 26.04.2017 20:38, 4 Antworten
Hallo, Da mein Rechner unter Windows 8.1/64Bit ein Soundproblem hat und ich abklären wollte, o...
Grub2 reparieren
Brain Stuff, 26.04.2017 02:04, 7 Antworten
Ein Windows Update hat mir Grub zerschossen ... der Computer startet nicht mehr mit Grub, sondern...
Linux open suse 2,8
Wolfgang Gerhard Zeidler, 18.04.2017 09:17, 2 Antworten
Hallo.bitte um Hilfe bei. Code fuer den Rescue-login open suse2.8 Mfg Yvo