Lampenstapel auf Ubuntu 18.04 einbauen

Lamp Stack ist eine Sammlung von Open -Source -Software aus Linux -Betriebssystem, Apache, MySQL -Datenbank und PHP. Lassen Sie uns untersuchen, wie der Lampenstapel auf Ubuntu 18.04 installiert wird.

Lampenstapel auf Ubuntu 18.04 Bild 1 einbauen

Der Lampenstack ist eine Sammlung von Open -Source -Software, die normalerweise zusammen auf einem Server installiert ist, um Webanwendungen oder Websites auszuführen. LAMP ist die ersten vier Buchstaben der vier Komponenten, aus denen der Stapel besteht: das Linux -Betriebssystem, den Apache -Webserver, die MySQL -Datenbank und schließlich PHP.

Der folgende Artikel vonTippsführt Sie ausführlich zur Installation anLampenstapel Ubuntu 18.04

Schritt 1 - Installieren Sie Apache und aktualisieren Sie die Firewall

Der Apache -Webserver ist einer der beliebtesten Webserver der Welt. Es ist gut dokumentiert und wird seit langem weit verbreitet, was Apache zu einer großartigen Standardauswahl für das Hosting einer Website macht.

Installieren Sie Apache mit dem Paketmanager von Ubuntu, apt:

$ sudo APT Update

$ sudo apt installieren apache2

Da dies ein Sudo -Befehl ist, werden diese Operationen mit Root -Privilegien ausgeführt. Es wird nach dem Benutzerkennwort zur Überprüfung gefragt.

Sobald Sie Ihr Passwort eingeben, wird APT Ihnen mitgeteilt, welche Pakete es installieren soll und wie viel Speicherplatz sie verwenden werden.

DrückenYund drücken SieEINGEBENUm fortzufahren und die Installation wird fortgesetzt.

Passen Sie die Firewall an, um den Webverkehr zuzulassen

Angenommen, Sie sollten dem Server -Setup -Handbuch befolgt und der UFW -Firewall aktiviert, stellen Sie sicher, dass Ihre Firewall den Datenverkehr von HTTP und HTTPS ermöglicht. Sie können überprüfen, ob UFW ein Anwendungsprofil für Apache wie folgt hat:

$ sudo UFW App -Liste

Ausgabe

Verfügbare Apache -Anwendungen:

Apache

Apache voll

Apache sicher

OpenSsh

Wenn Sie sich ein vollständiges Apache -Profil ansehen, werden Sie feststellen, dass der Datenverkehr zu den Ports 80 und 443:

$ sudo UFW App Info "Apache voll" "

Ausgabe

Profil: Apache voll

Titel: Web Server (HTTP, HTTPS)

Beschreibung: Apache V2 ist die nächste Generation des allgegenwärtigen Apache -Web -Webs

Server

Ports:

80.443/TCP

Ermöglichen Sie den HTTP- und HTTPS -Verkehr:

$ sudo ufw erlauben in "apache full"

Sie können einen sofortigen Test durchführen, um zu überprüfen, ob alles korrekt eingerichtet wird, indem Sie die öffentliche IP -Adresse Ihres Servers in Ihrem Webbrowser besuchen (siehe die Notizen im nächsten Abschnitt, um herauszufinden, was Ihre öffentliche IP -Adresse ist, wenn Sie diese Informationen nicht haben). :

https: // your_server_ip

Sie sehen eine Standard -Ubuntu 18.04 Apache -Website, diese Seite dient Informations- und Testzwecken.

Wenn Sie diese Seite sehen, ist der Webserver richtig installiert und über Ihre Firewall zugegriffen.

Schritt 2 - Installieren Sie MySQL

Nachdem Sie Ihren Webserver ausgeführt haben, besteht der nächste Schritt darin, MySQL zu installieren.

Verwenden Sie den Befehl APT weiter, um MySQL herunterzuladen und zu installieren.

$ sudo apt installieren Sie MySQL-Server

HINWEIS: In diesem Fall müssen Sie vor dem Befehl nicht sudo APT -Update ausführen, da es bereits in dem vorherigen Befehl apache installation ausgeführt wurde. Die auf Ihrem Computer installierten Pakete sind bereits auf dem neuesten Stand.

DrückenYweitermachen.

Sobald die Installation abgeschlossen ist, führen Sie ein Sicherheitsskript aus, das in MySQL vorinstalliert ist, um einige der schädlichen Fehler zu entfernen und den Zugriff auf die Datenbank zu sperren. Starten Sie das interaktive Skript, indem Sie ausführen:

$ sudo mysql_secure_installation

Der Befehl fragt, ob Sie konfigurieren möchtenDas Passwort validieren Plugin.

Notiz:Wenn es aktiviert ist, werden Kennwörter, die nicht mit den angegebenen Kriterien übereinstimmen, von MySQL mit einem Fehler abgelehnt. Dies kann ein Problem sein, wenn Sie ein schwaches Kennwort in Verbindung mit Software verwenden, die mySQL -Benutzeranmeldeinformationen automatisch konfiguriert, z. B. die Ubuntu -Pakete für PHPMYADMIN. Es ist sicher, die Validierung zu deaktivieren, aber Sie sollten immer starke, eindeutige Passwörter für Datenbankanmeldungen verwenden.

Beantworten Sie y für "Ja", um fortzufahren

Validieren Sie das Passwort -Plugin können verwendet werden, um Kennwörter zu überprüfen und die Sicherheit zu verbessern. Es überprüft die Stärke der Kennwörter und ermöglicht es Benutzern, nur ausreichend sichere Passwörter festzulegen.

"Möchten Sie das Validieren von Passwort -Plugin einrichten?" - Möchten Sie das Validieren von Passwort -Plugin einrichten?

Drücken Sie y |Yfür ja und drücken Sie eine Taste für Nein:

Wenn Sie mit „Ja“ antworten, werden Sie aufgefordert, eine Kennwortstärke auszuwählen. Beachten Sie, dass Sie bei der Eingabe von 2 die stärkste Ebene eingeben, wenn Sie versuchen, ein Kennwort festzulegen, das keine Zahlen, Kleinbuchstaben, Großbuchstaben, Sonderzeichen oder allgemeine Wörterbuchwörter enthält.

Drücken Sie y |YFür ja, jeder andere Schlüssel für Nein:

Es gibt Ebenen der Passwortstärke:

Niedrige Länge> = 8

Mittellänge> = 8, numerische, gemischte Gehäuse und Sonderzeichen

Starke Länge> = 8, numerische, gemischte Fall, Sonderzeichen und Wörterbuchdatei

Bitte geben Sie 0 = niedrig, 1 = mittel und 2 = stark ein: 1

Unabhängig davon, ob Sie das Kennwort validieren oder nicht einrichten möchten oder nicht, werden Sie auf Ihrem Server ein Kennwort für den MySQL -Root -Benutzer auswählen und bestätigen. Dies ist ein Verwaltungskonto in MySQL, das die Privilegien erhöht hat. Stellen Sie sich das als Root -Konto für den Server selbst vor (obwohl Sie jetzt ein bestimmtes MySQL -Konto konfigurieren). Stellen Sie sicher, dass es sich um ein starkes, eindeutiges Passwort und nicht leer handelt.

Wenn Sie eine Passwortvalidierung aktiviert haben, werden Sie die Kennwortstärke für das gerade eingegebene Stammkennwort angezeigt, und Ihr Server fragt, ob Sie dieses Kennwort ändern möchten. Wenn Sie mit Ihrem aktuellen Passwort zufrieden sind, geben Sie in der Eingabeaufforderung N für "Nein" ein:

Verwenden des vorhandenen Passworts für Root.

Geschätzte Stärke des Passworts: 100

Ändern Sie das Passwort für Root? ((Drücken Sie Y | Y für Ja, eine andere Taste für Nein): n

Drücken Sie für den Rest Y und drücken Sie die Eingabetaste an jeder Eingabeaufforderung. Dadurch werden einige anonyme Benutzer entfernt und Datenbanken getestet, Remote -Root -Anmeldungen deaktiviert und neue Regeln geladen, sodass MySQL die von Ihnen vorgenommenen Änderungen sofort zur Kenntnis nehmen.

Wenn Sie ein Passwort verwenden möchten, wenn Sie eine Verbindung zu MySQL als Root herstellen, müssen Sie seine Authentifizierungsmethode von Auth_Socket auf mysql_native_password wechseln. Öffnen Sie dazu eine MySQL -Eingabeaufforderung vom Terminal:

$ sudo mysql

Überprüfen Sie anschließend die Authentifizierungsmethode, in der jeder Ihrer MySQL -Benutzerkonten mit dem folgenden Befehl verwendet wird:

MySQL> Benutzer, Authentifizierung_String, Plugin, Host von MySQL.User;

Ausgabe

------------------ --------------------------------- ---------- ----------------------- -----------

| Benutzer | Authentifizierung_String | Plugins | Host |

------------------ --------------------------------- ---------- ----------------------- -----------

| Wurzel | | auth_socket | localhost |

| Mysql.session | *ThisIsnotavalidPassword -thatcanBeUsedhere | mysql_native_password | localhost |

| mysql.sys | *ThisIsnotavalidPassword -thatcanBeUsedhere | mysql_native_password | localhost |

| Debian-Sys-Aaint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |

------------------ --------------------------------- ---------- ----------------------- -----------

4 Zeilen im Set (0,00 Sek.)

In diesem Beispiel können Sie feststellen, dass der Root -Benutzer tatsächlich mit dem Auth_Socket -Plugin authentifiziert wird. Um das Root -Konto mit einem Kennwort zu konfigurieren, führen Sie den folgenden Ändern des Altersbenutzers aus. Stellen Sie sicher, dass Sie das Passwort in ein starkes Passwort Ihrer Wahl ändern:

MySQL> ALTER User Root '@' localhost 'identifiziert mit mysql_native_password nach' Passwort ';

Führen Sie dann Flush -Berechtigungen aus, um dem Server zu sagen, dass er die Zuschusstabellen neu laden und Ihre neuen Änderungen in Kraft setzen:

MySQL> Flush -Privilegien;

Überprüfen Sie die Authentifizierungsmethoden, die von jedem Ihrer Benutzer erneut verwendet werden, um zu bestätigen, dass das Root mit dem Auth_Socket -Plugin nicht mehr authentifiziert wird:

MySQL> Benutzer, Authentifizierung_String, Plugin, Host von MySQL.User;

Ausgabe

------------------ --------------------------------- ---------- ----------------------- -----------

| Benutzer | Authentifizierung_String | Plugins | Host |

------------------ --------------------------------- ---------- ----------------------- -----------

| Wurzel | *3636DACC8616D997782ADD0839F92C1571D6D78F | mysql_native_password | localhost |

| Mysql.session | *ThisIsnotavalidPassword -thatcanBeUsedhere | mysql_native_password | localhost |

| mysql.sys | *ThisIsnotavalidPassword -thatcanBeUsedhere | mysql_native_password | localhost |

| Debian-Sys-Aaint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |

------------------ --------------------------------- ---------- ----------------------- -----------

4 Zeilen im Set (0,00 Sek.)

In dieser Beispielausgabe können Sie sehen, dass der MySQL -Root -Benutzer mithilfe eines Kennworts authentifiziert hat. Sobald Sie dies auf Ihrem eigenen Server bestätigt haben, können Sie die MySQL -Shell verlassen:

MySQL> Beenden

Zu diesem Zeitpunkt ist Ihr Datenbanksystem jetzt eingerichtet, und Sie können mit der Installation von PHP, der endgültigen Komponente des Lampstacks, fortfahren.

Schritt 3 - PHP installieren

Verwenden Sie erneut die APT, um PHP zu installieren. Darüber hinaus kann der PHP -Code mit einigen Helferpaketen auf einem Apache -Server ausgeführt und mit Ihrer MySQL -Datenbank kommuniziert:

$ sudo apt installieren Sie PHP libapache2-mod-php php-mysql

Sie können also PHP ohne Probleme installieren.

In den meisten Fällen möchten Sie die Art und Weise ändern, wie Apache Dateien dient, wenn ein Verzeichnis angefordert wird. Wenn ein Benutzer ein Verzeichnis vom Server anfordert, sucht Apache zuerst nach einer Datei namens Index.html. Wenn Sie einen Webserver anfordern, möchten Sie PHP -Dateien gegenüber anderen Dateien priorisieren. Lassen Sie Apache zuerst nach der Index.php -Datei suchen.

Geben Sie dazu den folgenden Befehl ein, um die Datei Dir.conf in einem Texteditor mit Root -Berechtigungen zu öffnen:

$ sudo nano /etc/apache2/mods-enabled/dir.conf

Die folgende Befehlszeile wird angezeigt:

/etc/apache2/mods-enabled/dir.conf

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

Verschieben Sie die PHP -Indexdatei (oben hervorgehoben) nach der Beschreibung der Verzeichnisindex wie folgt auf den ersten Ort:

/etc/apache2/mods-enabled/dir.conf

DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

Wenn Sie fertig sind, speichern und schließen Sie die Datei, indem Sie Strg X drücken. Bestätigen Sie das Speichern, indem Sie y eingeben, und drücken Sie dann die Eingabetaste, um den Speicherort der Datei zu überprüfen.

Starten Sie dann den Apache -Webserver neu, damit Ihre Änderungen erkannt werden. Tun Sie dies, indem Sie den folgenden Befehl eingeben:

$ sudo systemctl starten Sie Apache2 neu

Sie können auch den Status des Apache2 -Dienstes mit SystemCTL überprüfen:

$ sudo systemctl Status Apache2

Probenausgabe

● Apache2.service - LSB: Apache2 Webserver

Geladen: geladen (/etc/init.d/apache2; schlecht; Anbieter voreingestellt: aktiviert)

Drop-in: /lib/systemd/system/apache2.service.d

└─APACHE2-SYSTEMD.CONF

Aktiv: aktiv (laufend) seit dem TUE 2018-04-23 14:28:43 EDT; Vor 45s

DOCS: MAN: SYSTEMD-SYSV-Generator (8)

Prozess: 13581 execStop =/etc/init.d/apache2 STOP (Code = beendet, Status = 0/Erfolg)

Prozess: 13605 execstart =/etc/init.d/apache2 start (Code = beendet, Status = 0/Erfolg)

Aufgaben: 6 (Grenze: 512)

CGGROUP: /System.lice/apache2.service

├─13623/usr/sbin/apache2 -k Start

├─13626/usr/sbin/apache2 -k Start

├─13627/usr/sbin/apache2 -k Start

├─13628/usr/sbin/apache2 -k Start

├─13629/usr/sbin/apache2 -k Start

└─13630/usr/sbin/apache2 -k Start

Um die Funktionalität von PHP zu verbessern, haben Sie die Möglichkeit, eine Reihe zusätzlicher Module zu installieren. Um die verfügbaren Optionen für PHP -Module und Bibliotheken anzuzeigen, leiten Sie die Ergebnisse der APT -Suche nach weniger, einem Pager, mit dem Sie durch die Ausgabe anderer Befehle scrollen können:

$ APT-Suche php- | weniger

Verwenden Sie die Pfeiltasten, um sich nach oben und unten zu bewegen und auf Q zu drücken, um das Beenden zu beenden.

Das Ergebnis zeigt alle optionalen Komponenten an, die Sie installieren können. Es gibt Ihnen eine kurze Beschreibung für jede Komponente wie SO:

Bandwiddhd-PGSQL/Bionic 2.0.1 CVS20090917-10ubuntu1 AMD64

Verfolgt die Verwendung von TCP/IP und erstellt HTML -Dateien mit Grafiken

Bluefish/Bionic 2.2.10-1 AMD64

Erweiterter GTK -Texteditor für Web- und Softwareentwicklung

Cacti/Bionic 1,1.38 DS1-1 All

Webschnittstelle für die Grafik von Überwachungssystemen

Ganglia-Webfrontend/Bionic 3.6.1-3 All

Cluster -Überwachungs -Toolkit - Web -Front -End

golang-github-mungnwon-cae-dev/bionic 0.0 ~ Git20160715.0.c6aac99-4 All

PHP-ähnliche Komprimierung und Archivverlängerungen in Go

Haserl/Bionic 0.9.35-2 AMD64

CGI -Skriptprogramm für eingebettete Umgebungen

KDevelop-Php-Docs/Bionic 5.2.1-1ubuntu2 All

Übergangspaket für KDevelop-Php

KDevelop-Php-docS-L10N/Bionic 5.2.1-1ubuntu2 All

Übergangspaket für KDevelop-Php-L10N

:

Um mehr darüber zu erfahren, was jedes Modul tut, können Sie im Internet nach weiteren Informationen zu ihnen suchen. Alternativ können Sie die lange Beschreibung des Pakets durch Eingabe sehen:

$ apt show package_name

Zusammen mit einer Fülle anderer Informationen finden Sie Folgendes:

Ausgabe

Beschreibung: Befehlszeile Interpreter für die Php-Skriptsprache (Standard)

Dieses Paket enthält den Befehlsinterpreter/usr/bin/PHP, nützlich für

Testen von PHP -Skripten aus einer Shell oder der Ausführung allgemeiner Shell -Skriptaufgaben.

.

PHP (rekursives Akronym für PHP: Hypertext-Präprozessor) ist ein weit verbreiteter

Open Source Allzweck-Skriptsprache, die besonders geeignet ist

für die Webentwicklung und kann in HTML eingebettet werden.

.

Dieses Paket ist ein Abhängigkeitspaket, das von Ubuntus Standardeinstellung abhängt

PHP -Version (derzeit 7.2).

Wenn Sie nach der Recherche für die Installation eines Pakets entscheiden, können Sie dies mit dem APT -Installationsbefehl wie für andere Software tun.

Wenn Sie PHP-CLI wählen, können Sie eingeben:

sudo apt installieren php-cli

Wenn Sie mehr als ein Modul installieren möchten, listen Sie jedes Modul auf, das durch Leerzeichen getrennt ist, im Befehl APT -Installation wie folgt:

$ sudo APT Installation Package1 Package2.

Zu diesem Zeitpunkt ist Ihr Lampenstapel installiert und konfiguriert. Bevor Sie jedoch weitere Änderungen vornehmen oder eine Anwendung bereitstellen, ist es nützlich, Ihre PHP -Konfiguration proaktiv zu testen, falls Probleme angegangen werden müssen.

Nachdem Sie den Lampenstapel vollständig installiert haben, haben Sie viele Optionen, um als nächstes zu tun. Im Wesentlichen haben Sie eine Plattform installiert, auf der Sie die meisten Arten von Websites und Websoftware auf Ihrem Server ausführen können.

Viel Glück!

4 ★ | 2 Stimmen