Установка lamp ubuntu кращі способи

LAMP - це скорочення від Linux, Apache, MySQL, PHP. У цьому керівництві показано, як ви можете встановити веб-сервер Apache на сервері Ubuntu 16.04 LTS (Xenial Xerus) з підтримкою PHP 7 (mod_php) і MySQL / MariaDB, а також налаштувати SSL-сертифікат за допомогою шифрування Let's. Крім того, я встановлю PHPMyAdmin, щоб спростити адміністрування MySQL. Установка LAMP - ідеальна основа для систем CMS, таких як Joomla, WordPress або Drupal.

Я рекомендую використовувати мінімальну настройку сервера Ubuntu в якості основи для підручника, це може бути образ віртуального або кореневого сервера з мінімальною установкою Ubuntu 16.04 від веб-хостингу.

Я виконую всі кроки цього керівництва з привілеями root, тому переконайтеся, що ви увійшли в систему під ім'ям root:

Установка LAMP Ubuntu 16.04

Установка LAMP Ubuntu 16.04 є досить простий. Зараз я розповім про найоптимальніші способи швидкого встановлення LAMP в Ubuntu.

Установка MySQL або MariaDB

В даний час доступні дві широко використовувані системи баз даних MySQL - класичний «MySQL» сервер, розроблений Oracle і доступний зараз у версії 5.7, а також гілка MySQL з ім'ям MariaDB, розроблена початковим розробником MySQL Монті Віденюсом.

Я покажу вам, як встановити обидві альтернативи нижче. Просто дотримуйтесь чолі 1.1 або 1.2, але не обом. Вам потрібно вибрати кращий варіант для вас. Я буду використовувати MySQL 5.7 для образу віртуальної машини, який можна завантажити з Howtoforge.

1.1 Установка MySQL 5.7

Щоб встановити MySQL 5.7, виконайте наступну команду:

apt-get -y install mysql-server mysql-client

Пакети mysql-server і mysql-client називаються «мета-пакетами», вони встановлюють завжди найостаннішу версію MySQL, яка доступна в Ubuntu. Остання версія - це MySQL 5.7.

Ми встановили пароль root для MySQL вже під час установки, але я б хотів видалити анонімного користувача і тестову базу даних з міркувань безпеки. Для цього виконайте команду mysql_secure_installation нижче.

Вам будуть задані наступні питання:

Установка lamp ubuntu кращі способи
Установка LAMP Ubuntu 16.04

Установка lamp ubuntu кращі способи
Установка lamp ubuntu кращі способи

Тепер настройка MySQL була захищена.

1.2 Установка MariaDB 10

Для установки MariaDB-сервера і клієнта виконайте наступну команду:

apt-get -y install mariadb-server mariadb-client

Тепер ми встановили пароль root для MariaDB.

Вам будуть задані наступні питання:

Установка lamp ubuntu кращі способи
Установка LAMP Ubuntu 16.04

Перевірте ім'я входу в MariaDB за допомогою команди «mysql»

І введіть пароль root MariaB, який ви встановили вище. Результат повинен бути схожий на скріншот нижче:

Установка lamp ubuntu кращі способи

Щоб вийти з оболонки MariaDB, введіть команду «quit» і натисніть клавішу введення.

Встановіть Apache 2.4.

Наступним пунктом в статті «Установка LAMP Ubuntu 16.04» є Apache.

Apache 2 доступний як пакет Ubuntu, тому ми можемо встановити його в такий спосіб:

apt-get -y install apache2

Установка lamp ubuntu кращі способи

3. Встановіть PHP 7

Ми можемо встановити PHP 7 і модуль Apache PHP наступним чином:

apt-get -y install php7.0 libapache2-mod-php7.0

А після перезапуску Apache:

systemctl restart apache2

Протестуйте PHP і отримаєте інформацію про вашу установці PHP.

Корінь документа веб-вузла за замовчуванням - / var / www / html. Тепер ми створимо невеликий PHP-файл (info.php) в цьому каталозі і викликаємо його в браузері. Файл відобразить безліч корисних відомостей про нашу установці PHP, наприклад, встановленої версії PHP.

Потім змініть власника файлу info.php на користувача і групу www-даних.

chown www-data: www-data /var/www/html/info.php

Установка lamp ubuntu кращі способи

Як ви бачите, PHP 7.0 працює, і він працює через Apache 2.0 Handler, як показано в рядку Server API. Якщо ви прокрутіть униз, ви побачите всі модулі, які вже включені в PHP5. MySQL тут відсутня, а значить, у нас немає підтримки MySQL / MariaDB в PHP.

Підтримка MySQL / MariaDB в PHP

Щоб отримати підтримку MySQL в PHP, ми можемо встановити пакет php7.0-mysql. Це гарна ідея, щоб встановити деякі інші модулі PHP, а також вони можуть знадобитися для ваших додатків. Ви можете шукати доступні модулі PHP наступним чином:

apt-cache search php7.0

Виберіть потрібні і встановіть їх так:

apt-get -y install php7.0-mysql php7.0-curl php7.0-gd php7.0-intl php-pear php-imagick php7.0-imap php7.0-mcrypt php-memcache php7.0-pspell php7.0-recode php7.0-sqlite3 php7.0-tidy php7.0-xmlrpc php7.0-xsl php7.0-mbstring php-gettext

Тепер запустіть Apache2:

systemctl restart apache2

Установка lamp ubuntu кращі способи

PHP 7 тепер підтримує MySQL / MariaDB, як показано в phpinfo () вище.

Встановіть кеш Opcache + APCu PHP для прискорення роботи PHP

PHP 7 поставляється з вбудованим Кешуються кодом операції для кешування та оптимізації проміжного коду PHP, він має ім'я «opcache» і доступний в пакеті php7.0-opcache. Настійно рекомендується встановити Opcache для прискорення роботи вашої PHP-сторінки. Крім opcache, я встановлю APCu, який є оболонкою сумісності для opcache, щоб забезпечити функції кеша APC, часто респонденти користуються послугами системи кешування в версіях php 5.x, і багато систем CMS все ще використовують її.

Opcache і APCu можуть бути встановлені таким чином:

apt-get -y install php7.0-opcache php-apcu

Не турбуйтеся, якщо він показує, що Opcache вже встановлено.

Тепер запустіть Apache:

systemctl restart apache2

Установка lamp ubuntu кращі способи

Будь ласка, не забудьте видалити файл info.php, коли він вам більше не потрібен, так як він надає конфіденційну інформацію про ваш сервер. Виконайте наступну команду, щоб видалити файл.

rm -f /var/www/html/info.php

Увімкніть веб-сайт SSL в Apache.

SSL / TLS є рівнем безпеки для шифрування з'єднання між веб-браузером і вашим сервером. Більшість веб-браузерів починають показувати сайти як небезпечні, коли з'єднання між сервером і веб-браузером не шифрується за допомогою SSL. У цьому розділі я покажу вам, як захистити ваш сайт за допомогою SSL.

Виконайте наступні команди на вашому сервері, щоб включити підтримку SSL (https: //):

a2enmod ssl
a2ensite default-ssl

Спосіб включає модуль SSL і додає символічне посилання в папку / etc / apache2 / sites в файл /etc/apache2/sites-available/default-ssl.conf, для того щоб включити його в активну конфігурацію apache. А після перезапуску apache, щоб включити нову конфігурацію:

systemctl restart apache2

Установка lamp ubuntu кращі способи

Прийміть попередження SSL в Firefox

Установка lamp ubuntu кращі способи

Ви отримаєте попередження SSL, оскільки SSL-сертифікат сервера є «самозаверяющім» SSL-сертифікат, це означає, що браузер не довіряє цьому сертифікату за замовчуванням, і ви повинні спочатку прийняти попередження про безпеку. Після прийняття попередження ви побачите сторінку за замовчуванням apache.

Сторінка за замовчуванням Apache в режимі https

Є два способи позбутися від попередження SSL: або замінити самоподпісанний сертифікат SSL /etc/ssl/certs/ssl-cert-snakeoil.pem з офіційно підписаним SSL-сертифікат, який ви купуєте у SSL-органу, або ви отримуєте Безкоштовний SSL-сертифікат від Let's encrypt, який я опишу в главі 8.

Отримайте безкоштовний сертифікат SSL від Let's Encrypt

Першим кроком щодо забезпечення безпеки веб-сайту за допомогою SSL-сертифіката Let's Encrypt є установка пакета python-letsencrypt-apache. Виконайте наступну команду:

apt-get -y install python-letsencrypt-apache

На наступному кроці ми запитаємо сертифікат SSL від Let's Encrypt, під час цього процесу сервер Let's Encrypt спробує підключитися до вашого сервера через ім'я домену, яке ви надаєте команді letsencrypt. Важливо, щоб це доменне ім'я вказувало на ваш сервер в DNS вже, щоб веб-сайт досягав свого доменного імені вже на порту 80 (http). Якщо веб-сайт недоступний з Інтернету, створення SSL-сертифіката Let's Encrypt не вдасться.

І додайте рядок:

Прямо під рядком «DocumentRoot». Замініть example.com доменним ім'ям вашого власного веб-сайту.

Потім створіть SSL-сертифікат за допомогою наступної команди:

letsencrypt -apache -d example.com

Знову замініть example.com своїм доменним ім'ям. Команда запустить майстер, який задасть вам кілька запитань.

Установка lamp ubuntu кращі способи

Прийміть умови ліцензії Let's Encrypt SSL.

Установка lamp ubuntu кращі способи

Виберіть, чи хочете ви автоматично перенаправляти запити без SSL на https: //. Я виберу та тут, щоб уникнути дублювання проблем з контентом, коли сайт доступний як http: // і https: // версія.

Установка lamp ubuntu кращі способи

Сертифікат SSL був успішно виданий.

Установка lamp ubuntu кращі способи

Коли ви заходите на веб-сайт тепер за допомогою браузера, ви автоматично перенаправляються на SSL, а зелена блокування перед рядком URL в браузері показує, що ми використовуємо довірений SSL-сертифікат.

Установка lamp ubuntu кращі способи

8.1. Зашифруємо автоматичне продовження

Шифрувальні SSL-сертифікати дійсні тільки протягом короткого періоду в 80 днів. Тому ми зараз налаштуємо cronjob для автоматичного оновлення SSL-сертифіката при необхідності. Команда: «продовжити ліцензію».

Встановіть cronjob для автоматичного поновлення LE. біг:

0 1 * * * / usr / bin / letsencrypt renew > / Dev / null

Збережіть файл, це активує cronjob. Цей cronjob викликатиме команду Let's Encrypt renew щовечора о 1 годині ночі. Команда оновить SSL-сертифікат тільки при необхідності (за 30 днів до закінчення терміну його дії), немає проблем запускати його щоночі.

встановіть phpMyAdmin

PhpMyAdmin - це веб-інтерфейс, через який ви можете управляти своїми базами даних MySQL. Доброю ідеєю буде, встановити його:

apt-get -y install phpmyadmin

Після установки повинні з'явиться такі питання:

Установка LAMP Ubuntu 16.04

9.1. Кореневої доступ до PHPMyAdmin за допомогою MariaDB

Наступний крок в темі «Установка LAMP Ubuntu 16.04», потрібно тільки для установок MariaDB, якщо ви використовуєте MySQL 5.7, то пропустіть цей крок.

За замовчуванням MariaDB дозволяє плагіну під назвою «unix_socket» root для користувача, але цей плагін забороняє користувачеві з root-правами, увійти в PHPMyAdmin, і в цьому випадку TCP-з'єднання з MySQL працюють на користувача root.

Увійдіть в базу даних MySQL як користувач root в командному рядку:

Створіть нового користувача з ім'ям «admin» і паролем «linuxinsider». Замініть пароль «linuxinsider» безпечним паролем як показано в команді!

CREATE USER 'admin' @ 'localhost' IDENTIFIED BY 'linuxinsider';
GRANT ALL PRIVILEGES ON *. * TO 'admin' @ 'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit

Установка lamp ubuntu кращі способи

Установка lamp ubuntu кращі способи

Завантаження зображення віртуальної машини

Цей підручник доступний як готовий до використання образ віртуальної машини в форматі ovf / ova, сумісний з VMWare і Virtualbox. В образі віртуальної машини використовуються наступні дані для входу:

Username: administrator
Password: linuxinsider

Цей користувач має права sudo.

Username: root
Password: linuxinsider

Переклад статті з відмінного англійського сайту HowtoForge.

Обов'язково оцініть цю статтю, і поділіться посиланням на свої сторінки в Google+, Twitter, VK або, наприклад, Facebook.