Linux-Kernel 2.6.36 released

Wie man heute liest, wurde ein neuer Linuxkernel Version 2.6.36 freigegeben. Der Kernel soll um etliche neue Treiber erweitert worden sein. Unter anderem auch AppArmor. AppArmor… hm, braucht man das? Was macht Apparmor… ich kanns mir vorstellen, jedoch könnt ich es jetzt nicht auf den Punkt bringen.

Downloadmöglichkeit: http://www.kernel.org/

Hm, da fällt mir ein, ich wüßte nicht wie man diesen Kernel ins System bringt, sofern er nicht als DEB vorliegt… zumindest nicht ohne Lektüre. Peinlich… :-/

Debian Lenny Jooma Installation from scratch

Grundvoraussetzung

Als Grundvoraussetzung sollte natürlich ein Rechner vorhanden sein. (Es  wäre u.a. auch möglich, das ganze in eine VM zu installieren.) Da ich nicht vorhabe, irgendeine GUI / Windowmanager zu installieren, muss es nicht die „Überdrüberkiste“ sein. Sollte der Server im Produktiveinsatz sein, ist es grundsätzlich anzuraten, wirklich nur die notwendigsten Dienste zu installieren. Auf ein GUI (KDE / GNOME etc.) sollte man verzichten. Je mehr auf dem PC, der der Server werden soll, installiert wird und an Diensten läuft, desto größer ist die potentielle Angriffsfläche!

Eine Internetanbindung ist für dieses Vorhaben auch notwendig, da ich als Installationsmedium den Debian Netinstaller nehme.

Debian Lenny herunterladen und Installation starten

Zuerst laden wir uns den Debian Netinstaller herunter: Lenny (=Stable)
Danach wählen wir I386 und laden die Datei debian-506-i386-netinst.iso herunter.

Gut! Nun wird per CD/DVD Brennprogramm diese ISO Datei auf eine CD gebrannt und mittels dieser CD gebootet. Sollte man in einer VM arbeiten (zb Virtualbox), so bindet man die Isodatei (siehe Screenshot -> Virtualbox) über Massenspeicher ein und gibt als Laufwerk die ISO-Datei an.

Ich gehe hier jetzt nicht weiter auf die Installation von Debian Lenny per Netinstaller ein, da dies meiner Meinung nach kein großer Aufwand ist.

Für WICHTIG halte ich allerdings, nur das Grundsystem bei der Softwareauswahl zu wählen, denn alles andre installieren wir per Hand nach.

Nach Ende der Grundinstallation

Da nun relativ viel Arbeit per Konsole bzw. Texteditor ansteht, empfehle ich die Installation des Editors eurer Wahl. Ich wähle hier immer vim.

  • apt-get install vim
  • RETURN

So, Apache werden wir auch noch benötigen, + phpmyadmin. In einem Rutsch erfolgt die Installation mit:

  • apt-get install phpmyadmin
  • RETURN

Durch die Installation des Paketes phpmyadmin werden sämtliche andere Pakete, die wir benötigen nachgezogen.

Erfolg prüfen

Webserver sollte laufen. Um dies zu checken, haben wir mehrere Möglichkeiten. Die erste wäre ein Verbindungsversuch von einem anderen Rechner auf die IP unseres Debianserver. Im Falle, dass wir in einer VM arbeiten, funktioniert das meiner Erfahrung nach nur mit einem bridged Network, bei dem das Gastsystem (Debianserver) eine IP im gleichen Netz des Hostsystemes erhält.

Nun, der Aufruf im Webserver sollte jedenfalls folgendes zu Tage fördern:

Eine weitere Testmöglichkeit wäre telnet, direkt von der Konsole des Linuxserver (schaut dann so aus):

Scheint also zu funktionieren. Was ist mit phpmyadmin? Funktioniert das auch?

  • Webbrowser: Aufruf über die IP Adresse gefolgt von /phpmyadmin:

  • Login mit Root ohne Passwort und … Klatsch -> Fehlermeldung: #2002 – Der Server antwortet nicht. (evtl. ist auch der Socket des lokalen MySQL-Servers socket nicht korrekt konfiguriert)

Aha, da hat es was mit Mysql. Also versuchen wir mal den Mysqldienst zu starten:

  • /etc/init.d/mysqld start
  • RETURN

Führt direkt zum nächsten Fehler, nämlich Datei oder Verzeichnis nicht gefunden. Na, da wird wohl der MySqlserver nicht installiert sein. Checken wir das mal:

Über den Befehl apt-cache policy mysql-server, kann man prüfen, ob das Paket installiert ist. Wie man im Screenshot (oberhalb) sieht, Installiert: KEINE. Deshalb funktioniert also der Mysqlserver nicht und phpmyadmin bekommt keine Verbindung zum Dienst.

Wir installieren mysql-server:

  • apt-get install mysql-server
  • RETURN

Nach dem Download ist dann noch das Passwort des root-User zu setzen. Hierbei sollte in möglichst starkes Kennwort gewählt werden. Weiters zu beachten ist, dass zb bei Installation eines CMS nie der Rootuser für die laufende Datenbankverbindung verwendet werden soll! Root darf bekanntlich alles! Für normale Datenbankabfragen etc. ist ein Extrauser, der nur auf seine eigene Datenbank zugreifen darf, anzulegen und niemals auf Root zurückzugreifen.

Nach dem Installieren des mysql-server Paketes, sollte nun ein Login in phpmyadmin, mit User root und dem gewählten Passwort möglich sein. Man kann vorher noch sicherstellen, ob der Dienst des Mysqlserver läuft. Am besten macht man das mit einem:

  • netstat -a | grep mysql
  • RETURN

Läuft der Dienst, sollte die Ausgabe so aussehen:

Datenbank mit phpmyadmin anlegen

Wir loggen uns als root-User in phpmyadmin ein und legen die Datenbank (mit beliebigem Namen und Zeichensatz utf8_general_ci an):

Dadurch erhalten wir zuerst einmal eine leere Datenbank ohne Tabellen bzw. irgendwelche Felder (die ja normalerweise in den Tabelle stehen würden).

User anlegen und der Datenbank zuweisen

Zurück auf die Startseite von phpmyadmin (Haussymbol links oben).

Danach Klick auf Rechte -> Im nächsten Fenster dann Neuen Benutzer hinzufügen und folgendes eingeben (natürlich kann Username und Passwort frei gewählt werden). Als Host Lokal:

Abermals Klick auf Reiter Rechte, um den User (joomlausr) zur Datebank (joomla) zuzuweisen. Hierfür klickt man in der Zeile des User joomlausr auf das Symbol ganz rechts:

Im erscheinenden Fenster kann man die globalen Rechte des User joomlausr einstellen. DAS WOLLEN WIR ABER NICHT. Wir wollen dem User nur datenbankspezifische Rechte zuweisen. Weiter unten wählen wir deshalb im Dropdownmenü unsere Datenbank aus: joomla:

Danach können wir die Datenbankspezifischen Rechte anpassen / einstellen:

  • Bei Rubrik DATEN vorerst ALLE Haken setzen
  • Bei Rubrik STRUKTUR vorerst ALLE Haken setzen

So, mit Klick auf OK (rechts) ist auch das erledigt.

Joomla Download

Mit Hilfe von wget holen wir uns die Joomladatei in deutscher Sprache von www.joomla.de

  • wget http://www.joomla.de/images/eigene-dateien/joomla/Joomla_1.5.21-Stable-Full_Package_German.zip
  • RETURN
  • ACHTUNG: Der Download erfolgt in das Verzeichnis, in dem man gerade „steht“.
  • Am besten, man wechselt gleich in das entsprechende Verzeichnis im Document Root des Apache (Standard /var/www) und führt den Befehl dann aus.

Die Datei kommt als ZIP, wir benötigen also unzip UND müssen die Datei „entzippen“:

  • apt-get install unzip
  • RETURN
  • unzip Joomla_1.5.21-Stable-Full_Package_German.zip (Tip: Mit der TAB Taste kann man in der Linuxkonsole Eingaben vervollständigen und muss somit nicht den ganzen Namen eintippen)
  • RETURN
  • Braucht man die ZIP nicht mehr, kann man sie löschen: rm *.zip
  • RETURN

Joomla Installation starten

Browser öffnen und die IP/URL in die Adresszeile eingeben. Hat man Joomla im Rootverzeichnis des Webserver installiert, startet die Installation sofort und die Sprache ist auszuwählen. Befinden sich die Joomlainstallationsdateien in einem Unterverzeichnis und nicht direkt im Rootverzeichnis des Webserver, dann muss man die gesamte Adresse, bis hin zum Verzeichnis in dem die Joomladateien liegen, in der Adresszeile des Browser angeben. Aufgerufen wird jedenfalls (normalerweise automatisch) „install.php“.

Deutsch ist die richtige Sprache, deshalb -> Klick auf weiter oben rechts. Es folgt eine Auflistung bzw. die Prüfung des Systems auf Kompatibilität. In unserem Fall sollte nun eigentlich „angemeckert“ werden, dass die Datei configuration.php nicht beschreibbar ist bzw. dass die Anzeige von Fehlermeldungen aktiv ist.

An sich kein Problem. Wir erstellen schnell mal ne leere configuration.php in der Konsole:

  • touch /var/www/configuration.php
  • RETURN
  • chmod 755 /var/www/configuration.php
  • RETURN
  • chown www-data /var/www/configuration.php
  • RETURN

Zurück im Webbrowser klicken wir oben rechts auf „Prüfung wiederholen“ und siehe da, die configuration.php ist beschreibbar.

WICHTIG: Die Rechte der configuration.php sollten auf 444 (nur lesen für alle Besitzer/Gruppen/Andre) stehen, sobald die Konfiguration / Installation von Joomla abgeschlossen ist.

  • Weiter gehts -> Klick auf Weiter
  • Lizenzvereinbarung lesen -> Klick auf Weiter
  • Datenbankverbindung, jetzt wirds nochmal spannend. Wir tragen hier jetzt die Daten des User / der Datenbank ein, die wir weiter oben im Artikel für Joomla erstellt haben. NICHT DER ROOTBENUTZER! Im Tutorial war das als User: joomlausr, als Datenbank: joomla, Host ist localhost und klicken auf Weiter. Siehe  da, es klappt.
  • Der nächste Punkt (FTP Upload) bleibt auf NEIN -> Weiter
  • Nun wirds schon etwas entspannter, denn wir müssen nun festlegen, wie unsere Website heißt, eine Emailadresse hinterlegen bzw. ein Passwort für den Admin setzen. Bei einer Neuinstallation würde ich sehr dazu raten, die Beispieldateien zu installieren. (Dies ist standardmäßig bereits so vorbelegt). Ist alles ausgefüllt klicken wir wieder auf Weiter und sehen (hoffentlich 🙂  ):

Es kann nicht fortgefahren werden, solang das Verzeichnis installation nicht gelöscht wird! (Dieses ist ein Sicherheitsmerkmal von Joomla!.)

Also rein in die Konsole:

  • cd /var/www (oder eben der Pfad in dem die Joomlainstallation bei euch liegt)
  • RETURN
  • rm -r installation/
  • RETURN

So, Datei gelöscht. Klickt man jetzt im oben gezeigten Fenster (auf der letzten Seite auf Webiste -> oben rechts) sollte eigentlich die Joomlawebsite – unsere Joomlainstallation- erscheinen.

Über

  • http://localhost/administrator (oder eben eurer Websiteaddi gefolgt von /administrator/) gelangt man zum Adminlogin.
  • Als User ist admin, als Passwort das für den Admin gesetzte Passwort zu verwenden.
  • Wir sollten dann ins Backend gelangen

Bingo, funktioniert ebenfalls!

Sicherheit, abschließende Tätigkeiten

Ändern der Berechtigungen für die configuration.php (444 -> lesen für alle, mehr nicht):

  • cd /var/www/
  • RETURN
  • chmod 444 configuration.php
  • RETURN

Verzeichnisberechtigungen

Dateien sollten immer auf 644 und Ordner immer auf 755 stehen.

safemode

Der safemode (eine PHP Konfigurationseinstellung, die in der php.ini steht) sollte bei Joomla 1.5 auf on geschaltet werden können. Die php.ini findet man unter Debian Lenny im Verzeichnis:

  • /etc/php5/apache2

Wer nachschauen will/muss, kann diese Datei in einem Editor öffnen und durchforsten.

register_globals

Ebenso in der php.ini zu finden ist register_globals, das auf jeden Fall auf off stehen muss!

Absichern des /administrator Zuganges

Als sehr sicher gilt der Einsatz einer sogenannten .htaccess Datei, die – zusätzlich zum normalen Login von Joomla – noch ein Passwort abfragt, bevor die Joomla-Loginseite erscheint. Für den Einsatz der .htaccess Datei ist auch noch eine Datei mit den Benutzerdaten, der berechtigten User+Passwort nötig. Diese Datei wird oft .htpasswd genannt und sollte nicht in einem zugänglichen Bereich der Website gespeichert werden.

Beim erstellen der .htpasswd Datei ist darauf zu  achten, dass das Passwort (zumindest unter Linux) NICHT im Klartext eingegeben werden kann, sondern die Datei und der Inhalt über das Befehlszeilenprogramm htpasswd erstellt wird.

  • htpasswd -c .htpasswd operator
  • RETURN

Erstellt die Datei .htpasswd mit User operater und fragt danach nach dem Passwort für den User. Der Inhalt der Datei sieht dann so aus:

Die dazugehörige .htaccess kann so aussehen:

  • AuthType Basic
  • AuthName „Service „Servicebereich“
  • AuthUserFile /var/.htpasswd (Pfad zur .htpasswd -> absolut!)
  • require valid-user

Wichtig ist, dass die Directory Directive des Apache angepasst wird. Genaugenommen handelt es sich um die Option AllowOverride, die standardmäßig auf None steht und auf All umgestellt werden muß:

  • <Directory /var/www/>
  • Options Indexes FollowSymLinks MulitViews
  • AllowOverride All (Standard = None, dann funktioniert .htaccess nicht!)
  • Order deny, allow
  • allow from all
  • </Directory>

Den Apachen nach der Änderung mittels /etc/init.d/apache2 restart neu starten.

In jedem  Verzeichnis in dem nun die .htaccess Datei liegt, wird vor Zugriffsgewährung Benutzername und Passwort abgefragt.

Weitere Sicherheitsmaßnahmen folgen.

Openoffice vs MS Office

Über ein soeben gefundenes Video, muss ich mich gerade sehr wundern und amüsieren zugleich. Was will man damit erreichen? Kreidet man Openoffice (wobei das jetzt ja abgespalten ist und Libre Office heißt) in besagtem Video doch etliche Schwächen an:

  • Keine bis kaum vorhandene Makrounterstützung für vorhandene Wordmakros -> Wissen wir, aber welcher „Normalanwender“ benötigt wirklich Makros?
  • Langsam -> Kann ich nicht bestätigen
  • Mitarbeiter werden dadurch weniger produktiv -> ???
  • IT Departments sind bei Problemen ratlos und raten zu MS Office
  • Schüler und Studenten haben Probleme, wenn Sie OOO verwenden, weil die Lehrerin die Dokumente nicht öffnen kann *lol*

Was soll denn das werden, wenn es fertig ist? Alles kommt doch klarerweise auf die Anforderungen an. Deshalb sind das für mich kaum haltbare Aussagen. Finde ich geradezu lächerlich.

Falls jemand das Video noch nicht kennt: http://www.youtube.com/watch?v=kzdykNa2IBU

Wie ich gerade auf planet.debianforum.de sehe -> Chrisss war schneller 😉

Ubuntu 10.10 und Virtualbox Gasterweiterungen

Die mit Virtualbox gelieferten Gasterweiterungen (bei mir -> 3.2.6 r63112 und höher) spielen offenbar nicht mit Ubuntu 10.10 zusammen. Trotz offenbar fehlerfreier Installation funktionieren die Zusatzfeatures, die die Gasterweiterungen eigentlich zur Verfügung stellen sollten, nicht.

Die Lösung ist hier die Installation des Paketes virtualbox-ose-guest-x11 über z.B.: Synaptic, apt-get oder einem andreren Paketmanager.

Quelle: http://kaaser.at/630/virtualbox-3-2-8-und-ubuntu-10-10-als-gast-x-server-version-1-9-0-problem/

Ubuntu 10.10 erschienen

Gestern, am 10.10.2010, erschien die neue Ubuntuversion mit Namen „Maverick Meerekat“.  Neben aktuellster Softwarepakete bringt die neue Version u.a. eine neue Systemschriftart, schnellere Installation und Systemstart, hübscheres GUI, verbessertes „Softwarecenter“, Installation von „restricted Treibern“ schon während der Installation, verbesserte Integration von KDE Apps (unter Ubuntu) und einen Installer, der schon während der Standardeingaben wie zum Beispiel Username, Zeitzone und Keyboardlayout mit der Installation beginnt. Wer sich für den Installationsvorgang (in Bildern) interessiert, kann einen Blick auf http://www.linuxinfo.eu/installshow/ubuntu1010 werfen. (Ich habe die Installation hier in Bildern „dokumentiert“.)

Erster Login

Bereits beim Login nach der Installation, merkt man, dass an der Optik gefeilt wurde. Auch programmseitig gibt es naturgemäß Neuerungen. Als Sofortnachrichtendienst hat Empathy den Weg in die Distribution gefunden, mit dem auch Audio/Videochats über MSN Live Messenger möglich sind. Abseits dessen wurde „Ubuntu-One“ in 10.10 integriert und ermöglicht so den direkten Zugriff auf die Onlinefestplatte von „Ubuntu“.

Zur Verwaltung von Fotos gibts nun Shotwell. Fürs durchstöbern des Internet ist Firefox 3.6.10 mit von der Partie. Elektronische Post kann mit Evolution abgerufen werden. Will man etwas Neues installieren, kann das „Softwarecenter“ bemüht werden, welches ebenso wie auch die Optik, in neuem Glanz erstrahlt und auf das ich im Folgenden nun kurz eingehen werde.

Weiterlesen