2024-06-06 13:41 Doba čtení: 8 min

Jak nainstalovat Linux, Apache, MariaDB, PHP (LAMP) stack na Debian 11

Sestava LAMP je populární kombinací softwarových nástrojů s otevřeným zdrojovým kódem. Zahrnuje operační systém Linux, webový server Apache, databázový systém MariaDB a programovací jazyk PHP. Tato konfigurace je široce využívána pro webhosting a vývoj webových aplikací, a to díky své stabilitě, bezpečnosti a možnosti přizpůsobení.

V tomto průvodci se zaměříme na proces instalace a konfigurace serveru LAMP na systému Debian 11. Krok za krokem si ukážeme, jak instalovat a nastavit každý komponent této sestavy a jak ověřit jejich správnou funkčnost.

Kroky instalace serveru LAMP

1. Aktualizace systému

Před zahájením instalace jakéhokoli softwaru je klíčové aktualizovat systém. Zajistíte tím, že máte k dispozici nejnovější bezpečnostní záplaty a opravy chyb:

sudo apt update && sudo apt upgrade

2. Instalace webového serveru Apache

Webový server Apache je dostupný v repozitářích Debianu. Instalujte jej pomocí následujícího příkazu:

sudo apt install apache2

Po instalaci aktivujte službu Apache a nastavte ji tak, aby se spouštěla automaticky při startu systému:

sudo systemctl start apache2 sudo systemctl enable apache2

3. Instalace databázového serveru MariaDB

Databázový server MariaDB je rovněž součástí repozitářů Debianu. Nainstalujte jej následujícím příkazem:

sudo apt install mariadb-server

Stejně jako u Apache, i službu MariaDB je nutné aktivovat a nastavit pro automatické spouštění při startu systému:

sudo systemctl start mariadb sudo systemctl enable mariadb

4. Zabezpečení databáze MariaDB

Po instalaci databáze MariaDB je nutné ji zabezpečit. To zahrnuje nastavení hesla pro uživatele root a odstranění anonymního uživatele:

sudo mysql_secure_installation

Následujte instrukce na obrazovce pro nastavení hesla root a odstranění anonymních uživatelů.

5. Instalace PHP

Programovací jazyk PHP je k dispozici v repozitářích Debianu. Nainstalujte jej společně s modulem pro Apache následujícím příkazem:

sudo apt install php libapache2-mod-php

Po instalaci restartujte službu Apache, aby se načetly PHP moduly:

sudo systemctl restart apache2

6. Testování funkčnosti serveru LAMP

Pro ověření, zda server LAMP funguje správně, vytvořte soubor info.php v kořenovém adresáři webového serveru Apache:

sudo nano /var/www/html/info.php

Do tohoto souboru vložte následující kód:

Uložte a zavřete soubor. Poté můžete ve webovém prohlížeči navštívit adresu http:///info.php. Zobrazí se vám informace o konfiguraci PHP.

Zabezpečení serveru LAMP

Po úspěšné instalaci serveru LAMP je nezbytné zajistit jeho bezpečnost. Zde je několik doporučených postupů:

  • Používejte firewall: Firewall chrání váš server před neoprávněným přístupem. Nainstalujte a nakonfigurujte firewall, jako je například UFW.
  • Udržujte software aktuální: Pravidelně aktualizujte operační systém, webový server, databázový server a PHP, abyste opravili bezpečnostní nedostatky.
  • Používejte silná hesla: Ujistěte se, že pro uživatele root databáze MariaDB a pro uživatele Apache máte nastavena komplexní hesla.
  • Zakazujte nepotřebné služby: Zakazujte služby, které aktivně nepoužíváte, jako je například SSH, pokud jej nevyužíváte pro vzdálený přístup.
  • Používejte SSL/TLS: Nakonfigurujte svůj webový server tak, aby používal protokol SSL/TLS pro šifrování komunikace mezi prohlížečem a serverem.

Závěrem

Instalace a konfigurace serveru LAMP na Debianu 11 je relativně jednoduchý proces. Sledováním kroků v tomto průvodci budete schopni úspěšně nastavit server LAMP a začít vyvíjet a spouštět své webové aplikace. Nezapomeňte věnovat pozornost zabezpečení serveru a implementujte doporučené postupy pro ochranu dat před neoprávněným přístupem a útoky.

Často kladené otázky

1. Jaké jsou minimální systémové požadavky pro instalaci serveru LAMP na Debian 11?

Server LAMP vyžaduje minimálně 512 MB RAM a 2 GB volného místa na disku.

2. Jak mohu odinstalovat server LAMP?

Pro odinstalování serveru LAMP použijte následující příkazy:

sudo apt remove apache2 mariadb-server php libapache2-mod-php sudo apt purge apache2 mariadb-server php libapache2-mod-php sudo rm -rf /var/www/html

3. Jak mohu nastavit vlastní port pro webový server Apache?

Pro nastavení vlastního portu pro Apache upravte soubor /etc/apache2/ports.conf a změňte port uvedený v direktivě Listen. Poté restartujte Apache:

sudo nano /etc/apache2/ports.conf sudo systemctl restart apache2

4. Jak mohu povolit vzdálený přístup k databázi MariaDB?

Pro povolení vzdáleného přístupu k MariaDB přidejte IP adresu klienta do seznamu povolených hostitelů v souboru /etc/mysql/mariadb.conf.d/50-server.cnf a restartujte MariaDB:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf sudo systemctl restart mariadb

5. Jak mohu změnit heslo uživatele root databáze MariaDB?

Pro změnu hesla uživatele root se připojte k databázi jako root a změňte heslo pomocí příkazu ALTER USER:

mysql -u root -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; FLUSH PRIVILEGES;

6. Jak mohu nainstalovat a nakonfigurovat PHPMyAdmin?

PHPMyAdmin je webové rozhraní pro správu databáze MariaDB. Pro instalaci použijte následující příkaz:

sudo apt install phpmyadmin

Poté nakonfigurujte Apache pro obsluhování PHPMyAdmin:

sudo nano /etc/apache2/conf-available/phpmyadmin.conf sudo a2enconf phpmyadmin sudo systemctl restart apache2

7. Jak mohu optimalizovat výkon serveru LAMP?

Pro optimalizaci výkonu serveru LAMP můžete:

  • Použít server s více procesorovými jádry a větší kapacitou RAM.
  • Využít rychlý úložný systém, jako je SSD.
  • Implementovat caching, například pomocí Redis nebo Memcached.
  • Nakonfigurovat Apache pro efektivnější zpracování požadavků.
  • Optimalizovat databázové dotazy.

8. Mohu použít server LAMP i na jiných distribucích Linuxu?

Ano, server LAMP lze provozovat i na jiných distribucích Linuxu jako je Ubuntu, CentOS nebo Fedora. Příkazy pro instalaci a konfiguraci se ale mohou lišit.

9. Jaké jsou alternativy k serveru LAMP?

Kromě serveru LAMP existují další oblíbené webové stacky, jako jsou:

  • LEMP stack (Linux, Nginx, MariaDB, PHP)
  • MEAN stack (MongoDB, Express.js, Angular, Node.js)
  • JAMstack (JavaScript, API, Markup)
Tomáš Dvořák
Autor
Czechia

Píše o bezpečnosti, webu a chytrých službách s důrazem na srozumitelnost.

Předchozí článek
Přepisování vs. přetěžování v Javě
Další článek
Modul python typing - Efektivní použití kontroly typů