Debian 8 phpmyadmin настройка
Описан процесс подготовки сервера Debian Jessie (с Apache2, BIND, Dovecot) для установки ISPConfig 3 и непосредственно установка ISPConfig 3. Это надёжная проверенная статья, но начиная с 2019 года лучше использовать новую версию Debian 9.
ISPConfig 3 представляет собой интерфейс, с помощью которого можно настраивать следующие службы из браузера: веб-сервер, почтовый сервер Postfix, Courier или Dovecot серверов IMAP/POP3, MySQL, сервера доменных имён BIND или MyDNS, PureFTPd, SpamAssassin, ClamAV и многое другое. В процессе установки мы сделаем выбор в пользу Apache (вместо nginx), BIND (вместо MyDNS) и Dovecot (вместо Courier).
Будем считать, что необходимо получить веб-окружение на базе Apache .
1. Предварительные замечания
В данной статье будем использовать имя хоста server1.drach.pro, IP адрес 192.168.0.100 и шлюз 192.168.0.1. В конкретном случае эти параметры могут отличаться, вам необходимо будет заменить их на свои там, где это требуется.
Перед дальнейшими действиями у Вас должна быть установлена операционная система Debian 8. Предполагается, что была выполнена чистая инсталляция, а не обновление существующей системы.
2 Установка SSH server
Если OpenSSH server не был установлен во время установки системы, введём следующее:
Теперь можно использовать клиент SSH, например PuTTY и подключаться с рабочей машины к серверу Debian Jessie.
Этот шаг не является обязательным.
3 Установка текстового редактора оболочки (Необязательно)
В качестве текстового редактора будем использовать nano. Некоторые пользователи предпочитают классический редактор vi, поэтому установим оба текстовых редактора. Стандартный редактор vi отличается странным поведением на Debian и Ubuntu; исправим это, установив vim-nox:
Если Вы предпочитаете vi, замените nano на vi в командах редактирования фалов.
4 Настройка имени хоста
Имя хоста для сервера должно представлять собой поддомен типа "server1.drach.pro". Не используйте имя домена без поддомена - "drach.pro" в качестве имени хоста, это может вызвать сложности при установки почты. В начале нужно проверить имя хоста в /etc/hosts и при необходимости изменить его. Строка должна быть следующего вида: "IP Address - space - full hostname incl. domain - space - subdomain part". Для имени хоста server1.drach.pro, это будем выглядеть следующим образом:
Затем отредактируем файл /etc/hostname:
Здесь должен находится только поддомен, в нашем случае:
Затем перезапустим сервер для сохранения изменений:
Авторизуемся и проверим, верно ли имя хоста, для этого воспользуемся следующими командами:
Выходные данные должны выглядеть следующим образом:
5 Обновление установки Debian
Для начала убедимся, что /etc/apt/sources.list содержит репозиторий jessie/updates (это значит, что Вы всегда будете получать свежие обновления безопасности) и что вкладываемые и несвободные репозитории разрешены (некоторые пакеты, например, libapache2-mod-fastcgi не находятся в главной репозитории).
Для обновления баз данных пакета apt
и для установки последних обновлений (если они есть).
6 Изменение стандартной оболочки
/bin/sh является символьной ссылкой на /bin/dash, однако нам потребуется /bin/bash, а не /bin/dash. Выполним следующее:
Если этого не сделать, далее невозможно будет установить ISPConfig.
7 Синхронизация времени системы
Системное время можно синхронизировать по NTP (network time protocol) через интернет:
8 Установка Postfix, Dovecot, MySQL, phpMyAdmin, rkhunter, binutils
Установка Postfix, Dovecot, MySQL, rkhunter и binutils производится при помощи одной лишь команды:
Если вы предпочитаете MySQL вместо MariaDB, замените пакеты "mariadb-client mariadb-server" в команде сверху, на"mysql-client mysql-server".
Затем потребуется ответить на следующие вопросы:
Затем откроем TLS/SSL и порты подчинения в Postfix:
Удалим секции подчинения и smtps и добавим строки таким образом, чтобы секции в файле master.cf выглядели следующим образом:
Нам необходимо, чтобы MariaDB работал со всеми интерфейсами, а не только с локальным хостом, для этого отредактируем файл /etc/mysql/my.cnf и удалим строку bind-address = 127.0.0.1:
Затем перезапустим MySQL:
Теперь проверим, разрешена ли работа в интернете:
Выходные данные должны выглядеть следующим образом:
9 Установка Amavisd-new, SpamAssassin и Clamav
Для установки amavisd-new, SpamAssassin и ClamAV, выполним следующее:
Отредактируем файл настройки Clamd, находящийся по адресу/etc/clamav/clamd.conf
и изменим значение and AllowSupplementaryGroups с false на true:
Установка ISPConfig 3 использует amavisd, который загружает библиотеку фильтров SpamAssassin, поэтому остановим SpamAssassin, для того, чтобы освободить оперативную память:
10 Установка Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear и mcrypt
Apache2, PHP5, phpMyAdmin, FCGI, suExec, Pear и mcrypt устанавливаются следующим образом:
Далее потребуется ответить на следующие вопросы:
Затем нам потребуется включить модули Apache suexec, rewrite, ssl, actions и include (дополнительно dav, dav_fs, and auth_digest, если вам требуется WebDAV):
и разрешим работу moduley, выполнив:
11 Установка SuPHP
Уточнение!
Необязательно, не рекомендуется.
SuPHP больше недоступен для Debian Jessie. Режим suphp больше не должен использоваться в ISPConfig, так как существуют лучшие режимы PHP, такие как:php-fpm и php-fcgi. Если Вы хотите использовать suphp, необходимо выполнить следующее вручную:
Создадим директорию настройки suphp и файл suphp.conf:
Далее добавим файл config для загрузки модуля suphp в apache:
Затем откроем /etc/apache2/mods-available/suphp.conf.
. и добавим следующее:
Включим модуль suphp в apache:
И перезапустим Apache:
12 XCache и PHP-FPM
Xcache представляет собой бесплатный PHP opcode кэшер, предназначенный для кэширования и оптимизации промежуточного кода PHP. Он схож с другими opcode кэшерами, например, eAccelerator или APC. Настоятельно рекомендуется установить один из этих кэшеров, если вы хотите ускорить страницу PHP.
Xcache устанавливается следующим образом:
12.2 PHP-FPM
Начиная с ISPConfig 3.0.5, дополнительным режим PHP, который можно выбрать для использования совместно с Apache: PHP-FPM.
Для использования PHP-FPM совместно Apache, нам потребуется mode_fastcgi модуля Apache(не путать с mod_fcgid). Установим PHP-FPM и mode_fastcgi следующим образом:
Убедимся, что модуль включен и перезапустим Apache:
13 Install Mailman
Начиная с версии 3.0.4, ISPConfig также позволяет управлять (создавать/редактировать/удалять) список адресатов Mailman. Если вы хотите пользоваться данной возможностью, потребуется установить Mailman следующим образом:
Выберем по крайне мере один язык:
Перед запуском Mailman необходимо создать первый список адресатов под названием mailman:
Откроем файл /etc/aliases
. и добавим следующие строки:
и затем перезапустим Postfix:
В конце активируем конфигурацию Mailman Apache:
и затем запустим Mailman:
14 УстановкаPureFTPd и Quota
PureFTPd и quota устанавливаются следующим образом:
Затем отредактируем файл /etc/default/pure-ftpd-common.
. и убедимся, что режимом запуска установлена автономная установка и значение VIRTUALCHROOT=true:
Теперь настроим PureFTPd, для того, чтобы разрешить сессии FTP и TLS. FTP является очень ненадёжным протоколом, потому что все пароли и данные передаются в виде текста. При использовании TLS, вся коммуникации зашифрована, что делает FTP гораздо более защищённым.
Для разрешения сессий FTP иTLS введём следующее:
Для использования TLS необходимо создать сертификат SSL. Создадим директорию /etc/ssl/private/, в которой будет находится данный сертификат:
Далее сгенерируем сертификат SSL следующим образом:
Изменим права доступа сертификата SSL:
Затем перезапустим PureFTPd:
Для включения quota выполним следующее:
15. Установка сервера BIND DNS
BIND устанавливается следующим образом:
16 Установка Vlogger, Webalizer и AWStats
Vlogger, Webalizer и AWStats устанавливаются следующим образом:
. и превратим в комментарий всё в этом файле:
17 Установка Jailkit
Jailkit потребуется, если вы хотите сделать chroot для пользователей SSH. Установка производится следующим образом: (важно: Jailkit может быть установлен только перед установкой ISPConfig –после его уже не получится установить!):
Устанавливаем пакетYou Jailkit. deb следующим образом:
18 Установка fail2ban
Установка fail2ban необязательна, но рекомендована, так как монитор ISPConfig попытается показать запись событий:
Для создания монитора fail2ban PureFTPd и Dovecot, создадим файл /etc/fail2ban/jail.local:
Затем создадим 2 файла фильтра:
Добавим строку ignoreregex в файл postfix-sasl:
Установщик автоматически настроит все сервисы.
Теперь система готова к использованию.
Приложение ISPConfig Monitor для Android
С помощью ISPConfig Monitor можно проверять состояние сервера и запущенные службы. Также можно проверять порты TCP иUDP и пинговать сервера. Приложение можно использоваться для запроса подробностей серверов, на который установлен ISPConfig (минимальная версия ISPConfig 3, которая поддерживается приложением - 3.0.3.3!); вся эти подробности включают в себя всю информацию с модуля мониторинга ISPConfig Control Panel (например службы, почтовые и системные журналы событий, очередь почты, информацию о ЦП и памяти, использование диска, детали ОС, журнал событий RKHunter и т.д.) и так как ISPConfig поддерживает несколько серверов, можно проверить, все ли сервера упраывляются главным сервером ISPConfig.
Для загрузки приложения и прочтения инструкций перейдите на официальный сайт.
Использование OpenVZ
Если сервер на базе Debian, который Вы только что установили, является виртуальной машиной (например, OpenVZ ), в хост-системе необходимо прописать следующее:
Предполагается, что ID в OpenVZ это 101 – замените на корректный VPS ID для вашей системы.
Стек LAMP является синонимом LAMP сервера или LAMP веб -сервера. Он включает Linux, Apache, MySQL (MariaDB) и PHP.
Обновите систему
Убедитесь, что ваш сервер полностью в актуальном состоянии с помощью:
Установка Apache
Чтобы установить Apache на вашем сервере 8 Debian, вам нужно выполнить следующую команду:
После завершения установки, вы должны включить Apache для запуска при загрузке:
Установка MYSQL
Теперь давайте установим MySQL. Выпуск следующее:
Во время установки вам будет предложено ввести пароль для пользователя root в MySQL. Не вводите пароль, который легко взломать. Он должен содержать не менее 8 символов, смешанного с верхним и нижним регистром.
Теперь, когда MySQL установлен, мы рекомендуем Вам сделать безопасную установку MySQL командой:
Включение MySQL для запуска при загрузке:
Вы можете проверить состояние службы MySQL, выполнив:
Установка PHP
Установите PHP, выполнив следующую команду:
Создайте файл, давайте назовем его info.php в директории /var/www/html:
Вставьте следующий код в файл:
Перезапустите Apache для того, чтобы изменения вступили в силу:
Установка PhpMyAdmin
Дополнительно, вы должны установить PhpMyAdmin, так что вы можете управлять вашими базами данных проще с помощью интуитивного графического интерфейса PhpMyAdmin.
Введите следующую команду:
Вы можете войти, используя root как имя пользователя и пароль, который вы использовали при настройке установки MySQL.
Вот и все. Вы успешно установили LAMP и PhpMyAdmin на сервере с Debian 8.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
LAMP это акроним от Linux, Apache, MySQL, PHP. В этой инструкции будет описано как установить веб-сервер Apache на Debian 8 с поддержкой PHP5 и MySQL
Эти настройки будут отличаться от ваших, поэтому в процессе настройки измените их.
Установка MySQL
Для начала установим сервер MySQL, для этого в командной строке нужно выполнить:
apt-get install mysql-server mysql-client
При установки у вас спросить пароль для MySQL от пользователя root.
Установка Apache
Для установки веб-сервера Apache нужно выполнить команду:
apt-get install apache2-mpm-prefork
После, откройте в браузере http://192.168.0.100 , и на экране будет отображаться стандартная страница с надписью "It works!"
По умолчанию в веб-сервере Apache корневая директория для сайтов (document root) расположена в директории /var/www/html
Конфигурационный файл (файл с настройками) веб-сервера Apache находится в файле /etc/apache2/apache2.conf
Более подробная документация по настройке находится в файле /usr/share/doc/apache2/README.Debian.gz
Установка PHP
Для установку PHP необходимо выполнить команду:
apt-get install php5 libapache2-mod-php5
Дополнительно можно установить и некоторые другие пакеты для работы PHP с различными модулями. Для этого выполним команду:
apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl
После установки нужно выполнить перезагрузку веб-сервера apache:
systemctl restart apache2.service
Для проверки работы PHP в корневой директории (document root) веб-сервера apache /var/www/html можно создать файл pi.php который будет содержать функцию phpinfo()
(функция phpinfo() отображает много полезной информации о настройках веб-сервера и PHP).
Для это нужно выполнить команду:
echo "<?php phpinfo(); ?>" > /var/www/html/pi.php
После чего в браузере можно открыть страницу:
Установка phpMyAdmin
phpMyAdmin это программа предоставляющая веб-интерфейс через который можно управлять базами данных MySQL
Для установки выполним команду:
apt-get install phpmyadmin
Пароль от пользователя который вводился при установке mysql (пароль от пользователя баз данных root)
Так как стандартная установка через apt-get притягивает за собой кучу не нужных нам зависимостей, например apache2, php5 вместо php7.0. Мы установим этот удобный инструмент вручную. Будет он работать у нас на LEMP стеке (связка nginx+php7.0-fpm+mariadb), по установке и настройке которого можно узнать из этой статьи. Предпологаем, что мы работаем из-под root-пользователя.
Установка phpmyadmin
Скачаем свежий архив:
Распакуем архив: (перед этим необходимо установить пакет unzip):
Переименуем папку и удалим архив:
Настройка nginx
Я повесил pma на не стандартный порт и поддомен, чтобы ботам сложнее было его искать. Вместо domain.ltd подставляем свой домен.
Создадим файл настроек:
Активируем конфиг и перезапустим nginx:
На этом базовая установка завершена, но мы еще настроим расширенные возможности.
Настройка MariaDB
Создадим базу и дадим нужные привелегии для расширенных возможностей pma, например закладки и история.
Заливаем структуру таблиц:
Создаем конфиг phpmyadmin:
Пишем произвольную фразу в blowfish_secret для безопасности и активируем SSL(если установлен сертификат) ForceSSL = true.
Выставим права на всякий случай:
Результать ниже на стриншоте.
Для начала нам необходимо сгенерировать хеш пароля. Есть стандартные улититы из Apache, но мы не будем их использовать, так как у нас нет необходимости в установке целого пакета с зависимостями. Для этого дела есть замечательный Online генератор, полученный хеш и логин записываем в файл и назовем его htpasswd(принципиального значения это не имеет).
Теперь добавляем в конфиг секцию для авторизации
Проверяем конфиг и перезапускам Nginx:
Переходим по адресу httр://pma.domain.ltd:85, выскочит окно с предложением ввода логина и пароля, пишем логин admin пароль password и попадаем в phpMyAdmin
На этом установку можно завершить.
Обо всех найденных ошибках, а также, предложения по улучшению и просто возникших вопросах-прошу в комментарии.
Игорь Горгуль
Оставить комментарий Отменить комментарий
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Читайте также: