Ubuntu 16.04 Xenial Xerus
Ubuntu 14.04 Trusty Tahr
Ubuntu 12.04 Precise Pangolin
Dieser Artikel ist insbesondere für Einsteiger gedacht und beschreibt kurz und knapp, wie man unter Ubuntu einen einfachen LAMP-Server mit Apache, MySQL und PHP installiert. Mehr Details zu diesen drei Komponenten sind den jeweiligen Einzelartikeln zu entnehmen.
Alle benötigten Komponenten können aus den offiziellen Paketquellen installiert [1] werden. Alternativ kann man sich das Programm tasksel installieren und dort die gewünschte Aufgabe auswählen. Hier können neben Apache, MySQL und PHP noch weitere Server-Komponenten installiert werden.
Während der Installation wird in jedem Fall ein Kennwort für den Datenbank-Administrator root
abgefragt. Dieses Kennwort bitte sorgfältig wählen und vor allem sicher verwahren. Und den Datenbank-Administrator bitte nicht mit dem gleichnamigen Systemadministrator-Konto root
verwechseln. Es handelt um zwei völlig unterschiedliche Benutzer, auch wenn der Name identisch ist.
apache2 (Apache 2.4)
libapache2-mod-php7.0
php7.0
php7.0-mysql
mysql-server
mit apturl
Paketliste zum Kopieren:
sudo apt-get install apache2 libapache2-mod-php7.0 php7.0 php7.0-mysql mysql-server
sudo aptitude install apache2 libapache2-mod-php7.0 php7.0 php7.0-mysql mysql-server
apache2 (ab Ubuntu 13.10 Apache 2.4, sonst 2.2)
libapache2-mod-php5
php5
php5-mysql
mysql-server
mit apturl
Paketliste zum Kopieren:
sudo apt-get install apache2 libapache2-mod-php5 php5 php5-mysql mysql-server
sudo aptitude install apache2 libapache2-mod-php5 php5 php5-mysql mysql-server
Für einen ersten Test mit einem Webbrowser die Internet-Adresse http://localhost
oder http://IP-ADRESSE
aufrufen. Es sollte folgendes ausgegeben werden:
It works!
This is the default web page for this server.
The web server software is running but no content has been added, yet.
Wenn diese Seite nicht angezeigt wird, wurde Apache vermutlich noch nicht gestartet. In diesem Fall den Webserver mit folgendem Befehl starten [2][3]:
sudo service apache2 start
Die Inhalte für den Server werden in einem als "document root" bezeichneten Verzeichnis abgespeichert. Je nach Apache- bzw. Ubuntu-Version ist das der folgende Ordner:
Apache 2.4 (ab Ubuntu 13.10): /var/www/html/
Apache 2.2 (bis Ubuntu 13.04): /var/www/
Für das Speichern in diesem Ordner werden jedoch Root-Rechte benötigt. Da dies unpraktisch sein kann, sollten nicht die Rechte für dieses Verzeichnis angepasst, sondern stattdessen der gewünschte Benutzer der Gruppe www
hinzufügt werden. Wie das geht, wird im Artikel Apache beschrieben.
Die Datei phpinfo.php mit einem beliebigen Editor [4] im "document root" anlegen und den folgenden Inhalt ergänzen:
1 2 3 | <?php phpinfo(); ?> |
Anschließend im Webbrowser die Adresse http://localhost/phpinfo.php
oder http://IP-ADRESSE/phpinfo.php
aufrufen. Es werden alle Informationen zur verwendeten PHP-Version und -Einstellungen aufgeführt. Nach erfolgreichem Test bitte wieder entfernen, um diese Informationen nicht Außenstehenden zur Verfügung zu stellen.
Nachdem nun ein LAMP-Server grundsätzlich einsatzbereit ist, kann man sich mit der praktischen Nutzung wie Webentwicklung oder Webapplikationen wie beispielsweise einer Bildergalerie beschäftigen. Wer einen aus dem Internet erreichbaren Webserver betreibt, sollte sich unbedingt auch mit dem Thema "Server-Sicherheit" auseinandersetzen. Anregungen dazu sind den nachfolgend genannten Links zu entnehmen.
Bei Webapplikationen stellt sich häufig die Frage, ob man diese über die offiziellen Paketquellen installieren soll. Leider sind die allermeisten – wenn überhaupt in den Paketquellen enthalten – der Sektion universe
zugeordnet, was bedeutet, dass diese keine Sicherheitsupdates erhalten. So wandelt sich der Vorteil einer einfachen Installation in den entscheidenden Nachteil, dass die spätere Pflege unmöglich wird. Was bei einem privaten, nicht mit dem Internet verbundenen Server noch zu tolerieren ist, ist bei einem öffentlichen Webserver ein absolutes Tabu. In der Praxis sollte man daher eine manuelle Installation bevorzugen und prüfen, welche Mechanismen jeweils angeboten werden, um die betreffende Software aktuell zu halten.
Insbesondere bei dezidierten Servern, die ohne Monitor, Tastatur und Maus betrieben werden, ist es praktisch, schnell einen Blick auf den aktuellen Serverstatus zu werfen, ohne auf die Kommandozeile zurückgreifen zu müssen. Während PhpSysInfo und Monit seit Langem zum Standard-Inventar gehören, bietet Linux Dash eine moderne grafische Oberfläche. Wächst der Serverpark und damit auch die Ansprüche, sind weitere Anregungen im Artikel Netzwerk-Monitoring zu finden.
Apache/Sicherheit Module zu Härtung des Webservers gegen Angriffe von außen
fail2ban - DoS-Angriffe auf Server-Dienste blockieren
Apache/SSL - SSL-Zertifikat für verschlüsselte Verbindungen einrichten
MySQL/Werkzeuge - Programme zur Verwaltung von Datenbanken
Instant Webserver - einfache Webserver ohne MySQL und PHP
Serverdienste Übersichtsseite
Apache - MySQL - PHP - im engl. Ubuntu-Wiki
Einrichten eines lokalen LAMP-Servers - Blogbeitrag, 09/2014
LAMP Switch - Apache über ein Panel-Symbol starten/stoppen
Diese Revision wurde am 8. November 2016 18:41 von aasche erstellt.