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
 

Ähnliche Artikel

  • Zurück zu den Wurzeln
  • Froyo-Smartphone bei Otto

    Mit dem Liquid MT bringt Acer ein neues Android-Smartphone auf den Markt, das vorerst exklusiv beim Versandhändler Otto zu haben ist.
  • Streaming mit dem Darwin Streaming Server
    Mit dem Darwin Streaming Server bietet Apple eine freie Version des kommerziellen Quicktime-Servers an. Er beherrscht die zukunftsträchtigen Formate MP3 und MPEG-4-Video und kommt mit einem Web-Frontend. Wie Sie ihn trotz einiger Schwierigkeiten zum Laufen bekommen, verrät dieser Praxisartikel.
  • CTAN, CPAN, Pear & Co.: Paketverwaltungen für Quellcode
    Einige Software-Pakete und Programmiersprachen bringen abseits von DEB, RPM und Co. ihre eigene, komfortable Paketverwaltung mit.
  • Web-Server Apache 2
    Das Herzstück eines typischen Internet-Servers bildet ein Programm, das WWW-Seiten anbietet. Weltweit am häufigsten genutztes Exemplar dieser Gattung ist der Apache-Web-Server, dessen Entwickler kürzlich die Version 2 zur allgemeinen Verwendung freigaben.
Kommentare

Infos zur Publikation

LU 01/2015: E-Books im Griff

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

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

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 3 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.