Как установить стек LEMP на Debian 11 Bullseye
LEMP — это набор программного обеспечения с открытым исходным кодом, обычно используемого для обслуживания веб-приложений. Термин LEMP — это аббревиатура, которая представляет собой конфигурацию операционной системы Linux с веб-сервером Nginx (произносится как engine-x , отсюда буква E в аббревиатуре), с данными сайта, хранящимися в базе данных MySQL или MariaDB, и динамическим содержимым, обрабатываемым PHP . который широко используется для размещения обширных веб-сайтов из-за его производительности и масштабируемости.
Обновить операционную систему
Обновите операционную систему Debian , чтобы убедиться, что все существующие пакеты обновлены:
sudo apt update && sudo apt upgrade -y
Установить зависимости
Первым шагом является установка зависимостей, необходимых во время установки, используйте следующую команду для установки или проверки их наличия.
sudo apt-get install software-properties-common dirmngr ca-certificates apt-transport-https nano wget curl -y
Установите последнюю версию Nginx — (стек LEMP)
Чтобы начать установку стека LEMP, вам необходимо установить веб-сервер Nginx . Метод заключается в установке последней основной или стабильной версии Nginx из репозитория Ondřej Surý , чтобы иметь самое последнее программное обеспечение. Многие пользователи Ubuntu знают его PPA, и вы можете сделать то же самое в Debian.
Чтобы использовать последнюю версию основной или стабильной версии Nginx, вам необходимо сначала импортировать репозиторий.
Вариант 1. Импорт основного репозитория:
curl -sSL https://packages.sury.org/nginx-mainline/README.txt | sudo bash -x
Вариант 2. Импорт стабильного репозитория:
curl -sSL https://packages.sury.org/nginx/README.txt | sudo bash -x
Обновите свой репозиторий, чтобы отразить новое изменение:
sudo apt update
Теперь, когда вы установили репозиторий Nginx и обновили список репозиториев, установите Nginx:
sudo apt install nginx-core nginx-common nginx nginx-full
Теперь проверьте, установлена ли последняя версия Nginx из репозитория Ondřej Surý с помощью команды политики apt-cache.
apt-cache policy nginx
Затем включите Nginx при загрузке системы:
sudo systemctl enable nginx
Наконец, убедитесь, что Nginx работает.
systemctl status nginx
Установите последнюю версию сервера MariaDB
Импортируйте репозиторий MariaDB 10.6/10.7, используя официальный скрипт Bash
Официальный сценарий bash часто является лучшим и самым простым способом установки MariaDB в Debian 11, поскольку вы будете получать мгновенные обновления, если будут доступны какие-либо средства безопасности или новые функции. Этот же метод можно использовать для установки альтернативных версий, таких как MariaDB 10.5, а также для установки MariaDB 10.8 и выше в будущем.
Вариант 1. Импорт репозитория MariaDB 10.6:
curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.6 --skip-maxscale --skip-tools
Вариант 2. Импорт репозитория MariaDB 10.7:
curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash -s -- --mariadb-server-version=10.7 --skip-maxscale --skip-tools
Если команда не удалась, вы, скорее всего, забыли установить пакет curl.
sudo apt install curl -y
Затем обновите список репозиториев APT.
sudo apt update
Чтобы установить MariaDB, вам необходимо установить клиентский и серверный пакеты. Это можно сделать следующим образом:
sudo apt install mariadb-server mariadb-client
Проверьте статус службы MariaDB 10.7
Теперь вы установили MariaDB и можете проверить состояние программного обеспечения базы данных с помощью следующей команды systemctl:
systemctl status mariadb
По умолчанию вы обнаружите, что статус MariaDB активирован. Если нет, запустите MariaDB, используя следующую команду:
sudo systemctl start mariadb
Чтобы включить MariaDB при запуске системы:
sudo systemctl enable mariadb
Чтобы отключить MariaDB при запуске системы:
sudo systemctl disable mariadb
Чтобы перезапустить службу MariaDB:
sudo systemctl restart mariadb
Защитите MariaDB с помощью скрипта безопасности
При установке новой версии MariaDB настройки по умолчанию считаются слабыми по большинству стандартов и вызывают опасения, что потенциально могут допустить вторжение или использование хакерами. Решение состоит в том, чтобы запустить сценарий безопасности установки вместе с установкой MariaDB .
Сначала используйте следующую команду для запуска (mysql_secure_installation) :
sudo mysql_secure_installation
Далее следуйте ниже:
- Установка пароля для учетных записей root .
- Удаление корневых учетных записей, доступных из-за пределов локального хоста.
- Удаление учетных записей анонимных пользователей.
- Удаление тестовой базы данных, к которой по умолчанию могут обращаться анонимные пользователи.
Установите последнюю версию PHP (PHP-FPM)
Последняя часть руководства будет посвящена установке PHP , который является серверной частью, которая взаимодействует между Nginx и MariaDB, посредником. PHP 8.0 становится относительно стабильным, и теперь доступны более новые версии PHP 8.1.
Импорт PHP-репозитория
Первый шаг — импортировать и установить ключ GPG перед добавлением репозитория.
В вашем терминале используйте следующую команду.
curl -sSL https://packages.sury.org/php/README.txt | sudo bash -x
Эта команда установит репозиторий PHP и обновит репозиторий APT.
После запуска команды обновления вы можете заметить, что некоторые пакеты требуют обновления, обязательно сделайте это, прежде чем продолжить.
sudo apt upgrade
Установить выбор PHP 7.4 / 8.0 / 8.1 FPM
Nginx не содержит встроенной обработки PHP, как другие веб-серверы, такие как Apache. Для работы с файлами PHP вам потребуется установить PHP-FPM «менеджер процессов fastCGI».
Сначала проверьте наличие обновлений в вашей системе и установите PHP-FPM, изначально установив необходимые пакеты PHP.
Чтобы установить PHP-FPM 7.4:
sudo apt install php7.4 php7.4-fpm php7.4-cli php7.4-curl php7.4-zip php7.4-mysql -y
Чтобы установить PHP-FPM 8.0:
sudo apt install php8.0 php8.0-fpm php8.0-cli php8.0-curl php8.0-zip php8.0-mysql -y
Чтобы установить PHP-FPM 8.1:
sudo apt install php8.1 php8.1-fpm php8.1-cli php8.1-curl php8.1-zip php8.1-mysql -y
После установки служба PHP-FPM запускается автоматически, и вы можете проверить ее состояние, чтобы убедиться, что она работает нормально.
systemctl status php8.1-fpm
В качестве напоминания, чтобы узнать, какая версия PHP-FPM установлена в вашей системе, используйте следующую команду.
php --version
Чтобы протестировать PHP-FPM с веб-сервером Nginx, вы должны создать файл в каталоге webroot.
Для руководства вы назовете файл (info.php) следующим образом:
sudo nano /var/www/html/info.php
Вставьте следующий файл (info.php):
<?php phpinfo(); ?>
Сохраните файл (CTRL+O), затем выйдите (CTRL+X) .
Теперь в адресной строке интернет-браузера введите (server-ip-address/info.php) . Если вы установили Nginx на свой локальный компьютер, используйте значение по умолчанию (127.0.0.1/info.php) или (localhost/info.php).

Эта информация показывает, что PHP-скрипты могут правильно работать с веб-сервером Nginx.
В целях безопасности следует удалить файл. Для этого используйте следующую команду:
sudo rm -f /var/www/html/info.php