Как установить и настроить lamp-сервер в ubuntu

LAMP — это самый популярный стек программного обеспечения для работы веб-сервера. Сюда входят такие программы, как Apache, PHP, MySQL, и работает всё это в Linux, отсюда и такое название.

Apache — это самый популярный веб-сервер, может, он не такой производительный, как Nginx, зато очень прост в настройке.

PHP — самый популярный язык программирования для веб, а без базы данных вообще сейчас мало что работает.

В этой статье мы рассмотрим, как выполняется Установка LAMP Ubuntu 18.04 несколькими способами: с помощью утилиты tasksel или вручную с помощью установщика программ.

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

1. Установка пакетов с помощью tasksel

Tasksel — это утилита, которая позволяет устанавливать пакеты различных программ буквально в одну команду. Она разработана для Debian, но может использоваться и в Ubuntu. Для её установки выполните в терминале:

  • sudo apt install tasksel
  • Как установить и настроить lamp-сервер в ubuntu
  • Затем, чтобы установить Lamp на Ubuntu, достаточно выполнить такую команду:
  • sudo tasksel install lamp-server
  • Установка займёт кое-какое время, потому что утилите придётся скачать и настроить все пакеты, но потом вы получите полностью работающий стек LAMP.
  • Как установить и настроить lamp-сервер в ubuntu

Обратите внимание, что десктопной версии Ubuntu tasksel использовать не желательно. LAMP установится нормально, но при попытке его удаления командой tasksel remove из-за бага утилита может снести вам всю систему. Пользователи сообщают о проблемах с этой утилитой в версии Ubuntu для рабочего стола.

2. Как установить Lamp в Ubuntu вручную

Если вы не хотите использовать tasksel, вы можете установить все пакеты по отдельности и настроить их для совместной работы. Сначала установим все необходимые пакеты. Установка последней версии Apache2 из репозиториев:

  1. sudo apt install apache2
  2. Как установить и настроить lamp-сервер в ubuntu
  3. Установка базы данных MariaDB из репозиториев:
  4. sudo apt install mariadb-server
  5. Как установить и настроить lamp-сервер в ubuntu
  6. Или вы можете установить MySQL:
  7. sudo apt install mysql-server
  8. Установка интерпретатора языка программирования PHP 7.2 и расширений, необходимых для его работы с Apache и MySQL:

sudo apt install php7.2 libapache2-mod-php7.2 php-mysql

  • Как установить и настроить lamp-сервер в ubuntu
  • Установка дополнительных расширений для PHP, которые вам понадобятся в будущем для хостинга большинства популярных проектов:
  • sudo apt install php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc
  • Как установить и настроить lamp-сервер в ubuntu

3. Настройка брандмауэра

  1. По умолчанию брандмауэр закрывает все неразрешённые входящие подключения.

    Поэтому, чтобы к вашему веб-серверу можно было получить доступ извне, необходимо добавить его порт в исключения:

  2. sudo ufw allow in 80/tcp
  3. Как установить и настроить lamp-сервер в ubuntu

4. Проверка работы LAMP

  • Для проверки наберите в адресной строке браузера IP-адрес сервера, куда вы устанавливали LAMP, у меня это localhost:
  • Как установить и настроить lamp-сервер в ubuntu
  • Работает, теперь давайте проверим, правильно ли работает PHP. Создайте файл в директории /var/www/html со следующим содержимым:
  • sudo vi /var/www/html/phpinfo.php

Как установить и настроить lamp-сервер в ubuntu

Затем откройте адрес localhost/phpinfo.php. Если всё работает, вы должны увидеть такую страничку:

  1. Как установить и настроить lamp-сервер в ubuntu
  2. Также можно проверить, работает ли MySQL: если расширение PHP для MySQL загрузилось, то на странице phpinfo будет размещена такая информация:

Готово, дальше идёт в основном настройка LAMP в Ubuntu 18.04.

5. Настройка Apache

  • Для обработки запросов будет использоваться модуль mpm_prefork, так как он совместим с большинством систем. Поэтому его нужно активировать, а mpm_event и mpm_worker отключить:
  • sudo a2dismod mpm_event
    sudo a2dismod mpm_worker
    sudo a2enmod mpm_prefork
  • Включаем mod_rewrite, который сейчас используется практически везде:
  • sudo a2enmod rewrite
  • Если вы хотите использовать файлы httaccess для настроек, то необходимо в файле /etc/apache2/apache2.conf изменить значение AllowOverride с None на All для нужных местоположений, например, для /var/www:
  • sudo vi /etc/apache2/apache2.conf
  • Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
  • Далее необходимо перезапустить Apache:
  • sudo systemctl restart apache2
  • Подробнее про настройку веб-сервера читайте в отдельной статье установка и настройка Apache.

6. Настройка PHP

По умолчанию короткие теги, обрамляющие скрипты PHP, отключены. Это может привести к тому, что некоторые скрипты, использующие эти теги, могут не выполнятся. Для включения этой возможности откройте файл:

sudo vi /etc/php/7.2/apache2/php.ini

  1. Найдите short_open_tag = Off и замените на:
  2. short_open_tag = On

Вывод ошибок в PHP по умолчанию тоже отключён. Если вы хотите разрабатывать программы на этом сервере, то вам необходимо включить ошибки, иначе вместо ошибок вы будете видеть пустой экран. Для этого найдите эти строки и приведите их к такому виду:

  • error_reporting = E_ALL
    display_errors = On
  • Или для записи ошибок в файл вы можете добавить такую строку:
  • error_log = php-errors.log
  • После внесения всех изменений необходимо перезапустить Apache:
  • sudo systemctl restart apache2

Подробнее про настройку файла php.ini смотрите здесь.

7. Настройка MySQL

По умолчанию MySQL не очень хорошо настроена в плане безопасности. Нам нужно задать пароль суперпользователя и удалить гостевой доступ. Для выполнения всех этих задач запустите в терминале:

  1. sudo mysql_secure_installation
  2. На первом этапе утилита попросит вас ввести пароль суперпользователя, так как он ещё не задан, просто нажмите Enter:
  3. Далее введите новый пароль:
  4. Во всех следующих вопросах нужно отвечать утвердительно:
  • Запретить удалённый вход для root;
  • Запретить гостевой вход;
  • Удалить временные таблицы;
  • Обновить таблицы привилегий.

Готово, теперь ваша база данных защищена и готова к работе.

8. Удаление LAMP в Ubuntu

Чтобы полностью удалить LAMP из системы, достаточно удалить все пакеты, которые вы установили ранее:

sudo apt purge  apache2 mariadb-server php7.2 libapache2-mod-php7.2 php-mysql php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc

Команда purge позволяет удалить не только пакеты, но и их конфигурационные файлы. Если вы хотите оставить конфигурационные файлы, используйте команду remove.

  • Если установка LAMP на Ubuntu выполнялась с помощью tasksel, то для удаления необходимо выполнить:
  • sudo tasksel uninstall lamp-server

Выводы

В этой статье мы разобрали, как выполняется установка Apache, PHP, MySQL на Ubuntu 18.04.

Как видите, это не очень сложно и с такой задачей может справиться даже новичок, если немного попрактикуется на виртуальной машине. Фактически, уже после шага 3 установка Lamp Ubuntu 18.

04 практически завершена, и уже можно работать, а дальше идёт только настройка LAMP. Если у вас остались вопросы, спрашивайте в х!

Источник: https://losst.ru/ustanovka-lamp-ubuntu-18-04

LAMP в Ubuntu: базовая установка и настройка компонентов веб-сервера

Каждый начинающий веб-разработчик однажды сталкивается с необходимостью самостоятельно установить и настроить LAMP. Сегодня я расскажу, как это сделать.

Примечание.

Данная статья описана для Ubuntu 16.04 и выше.

Но прежде, чем переходить к самому руководству, давайте расшифруем эту аббревиатуру

Linux – здесь все понятно. Данная статья предполагает, что ваша операционная система уже установлена и настроена. В данной статье будет использоваться ОС Ubuntu 16.10.

Apache – собственно веб-сервер. Отвечает за получение и обработку запросов пользователей, но умеет гораздо больше.

MySQL – одна из самых распространенных систем управления базами данных. Строго говоря, вывести заветный «Hello World» с помощью PHP можно и без этого компонента. Тем не менее, он необходим как для популярных CMS вроде WordPress, Joomla и Drupal, так и для самописных систем.

PHP – один из самых популярных языков программирования. На PHP написана серверная часть подавляющего большинства сайтов в мире.

Установка Apache, MySQL и PHP

Установить вышеперечисленный набор можно как с помощью графического интерфейса, так и через командную строку. Мы рассмотрим второй вариант, как более универсальный.

Обратите внимание:

в этой статье рассматривается установка и настройка сервера для локального использования. Подготовка площадки для размещения сайта, доступного извне, потребует более серьезной настройки.

  • Обновим список доступных пакетов:
  • Как установить и настроить lamp-сервер в ubuntu
  • После этого установим Apache:

sudo apt-get install apache2

Как установить и настроить lamp-сервер в ubuntu

Пакетный менеджер отыщет необходимые зависимости и попросит подтвердить согласие на установку. Вводим Y, жмем Enter, дожидаемся завершения установки.

  1. Как установить и настроить lamp-сервер в ubuntu
  2. Как установить и настроить lamp-сервер в ubuntu
  3. Проверяем работу Apache, введя в адресной строке браузера следующий адрес:
  4. http://localhost
  5. Если вы увидите страницу, изображенную ниже – значит, сервер работает как надо.
  6. Как установить и настроить lamp-сервер в ubuntu
  7. При получении сообщения об ошибке не спешите расстраиваться, скорее всего, Apache не запустился автоматически. Сделайте это вручную:

sudo service apache start

После чего обновите страницу.

Устанавливаем сервер MySQL:

sudo apt-get install mysql-server

  • Снова подтверждаем согласие и через несколько секунд получаем предложение установить пароль.
  • Как установить и настроить lamp-сервер в ubuntu
  • Выполнив требуемое, дожидаемся окончания и вводим следующую команду:
  • Менеджер пакетов снова соберет список зависимостей, нам останется лишь согласиться.
  • Для более простой и наглядной работы с базами данных рекомендую установить phpmyadmin. Но прежде не помешает убедиться, что сервер MySQL запущен:

sudo service mysql status

Нас интересует строка Active. Если она сообщает нам, что сервер активен, как на скриншоте, расположенном ниже – все прекрасно.

  1. Как установить и настроить lamp-сервер в ubuntu
  2. В противном случае выполним команду
  3. Теперь можно устанавливать phpmyadmin:

sudo apt-get install phpmyadmin

В процессе установки нам предложат выбрать веб-сервер. В нашем случае это Apache. Для выбора нужного варианта используем стрелки на клавиатуре и пробел, а переключаться между элементами псевдографического интерфейса поможет Tab. Далее вводим пароль администратора баз данных и подтверждаем его.

  • Как установить и настроить lamp-сервер в ubuntu
  • Как установить и настроить lamp-сервер в ubuntu
  • После перезапускаем Apache командой:

sudo service apache2 restart

  1. phpmyadmin будет доступен по адресу http://localhost/phpmyadmin
  2. Вводим логин root и пароль, выбранный в процессе установки, после чего получаем доступ к управлению базами данных.
  3. Как установить и настроить lamp-сервер в ubuntu

Использование

Корневым каталогом сервера является /var/www/html. Здесь находится тот самый документ, который мы видим, переходя по адресу http://localhost. Удаляем его и создаем файл index.php со следующим содержимым:

Сохраняем, снова переходим по тому же адресу и наблюдаем результат – страница с информацией о конфигурации PHP. Здесь можно найти сведения об установленных модулях, настройках и многом другом.

  • Мы можем разместить в каталоге /var/www/html свою папку и получить доступ к ее содержимому, прибавив к адресу слеш и ее название. Например, распаковав дистрибутив WordPress в /var/www/html/ мы найдем установочный скрипт по адресу:
  • http://localhost/wordpress/

Конфигурационные файлы

После выполнения вышеуказанных действий сервер уже должен быть готов для локального использования. Конфигурационные файлы, созданные при установке, содержат наиболее разумные и подходящие большинству настройки. Но иногда их все же требуется изменить.

Основной конфигурационный файл Apache называется apache2.conf и находится в /etc/apache2. Перед каждой директивой в этом файле расположен комментарий, поясняющий ее суть. Строки, начинающиеся со знака «#», считаются ми и не влияют на работу сервера.

Основной конфигурационный файл PHP лежит в /etc/php/7.0/apache2 и называется php.ini. Здесь в качестве символа используется «;». Не забудьте сделать резервные копии файлов перед тем, как вносить в них изменения. После правки и сохранения конфига сервер нужно перезапустить командой:

sudo service apache2 restart

В следующих статьях мы еще вернемся к конфигурационным файлам и настройке веб-сервера.

Источник: https://linuxrussia.com/lamp-basic-setup.html

Установка LAMP + PHPMyAdmin на Ubuntu 18.04

Стек LAMP — это акроним, который обозначает набор серверного программного обеспечения с открытым исходным кодом. Используется для отображения динамических веб-сайтов и веб-приложений. LAMP назван по первым буквам входящих в него программ:

  • Linux — ОС
  • Apache — веб-сервер
  • MariaDB (MySQL) — СУБД
  • PHP — язык программирования

В качестве ОС LInux мы сегодня будем рассматривать Ubuntu Server 18.04. Будем считать что он у вас уже установлен и настроен. И так, начнем по порядку.

Apache

Apache -это веб-сервер. Поддерживает все популярные операционные системы такие как Linux, Windows, FreeBSD, MacOS. Apache надежный, гибкий и достаточно простой в настройке.

  1. Перед установкой Apache сделаем команду обновления:
  2. sudo apt update
  3. Теперь устанавливаем:
  4. sudo apt install apache2
  5. После установки убедимся что Apache работает:
  6. sudo systemctl status apache2
  7. Должно быть, что-то вроде этого:

Как установить и настроить lamp-сервер в ubuntu

Статус сервера Apache

Если вы используете брандмауэр (а его лучше использовать) нужно удостоверится, что он  пропускает HTTP и HTTPS. Вводим:

sudo ufw app list

Как установить и настроить lamp-сервер в ubuntu

UFW app list

Получаем список доступных профилей. Включение профиля «Apache Full» разрешит необходимый нам трафик на 80 и 443 портах, «Apache» — только на 80 порту, «Apache Secure» — только на 443. Для примера разрешаем все:

  • sudo ufw allow in «Apache Full»
  • Что бы убедиться, что трафик разрешен вводим:
  • sudo ufw status
  • И видим следующее:

Как установить и настроить lamp-сервер в ubuntu

Статус UFW

Все именно так как нам надо. Так же можно в браузере ввести адрес сервера. Должны увидеть следующее:

Как установить и настроить lamp-сервер в ubuntu

Apache

Как видим Apache работает. Продолжаем.

MariaDB (MySQL)

MariaDB — ответвление СУБД MySQL. Разрабатывается под лицензией GNU GPL. MariaDB поддерживает высокую совместимость с MySQL. API и протоколы в MariaDB соответствуют тем, которые используются в MySQL, а это означает, что все библиотеки и приложения, которые работают в MySQL, должны работать и с MariaDB.

Вводим команду установки:

sudo apt install mariadb-server mariadb-client

Выполняем скрипт настройки защиты. Система попросит ввести root пароль и  ответить на несколько простых вопросов. Можно на все ответить утвердительно. В этом случае система удалит анонимных пользователей, тестовые базы данных, отключит удаленное root подключение и произведет обновление текущих настроек MySQL.

sudo mysql_secure_installation

Как установить и настроить lamp-сервер в ubuntu

Пример ответа на вопросы

PHP + PHPMyAdmin

PHP — это скриптовый язык общего назначения. Активно применяется веб-разработчиками. Поддерживается большинством хостингов и является одним из лидеров среди языков, применяющихся для создания динамических веб-сайтов.

PHPMyAdmin — это веб-приложение с открытым исходным кодом, написанное на языке PHP. Представляет собой веб-интерфейс для управления СУБД MySQL. Приложение популярно среди веб-разработчиков.

Устанавливаем актуальную версию PHP 7.2, а так же расширения необходимые для его работы с Apache и MySQL:

sudo apt install php7.2 libapache2-mod-php7.2 php-mysql

  1. Теперь установим PHPMyAdmin. Но перед этим необходимо установить расширение:
  2. sudo apt install php-mbstring
  3. Теперь приступим к установке самого PHPMyAdmin:
  4. sudo apt install phpmyadmin
  5. Установщик попросит выбрать веб-сервер, который будет автоматически настроен на работу с PHPMyAdmin. Выбираем наш Apache и продолжаем:

Как установить и настроить lamp-сервер в ubuntu

Выбор веб-сервера

Далее необходимо настроить базу данных самого PHPMyAdmin, там будет хранится служебная информация сервиса:

Как установить и настроить lamp-сервер в ubuntu

Настройка служебной базы

Соглашаемся и вводим пароль на базу. В дальнейшем он нам не понадобится.

Как установить и настроить lamp-сервер в ubuntu

Задание пароля

Как установить и настроить lamp-сервер в ubuntu

Подтверждение пароля

Все, установка PHPMyAdmin завершена. Можно в браузере ввести «http://адрес сервера/phpmyadmin» и убедится, что все работает:

Как установить и настроить lamp-сервер в ubuntu

PHPMyAdmin

  • Теперь нам надо создать пользователя MySQL с правами администратора. Вводим:
  • sudo mysql
  • И попадаем в консоль управления MariaDB. Далее поочередно делаем команды:
  • CREATE USER 'admin'@'localhost' IDENTIFIED BY 'пароль';
    GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
    FLUSH PRIVILEGES;

Создание пользователя MAriaDB

Пользователь с правами администратора создан. Пробуем авторизоваться в PHPMyAdmin:

PHPMyAdmin

Как видим все работает.

Настройка виртуальных хостов для Apache2

Если вы хотите размещать на вашем веб-сервере более одного сайта, то вам необходимо настроить Apache для работы с виртуальными хостами.

Директорию по умолчанию (/var/www/html) трогать не будем. При необходимости можно конечно ее изменить. Создаем директорию в которой будет лежать ваш сайт:

  1. sudo mkdir -p /var/www/example.com
  2. Настраиваем владельца каталога:
  3. sudo chown -R www-data:www-data /var/www/example.com
  4. Даем права:
  5. sudo chmod -R 755 /var/www/example.com
  6. Создаем файл главной страницы сайта:

sudo nano /var/www/example.com/index.html

example.com works!

  1. Создаем файл настройки виртуального хоста:

sudo nano /etc/apache2/sites-available/example.com.conf

  • И настраиваем по образцу:
  • ServerAdmin admin@example.com 
  • ServerName example.com

ServerAlias www.example.com

  1. DocumentRoot /var/www/example.com
  2. ErrorLog ${APACHE_LOG_DIR}/error.log
  3. CustomLog ${APACHE_LOG_DIR}/access.log combined
  4. Активируем профиль:

sudo a2ensite example.com.conf

  • Деактивируем стандартный профиль:
  • sudo a2dissite 000-default.conf
  • Перезапускаем наш Apache:
  • sudo systemctl restart apache2

И проверяем работоспособность сайта. Вводим в браузере «http://example.com»:

Проверка работы виртуального сайта

Как видим все работает. По аналогии можно создать нужное вам количество виртуальных хостов.

Обратите внимание ! Если вы запускаете сайт с тестовым (не глобальным) доменным именем не забудьте внести изменения в файл hosts компьютера с которого переходите на сайт. Иначе вы не сможете зайти на ваш сайт:

Файл hosts

Выводы

Установка Apache, MariaDB (MySQL), PHP и PHPMyAdmin завершена. Как вы уже успели заметить в этом нет ничего сложного и установка не отнимет много времени. Теперь можно приступать к работе с веб-сервером. Если остались вопросы по данной теме, пишите в х.

Источник: https://itseason.ru/lamp-phpmyadmin/

Установка LAMP (Apache, MySQL, PHP) на сервере Ubuntu

Как установить и настроить lamp-сервер в ubuntu

В данном руководстве рассматривается установка веб-сервера Apache, MySQL и PHP на сервере под управлением Ubuntu Linux.

Связку Linux, Apache, MySQL и PHP кратко называют LAMP. Иногда используют понятие LAMP-стек или набор LAMP.

Набор LAMP один из первых компонентов, который обычно устанавливается на сервере для развертывания Web-проектов.

Мы предполагаем, что операционная система уже установлена на вашем сервере и вы имеете к ней удаленный доступ по SSH. Если вы используете VPS-сервер, то выбор используемой операционной системы вы, скорее всего, выполняли при оформлении заказа у вашего хостинг-провайдера.

В руководстве рассматривается установка LAMP в Ubuntu 18.04. Данное руководство затрагивает только базовую установку LAMP. Вопросы более глубокого конфигурирования (настройки) выходят за рамки данной статьи.

Все действия протестированы на настоящем VPS-сервере, предоставленным Veesp.com. Мы производили настройку на сервере в конфигурации SSD2 — это максимально сбалансированный тариф, который к тому же обладает безлимитным трафиком.

Как установить и настроить lamp-сервер в ubuntuПример выбор тарифа для Linux SSD VPS на сайте Veesp.com

Откройте терминал (командную строку)

Все действия, описанные ниже, мы будем выполнять из командной строки, подключившись к серверу по SSH.

  • Если вы работаете в Linux (например, в Ubuntu или любом другой дистрибутиве), то вам нужно открыть терминал. Иногда это можно сделать, нажав сочетание клавиш Ctrl+Alt+T или найти в меню запуска приложений программу Терминал (Эмулятор терминала).
  • Если вы работаете в MacOS, то запустите программу Терминал из Лаунчера (из Launchpad).
  • Если вы работаете в Windows, то можно использовать штатную программу cmd.exe. Нажмите Win+r, в отрывшемся окне впишите «cmd» (без кавычек) и нажмите ОК. Вы также можете воспользоваться бесплатной программой PuTTY, которая позволяет выполнять подключение по SSH.

Доступ по SSH

Чтобы подключиться по SSH, вам нужно знать IP-адрес вашего сервера и пароль root-пользователя. Если вы пользуетесь услугами хостинг-провайдера и используете VPS-сервер, то обычно эти данные высылаются вам по электронной почте при регистрации.

Для подключения по SSH нужно выполнить команду вида: ssh имяпользователя@ip.адрес.сервера

ssh root@192.168.123.123

При подключении может появиться сообщение: «The authenticity of host ’…’ can’t be established. … Are you sure you want to continue connecting (yes/no)?» Соглашаемся: вводим y и нажимаем Enter.

Как установить и настроить lamp-сервер в ubuntu

Если на каком-то этапе вам нужно будет завершить работу по SSH, то используйте команду: exit

Обновляем пакеты

Перед началом работы рекомендуется обновить систему. Для этого выполняем команды:

sudo apt update
sudo apt upgrade

После обновления перезагрузите систему, выполнив команду.

reboot

Перезагрузка обычно занимает несколько секунд, поэтому нужно подождать прежде чем вы сможете снова подключиться по SSH.

Создание пользователя

Сейчас мы подключились к серверу от имени root-пользователя. Так как root-пользователь обладает максимальными привилегиями в системе, работать от его имени небезопасно. Рекомендуется создать обычного пользователя, от имени которого выполнять все действия (используя sudo).

Создадим пользователя с именем pingvinus (вместо pingvinus укажите любое желаемое имя):

adduser pingvinus

Вводим пароль для пользователя. Рекомендуется использовать сложный пароль.

Затем появится запрос на ввод дополнительной информации о пользователе. Вы можете ничего не вводить, а просто нажимать Enter на каждый запрос.

Changing the user information for username
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n]Как установить и настроить lamp-сервер в ubuntu

Теперь необходимо разрешить пользователю использовать sudo, чтобы позволить ему выполнять команды с root-привилегиями. Для этого нужно добавить пользователя в группу sudo. Выполняем команду:

usermod -aG sudo pingvinus

Далее мы настроим файрволл UFW. Настройку файрвола можно производить от пользователя root. После настройки можно будет войти уже под пользователем, которого вы только что создали.

Настройка файрвола UFW

Файрвол UFW (брэндмауэр) это функциональный и в то же время очень простой в настройке файрвол, который позволяет разрешать или ограничивать доступ к вашему серверу.

Если UFW не установлен, то вы можете установить его из штатных репозиториев Ubuntu, выполнив команду:

sudo apt install ufw

Некоторые приложения создают для UFW готовые профили с настройками. Это очень удобно, так как пользователю достаточно всего лишь включить нужный профиль.

Прежде, чем включить файрвол UFW, необходимо настроить его так, чтобы он разрешал использование SSH, иначе после включения мы не сможем подключиться по SSH.

Выведем список доступных профилей:

$ ufw app list

Available applications:
OpenSSH

Нам нужно включить профиль OpenSSH. Для этого выполняем команду:

$ ufw allow OpenSSH

Rules updated
Rules updated (v6)

Включаем файрвол:

ufw enable

Скорее всего, появится следующее предупреждение, информирующее о том, что SSH-соединение может прерваться. Но так как мы разрешили использование SSH, то вводим y и нажимаем Enter.

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

Если все прошло успешно, то вы по прежнему должны будете иметь SSH доступ. Выведем текущий статус UFW:

$ ufw status

Status: active
To Action From
— —— —-
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)Как установить и настроить lamp-сервер в ubuntu

Переключение на пользователя

  • Мы выполнили необходимый минимум подготовительных работ и можно перейти к установке компонентов LAMP.
  • Рекомендуем на данном шаге переключиться на пользователя, чтобы не работать от имени пользователя root.
  • Чтобы переключиться на пользователя, которого вы создали, выполняем команду:

su —login pingvinusКак установить и настроить lamp-сервер в ubuntu

Дальнейшую работу будем выполнять уже от имени этого пользователя, поэтому команды ниже запускаются под sudo.

Установка Apache

Как установить и настроить lamp-сервер в ubuntuЧтобы установить веб-сервер Apache достаточно установить один пакет — apache2. Для установки выполняем команду:

sudo apt install apache2

После установки веб-сервер Apache автоматически запускается.

Разрешение HTTP(S) трафика в UFW

Если сейчас вы попробуете получить доступ к вашему серверу, введя IP-адрес сервера в браузере, то получите ошибку, так как UFW блокирует HTTP(S) трафик. Необходимо разрешить HTTP (порт 80) и HTTPS (порт 443) трафик в настройках UFW.

Apache во время установки создал для UFW необходимые профили. Выведем список доступных профилей:

$ sudo ufw app list

Available applications:
Apache
Apache Full
Apache Secure
OpenSSH

Как вы можете видеть, для Apache доступно 3 профиля. Мы будем использовать профиль Apache Full, так как он разрешает HTTP и HTTPS трафик. Профиль с именем Apache разрешает только HTTP трафик, а Apache Secure только HTTPS трафик.

Можно просмотреть настройки профиля, выполнив команду:

$ sudo ufw app info «Apache Full»

Profile: Apache Full
Title: Web Server (HTTP,HTTPS)
Description: Apache v2 is the next generation of the omnipresent Apache web
server.

Ports:
80,443/tcp

Включаем профиль Apache Full в UFW для входящего трафика:

sudo ufw allow in «Apache Full»Как установить и настроить lamp-сервер в ubuntu

Посмотрим статус:

sudo ufw statusКак установить и настроить lamp-сервер в ubuntu

Проверяем работу Apache

Мы установили Apache и разрешили использование входящего HTTP(S) трафика. Теперь можно открыть веб-браузер и набрать в адресной строке публичный IP адрес вашего сервера. То есть в строке ввода адреса перейти на: http://ip.адрес.вашего.сервера (например, http://77.555.123.123).

Должна открыться тестовая страница Apache с некоторой полезной информацией. Если страница открылась, значит Apache работает успешно.

Как установить и настроить lamp-сервер в ubuntu

Можно проверить текущий статус веб-сервера Apache. Для этого выполняем команду:

$ systemctl status apache2 ● apache2.service — The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: …
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: active (running) since Thu 2019-05-16 14:24:26 MSK; 46min ago
Main PID: 2281 (apache2)
Tasks: 55 (limit: 1109)
CGroup: /system.slice/apache2.service
├─2281 /usr/sbin/apache2 -k start
├─2283 /usr/sbin/apache2 -k start
└─2284 /usr/sbin/apache2 -k start

May 16 14:24:26 pingvinusru systemd[1]: Starting The Apache HTTP Server…
May 16 14:24:26 pingvinusru apachectl[2268]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using …
May 16 14:24:26 pingvinusru systemd[1]: Started The Apache HTTP Server.

Нажмите клавишу q, чтобы закрыть просмотр статуса.

Установка MySQL

Выполним установку MySQL. Выполняем команду:

sudo apt install mysql-server

Проверим статус MySQL сервера:

$ service mysql status status
● mysql.service — MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en…
Active: active (running) since Thu 2019-05-16 15:36:30 MSK; 9min ago
Main PID: 3734 (mysqld)
Tasks: 27 (limit: 1109)
CGroup: /system.slice/mysql.service
└─3734 /usr/sbin/mysqld —daemonize —pid-file=/run/mysqld/mysqld.pid

May 16 15:36:30 pingvinusru systemd[1]: Starting MySQL Community Server…
May 16 15:36:30 pingvinusru systemd[1]: Started MySQL Community Server.

Безопасность MySQL

Воспользуемся скриптом mysql_secure_installation, который позволяет быстро выполнить некоторые важные настройки MySQL, касающиеся безопасности. Вам будет предложено ответить на несколько вопросов или ввести определенные данные.

Запуск скрипта mysql_secure_installation

Рассмотрим, процесс работы скрипта mysql_secure_installation.

Запускаем скрипт:

Источник: https://pingvinus.ru/note/lamp-install-ubuntu

Установка стека LAMP на операционную систему Ubuntu 18.04 — Установка LAMP на Linux — Help MCS

Данная статья описывает установку стека LAMP на операционную систему семейства Linux — Ubuntu 18.04.

Стек LAMP включает в себя операционную систему семейства Linux, веб-сервер Apache, систему управления базами данных MySQL и серверный язык сценариев для обработки динамического контента PHP. Все это необходимо для поддержки динамических сайтов и веб-приложений.

Требования

  • Операционная система Ubuntu версии 18.04.
  • Пользователь с доступом к команде sudo.

Установка и настройка веб-сервера Apache

Чтобы установить и выполнить первичную настройку веб-сервера Apache:

  1. Откройте окно терминала.
  2. Обновите списки установочных пакетов до актуальных версий, выполнив команду: sudo apt-get update
  3. Установите последнюю версию веб-сервера Apache и дополнительных модулей, выполнив команду: sudo apt install apache2 apache2-utils

    Согласитесь с установкой веб-сервера Apache, ответив Y(es).

  4. Откройте конфигурационный файл apache2.conf для редактирования, выполнив команду:sudo nano /etc/apache2/apache2.conf
  5. В файле apache2.conf:
    • В конец добавьте строку ServerName .
    • Сохраните внесенные изменения, используя сочетание клавиш CTRL+O.
    • Завершите редактирование, используя сочетание клавиш CTRL+X.
  6. Для проверки конфигурации и текущего состояния веб-сервера Apache выполните команду: sudo apache2ctl configtest

    В случае отсутствия ошибок отобразится строка:

    Syntax OK

  7. Для применения изменений перезагрузите веб-сервер Apache, выполнив команду: sudo systemctl restart apache2
  8. Для проверки работы веб-сервера запустите веб-браузер и в адресной строке введите IP-адрес веб-сервера.

Как установить и настроить lamp-сервер в ubuntu

Установка СУБД MySQL

Чтобы установить и настроить СУБД MySQL:

  1. Откройте окно терминала.

  2. Установите сервер СУБД MySQL, выполнив команду:

    sudo apt-get install mysql-server

    Согласитесь с установкой сервера СУБД MySQL, ответив Y(es).

  3. Для внесения изменений в конфигурацию сервера СУБД MySQL используйте команду:

sudo mysql_secure_installation

        Данная команда запускает сценарий повышения безопасности сервера СУБД MySQL. Для настройки безопасности:    

  • Введите пароль для учетной записи root, который был задан в начале установки сервера СУБД MySQL.
  • При необходимости выполните запуск плагина валидации паролей (VALIDATE PASSWORD PLUGIN):
  • Ответьте Y(es) для включения плагина валидации.
  • Ответьте N(o), если валидация паролей не требуется.
  • При необходимости смените текущий пароль учетной записи root:
  • Ответьте Y(es) для смены текущего пароля.
  • Ответьте N(o), если смена пароля не требуется.

По умолчанию пароль не задан. Рекомендуется использовать надежный пароль.

Пользователь root в данном случае относится исключительно к СУБД MySQL и не является учетной записью ОС Ubuntu.

  • При необходимости удалите анонимные (anonymous) учетные записи, которые создаются при установке СУБД MySQL:
  • Ответьте Y(es) для удаления анонимных учетных записей.
  • Ответьте N(o), если удаление анонимных учетных записей не требуется.

Данные учетные записи предназначены только для тестирования БД и в большинстве случаев могут быть удалены.

  • При необходимости запретите удаленный доступ к СУБД MySQL для учетной записи root:
    • Ответьте Y(es) для отключения возможности удаленного доступа.
    • Ответьте N(o) для разрешения удаленного доступа.
  • При необходимости удалите тестовую базу (Test):
    • Ответьте Y(es) для удаления базы Test.
    • Ответьте N(o), если удаление базы Test не требуется.

Данная база создается при установке сервера СУБД MySQL и предназначена для тестирования. Удаление базы Test не влияет на работу системы.

  • В ответ на запрос на внесение изменений в СУБД MySQL и перезагрузку привилегий доступа к таблицам:  
    • Ответьте Y(es) для внесения изменений и перезагрузки.
    • Ответьте N(o), если внесение изменений и перезагрузка не требуются.

Установка PHP и дополнительных пакетов

Чтобы установить PHP и дополнительные пакеты, которые могут потребоваться для работы и настройки WordPress:

  1. Откройте окно терминала.

  2. Для установки PHP совместно с дополнительными пакетами используйте команду:

    sudo apt-get install php libapache2-mod-php php-cli php-intl php-mysql php-curl php-gd php-soap php-xml php-zip php-readline php-opcache php-json

Чтобы выполнить установку, ответьте Y(es).

  1. Убедитесь, что веб-сервер Apache корректно отображает скрипты PHP. Для этого:

  • Создайте файл info.php, выполнив команду:

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

  • В файл info.php поместите текст:
  • Сохраните изменения, используя сочетание клавиш CTRL+O.
  • Завершите редактирование, используя сочетание клавиш CTRL+X.
  • В адресной строке браузера к адресу веб-сервера добавьте строку:

/info.php 

    В результате должна отобразится примерно следующая страница:

Как установить и настроить lamp-сервер в ubuntu

В целях безопасности после проверки системы рекомендуется удалить файл info.php, выполнив команду: 

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

Источник: https://mcs.mail.ru/help/lamp-on-linux/lamp-ubuntu-18

Установка и настройка LAMP (web-сервера) в Ubuntu 18.04

LAMP — это сокращение, полученное по первым буквам входящих в его состав программ: Linux, Apache, MariaDB или MySQL, PHP.

А если проще говоря это пакет программ, для быстрой настройки веб сервера. Так уж получилось, что большенство сервисов устанавливаются как веб приложения и требуют установки данного программного комплекса.

Чтобы каждый раз не расписывать эту процедуру я решил написать про это отдельно для экономии сил и времени при написании следующих статей.

Установка Linux

Для начала установим чистую Ubuntu на сервер. Для этого я взял установочный образ ubuntu-18.04.1.0-live-server-amd64. Не думаю что с этим могут возникнуть проблемы. Далее далее ок готово! А вот систему лучше обновить. Подключаемся к серверу через Putty или через CMD

ssh root@IP_адрес_сервера
sudo apt update
sudo apt upgrade

Установка LAMP

Тут воспользуемся утилитой tasksel, которая позволяет установить сразу группу пакетов LAMP через пару команд.

sudo apt-get install tasksel
sudo tasksel install lamp-server

Настройка Apache2

Включим модуль mpm_prefork. Этот модуль будет использоваться для обработки запросов. Ну и mod_rewrite соответственно тоже включим.

sudo a2dismod mpm_event
sudo a2dismod mpm_worker
sudo a2enmod mpm_prefork
sudo a2enmod rewrite

Использование файлов htaccess для настроек будет возможным после того как изменим значение AllowOverride с None на All для определённых директорий (/var/www).

sudo nano /etc/apache2/apache2.conf

Как поменяли, перезапускаем Apache

sudo systemctl restart apache2

Создадим директорию для будущего сайта/сервиса, куда в дальнейшем скачаем и распакуем архив с программой

sudo mkdir -p /var/www/html/direction

Теперь переходим в новый каталог, качаем архив, устанавливаем приложение zip (если его нет), распаковываем файлы и после удалим архив.

cd /var/www/html/direction
wget -O direction.zip https://direction.com/direction.zip
sudo apt-get install zip
unzip opensupports.zip
rm -R opensupports.zip

Если это tar архив:

cd /var/www/html/direction
wget https://direction.com/direction.tgz
tar zxf direction.tgz
rm -R direction.zip

Теперь давайте нашего пользователя включим в группу, у которой будут права на редактирование этой директории

sudo groupadd webmasters sudo gpasswd -a username webmasters sudo chown -R root:webmasters /var/www/html/direction
sudo chmod 775 /var/www/html/direction

Пришло время для создания хост файла

nano /etc/apache2/sites-available/direction.conf
ServerAdmin direction@itlocate.ru ServerName direction DocumentRoot /var/www/html/direction Options FollowSymLinks AllowOverride All
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

AllowOverride All
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined

Теперь, если мы перейдём в /etc/apache2/sites-available/, то увидим там помимо только что созданного хост файла ещё два стандартных. Давайте их отключим, включив наш хост.

sudo a2dissite default-ssl.conf sudo a2dissite 000-default.conf sudo a2ensite direction.conf

Перезапускаем Apache.

sudo systemctl reload apache2

Настройка PHP

Включим использование шорттегов, если они отключены. Ишем параметр и изменяем его при необходимости (short_open_tag = On)

sudo nano /etc/php/7.2/apache2/php.ini

Как поменяли, перезапускаем Apache

sudo systemctl restart apache2

Настройка MySQL

Настроем бд MySQL, затем создадим пользователя и дадим ему права на базу данных. Всё что зелёным цветом — замените на свои данные.

sudo mysql_secure_installation
mysql -u root -p CREATE DATABASE database_name; GRANT ALL PRIVILEGES ON database_name.* TO username@localhost IDENTIFIED BY 'password';
exit

Теперь можно приступить к установке сервиса или CMS через браузер по IP адресу LAMP сервера.

Источник: https://itlocate.ru/blog/linux/ustanovka-i-nastrojka-lamp-(web-servera)-v-ubuntu-18.04.html

Ссылка на основную публикацию
Adblock
detector