LAMP System auf VPS installieren
LAMP auf CentOS 7
Der LAMP-Stack ist die Grundlage für moderne Webseiten wie Blogs und Onlineshops. Die Software-Bestandteile sind alle kostenlos erhältlich und gut gepflegt – kein Wunder also, dass der Großteil moderner Webseiten aus diesen besteht.
Kurz noch zum Betriebssystem – wir verwenden in diesem Tutorial nicht CentOS 8, da es kurzfristig mit einem sehr kurzfristigen End of Life (EOL) versehen wurde. Bereits Ende 2021 ist für die neuere Version Schluss, was für Server problematisch ist. CentOS 7 ist zwar etwas in die Jahre gekommen, wird aber bis Ende 2024 noch mit Updates versorgt – Du bist also auf der sicheren Seite mit unserem VPS.
Inhaltsverzeichnis
- CentOS 7 auf deinem easyname VPS installieren
- Was ist LAMP?
- Apache auf CentOS 7 installieren
- MariaDB auf CentOS 7 installieren
- PHP 7 auf CentOS 7 installieren
- LAMP-Stack vollständig installiert
Das Setup des VPS besteht aus:
- VPS General Purpose
- 1.200 GB SSD
- 36 GB RAM
- 16 CPU vCore
Dabei handelt es sich um ein Testsystem, dass folgende Software Setup kann auch auf kleineren Systemen installiert werden.
CentOS 7 auf deinem easyname VPS installieren
Eventuell ist ein anderes System vorinstalliert. Mit den folgenden einfachen Schritten kannst Du ein minimales CentOS 7 installieren, um diesem Tutorial weiter zu folgen.
Zunächst gehst du im Easyname Login unter „Server“ und klickst auf „Login“, um zum easyname-Cloudpit zu gelangen. Hier klickst Du oben im Menü auf „CloudServer -> Übersicht“.
Hier wählst du links „Betriebssystem“ und wählst in der Mitte „CentOS 7 / Minimal / 64 bit“ aus. Plesk wird in diesem Fall nicht benötigt. Trage dann noch ein sicheres root-Passwort ein, bestätige es und klicke anschließend auf den großen roten Button „Betriebssystem installieren“.
Bestätige nun noch die Warnung, die besagt, dass alle Daten unwiderruflich gelöscht werden. Auf einem neuen Server ist das kein Problem – solltest du bereits Daten auf dem Server haben, werden diese überschrieben. Du solltest sie vorher also extern sichern, falls du sie noch benötigst.
Was ist LAMP?
LAMP ist die Abkürzung für Linux, Apache, MySQL und PHP. Also Betriebssystem, Webserver, Datenbankserver und Skriptsprache, um alles miteinander zu verbinden. Der Webserver erhält also die Informationen aus der Datenbank, die über die Skriptsprache abgerufen werden.
Apache auf CentOS 7 installieren
Zuerst solltest du sicherstellen, dass deine Pakete auf dem neuesten Stand sind. Hierzu führst du diesen Befehl im Terminal aus:
sudo yum update
Nachdem alles aktualisiert ist, prüfst du, welche Version von Apache2 installiert wird. Derzeit ist Version 2.4 optimal:
Hier sieht es gut aus, deswegen kann die Installation nun gestartet werden:
sudo yum install httpd -y
Nach etwas Wartezeit siehst du die Erfolgsmeldung. Alle benötigten Abhängigkeiten werden automatisch aufgelöst und der Webserver installiert.
Jetzt muss der Server noch gestartet werden, dies erledigst du über den Befehl
sudo systemctl start httpd.service
Keine Fehlermeldung? Super! Jetzt überprüfst du direkt, ob alles geklappt hat. Rufe dazu die IP deines Webservers auf. Siehst du die folgende Seite, hat alles funktioniert:
Alles läuft? Dann ist es an der Zeit, den Webserver bei jedem Systemstart gleich mit aufzurufen:
sudo systemctl enable httpd.service
Wortkarg wie Linux ist, gibt es nur bei Fehlern eine Rückmeldung. Kommt nichts, hat der Befehl funktioniert und bei allen Neustarts fährt auch der Apache mit hoch.
MariaDB auf CentOS 7 installieren
Widmen wir uns nun der Datenbank. Bei CentOS 7 ist MariaDB in den Paketquellen enthalten. MariaDB ist ein Community-fork von MySQL und möchte dadurch die OpenSource-Entwicklung fortführen. MariaDB wird immer öfter von großen Systemen, wie WordPress, Plesk oder Onlineshop-Systeme ermöglicht. MySQL wurde an Oracle verkauft und da sieht die Community das Problem, dass eine ClosedSource-Variante kommen könnte. Für die Webprojekte, die die Datenbank nutzen, ist es in der Regel aber egal, für welches System du dich entscheidest.
In diesem Tutorial ist es MariaDB 10.4, was in den Paketquellen als Version 5.5 angegeben ist. Auch diese Version ist bis 2024 sicher.
Um MariaDB zu installieren, führst du diesen Befehl aus:
sudo yum install mariadb-server mariadb
Nach einem freundlichen „Complete!“ kannst Du den Datenbankserver starten:
sudo systemctl start mariadb
Jetzt ist es noch wichtig, den Server abzusichern. In der Standardinstallation ist der Server auch von außen erreichbar, was in den meisten Fällen unerwünscht ist. Es wurde bereits ein Sicherungsscript mitgeliefert, das Du so ausführst:
sudo mysql\_secure\_installation
Als erstes wirst du nach dem root-Passwort des Datenbank(!)-Servers gefragt. Da noch keines vergeben ist, kannst du es einfach mit ‚Enter‘ bestätigen. Im nächsten Schritt wird ein neues root-Passwort für den Datenbankserver erfragt – erstelle nun eines, das möglichst keinem anderen Passwort entspricht.
Die nächsten Fragen kannst du bestätigen. Es geht darum, anonyme Benutzer aus der Datenbank zu entfernen, entfernte Logins durch den root-Nutzer zu unterbinden und die Test-Datenbank zu löschen. Diese Maßnahmen werden nur vorgemerkt, deswegen ist der letzte Schritt noch ein Neuladen der Datenbanken und Rechte.
Auch hierfür aktivierst du den automatischen Neustart:
sudo systemctl enable mariadb.service
PHP 7 auf CentOS 7 installieren
Mittlerweile ist zwar auch PHP 8 herausgekommen, aber einige der großen Webprojekte unterstützen es noch nicht, bzw. nicht vollständig. Daher gehen wir hier auf PHP 7.4 ein. Dazu sind einige Zwischenschritte notwendig.
Zuerst fügst du das Repository hinzu:
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
Nach einer freundlichen „Complete!-Meldung ist PHP 7.4 bereit für die Installation. Diese führst du so aus:
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php74
sudo yum install php php-mysql
Durch den Zusatz von „php-mysql“ wird sichergestellt, dass PHP auch mit dem MariaDB-Server kommunizieren kann. PHP kann auch auf der Konsole verwendet werden, für deinen Webserver mit dynamischen Inhalten ist aber die Kommunikation aller Komponenten obligatorisch.
Ist alles installiert, kannst du nun den Webserver neustarten, damit auch dieser von PHP und MariaDB Kenntnis hat:
sudo systemctl restart httpd.service
Erscheint keine Fehlermeldung, hat alles funktioniert und dein LAMP-Server ist nun einsatzbereit.
Abschließend solltest du noch kurz prüfen, ob der Server wirklich mit PHP arbeitet. Dazu erstellst du im Verzeichnis /var/www/html/ (s. Bild 2) eine Datei „phpinfo.php“ mit folgendem Inhalt:
<?php
phpinfo();
Mit <?php gibt die Datei dem Webserver die Info, dass nun PHP-Code folgt. Dieser Code besteht hier nur aus dem einfachen Befehl phpinfo() – abgeschlossen wird er mit dem Semikolon ;.
Rufst du nun die Seite über http://deine_ip/phpinfo.php auf, sollte das Ergebnis so aussehen:
Ganz oben steht die installierte PHP-Version, gefolgt von ein paar Informationen zu deinem Server. Diese Infoseite ist meist interessant, wenn sich bestimmte Anwendungen, die PHP verlangen, Probleme bereiten.
LAMP-Stack vollständig installiert
Du hast nun alle Schritte unternommen, um deinen Webserver für moderne Webseiten verfügbar zu machen. Zur einfacheren Datenbankverwaltung installieren viele Administratoren noch Tools wie phpmyadmin – darüber können einfach Datenbanken, Benutzer und Rechte verwaltet werden. Für jede Anwendung solltest du auch eine eigene Datenbank verwenden.
Wir wünschen dir nun viel Spaß mit deinem neuen Webserver!
easyname ist ein erfolgreicher und bekannter österreichischer Anbieter von Cloud-Services, Domains sowie Webhosting bis hin zur Server-Infrastruktur und gehört seit 2020 zur dogado group.
Das Unternehmen ist seit 2006 in Österreich erfolgreich am Markt und inzwischen auch in vielen anderen Ländern weltweit tätig. Sowohl das Team als auch die gehosteten Daten befinden sich in Österreich.
easyname liegt die Datensicherheit besonders am Herzen und stellt daher zu jedem Hosting-Paket auch kostenlose SSL-Zertifikate zur Verfügung. Mit intuitiven Tools zur Erstellung von Websites und Webshops und mit Easy Install Apps wie WordPress, Joomla oder PrestaShop können alle easyname-Kunden schnell in die Online-Welt einsteigen.