Установка и настройка phpMyAdmin в среде Ubuntu
Как установить phpMyAdmin на nginx и Ubuntu 14.04
01.09.2016 09:52
#Apache#Linux/Ubuntu#Nginx#PHP#MySQL
Реляционные системы управления базами данных, к примеру MySQL, используются на многих сайтах и веб-приложениях. Однако далеко не каждый пользователь может администрировать их через командную строку.
Для того, чтобы решить эту проблему, был создан проект под названием phpMyAdmin. Это приложение представляет собой веб-интерфейс, который используется для работы с СУБД.
Следуя этой инструкции, вы сможете установить и защитить от недоброжелателей phpMyAdmin на сервере Ubuntu 14.04.
В данном случае будет использоваться nginx, который представляет собой легковесный и производительный веб-сервер, способный работать с большой нагрузкой.
Требования
Перед тем, как приступить к дальнейшим действиям, вам нужно убедиться, что у вас имеется все перечисленное ниже.
Вы обязательно должны выполнить настройку сервера Ubuntu 14.04 – это важно, так как вам понадобится надежная база для того, чтобы развернуть связку, о которой пойдет речь далее. Также вам понадобится пользователь, который не имеет root-прав (то есть не суперпользователь), но наделен sudo-правами для выполнения административных задач.
Если все вышеперечисленное у вас установлено и настроено, тогда переходите к следующей части этой статьи.
Шаг 1: устанавливаем phpMyAdmin
Так как у вас на сервере уже имеется стек LEMP, вы можете сразу перейти к установке phpMyAdmin. Это можно сделать, используя стандартные репозитории Ubuntu, поэтому сам процесс установки достаточно прост.
Первым делом обновите список локальных пакетов сервера. Это необходимо сделать для того, чтобы убедиться, что у вас в наличии самый свежий список ссылок на доступные пакеты. Далее используйте консольный инструмент apt для того, чтобы загрузить программное обеспечение из репозиториев и установить его на свою систему:
sudo apt-get update sudo apt-get install phpmyadmin
Во время установки у вас будет запрошена некоторая информация. В частности, вам нужно будет выбрать веб-сервер, который автоматически настроит утилита. Но так как nginx – тот веб-сервер, который вы используете – выбрать нельзя, то просто нажмите TAB для перехода к следующему этапу установки.
Далее вам нужно будет выбрать, будете ли вы использовать dbconfig-common для того, чтобы настроить базу данных для phpMyAdmin. Выберите “Yes” («Да»).
Для того, чтобы применить изменения, вам необходимо ввести административный пароль от базы данных, который вы создали ранее во время установки MySQL. После этого вам нужно выбрать и подтвердить пароль для новой базы данных, в которой будут храниться данные phpMyAdmin.
Теперь, когда установка завершена, вам необходимо создать символьную ссылку от установочных файлов к корневой директории документов nginx. Это нужно для того, чтобы веб-сервер nginx мог находить и правильно обрабатывать файлы phpMyAdmin. Создание символьной ссылки происходит после ввода данной команды:
sudo ln -s /usr/share/phpmyadmin /usr/share/nginx/html
Наконец, вам необходимо включить PHP-модуль mcrypt, на который опирается phpMyAdmin. Так как он устанавливается вместе с phpMyAdmin, то вам нужно просто включить его и перезапустить PHP-процессор. Для этого введите следующие команды:
sudo php5enmod mcrypt sudo service php5-fpm restartТеперь вы можете приступать к работе с веб-приложением phpMyAdmin. Для того, чтобы попасть в интерфейс, добавьте к доменному имени или публичному IP-адресу /phpmyadmin в вашем браузере:
http://доменное_имя_или_IP-адрес/phpmyadmin
Окно авторизации выглядит следующим образом:
Для того, чтобы авторизоваться, используйте имя пользователя и пароль действующего пользователя MySQL. Например, введите имя суперпользователя и его пароль от базы MySQL. Таким образом вы попадете в административную панель:
Походите по разделам для того, чтобы ознакомиться с интерфейсом. Следующим шагом вам нужно будет защитить данный интерфейс от незаконного доступа.
Шаг 2: добавляем защиту phpMyAdmin
После выполнения всех действий, перечисленных в предыдущем шаге, у вас теперь имеется phpMyAdmin, который полностью готов к использованию. Но имейте в виду, что, установив данное приложение, вы открыли доступ к MySQL извне, а значит, безопасность вашего сервера может быть под угрозой.
Даже несмотря на наличие аутентификации, это все равно является проблемой, так как phpMyAdmin предоставляет доступ к большому объему данных и поэтому зачастую становится целью атак злоумышленников.
Для того, чтобы уменьшить вероятность выбора вашего приложения в качестве цели и последующего взлома, вы можете следовать двум простым методикам.
Во-первых, вам нужно будет изменить местоположение интерфейса с /phpmyadmin на какое-либо другое; это делается для того, чтобы отсечь поток ботов, которые будут пытаться взломать вас путем полного перебора.
Во-вторых, вам будет необходимо создать дополнительную проверку подлинности шлюза на уровне веб-сервера, которую нужно будет пройти перед загрузкой окна авторизации в phpMyAdmin.
Изменение местонахождения входа в приложение
Для того, чтобы сервер nginx мог находить и обслуживать файлы phpMyAdmin, в предыдущем шаге вы создали символьную ссылку из директории phpMyAdmin в корневую директорию с документами.
Для того, чтобы поменять URL, который ведет на авторизацию в phpMyAdmin, вам просто нужно задать новое имя символьной ссылке. Переместитесь в корневую директорию с документами nginx для того, чтобы выполнить следующие действия:
cd /usr/share/nginx/html ls -l total 8 -rw-r—r— 1 root root 537 Mar 4 06:46 50x.html -rw-r—r— 1 root root 612 Mar 4 06:46 index.html lrwxrwxrwx 1 root root 21 Aug 6 10:50 phpmyadmin -> /usr/share/phpmyadmin
Как вы можете видеть, в данной директории расположена символьная ссылка под названием phpmyadmin. И это имя вы можете поменять на любое, какое захотите. После этого поменяется ссылка, по которой будет происходить доступ в phpMyAdmin через браузер. И именно благодаря этому изменению автоматизированные боты не смогут найти туда путь.
Выберите имя, которое не содержит в себе связи с тем, куда будет вести ссылка. К примеру, можно использовать что-то вроде /noinfohere. После выбора подходящей фразы вам необходимо внести изменения:sudo mv phpmyadmin noinfohere ls -l total 8 -rw-r—r— 1 root root 537 Mar 4 06:46 50x.html -rw-r—r— 1 root root 612 Mar 4 06:46 index.html lrwxrwxrwx 1 root root 21 Aug 6 10:50 noinfohere -> /usr/share/phpmyadmin
После этого если вы попытаетесь попасть в интерфейс phpMyAdmin через предыдущую ссылку, то вы увидите ошибку 404:
http://доменное_имя_или_IP-адрес/phpmyadmin
Теперь для выхода в phpMyAdmin используйте новую ссылку:
http://доменное_имя_или_IP-адрес/noinfohere
Установка шлюза аутентификации веб-сервера
Следующее, что вам необходимо сделать для того, чтобы обеспечивать безопасность phpMyAdmin, это создать проверку подлинности, которую будет проходить пользователь перед тем, как ему станет доступно окно с авторизацией в phpMyAdmin.
Однако nginx, как и большинство веб-серверов, содержит в себе эту возможность по умолчанию, поэтому единственное, что необходимо сделать, — это задать нужные настройки в конфигурационном файле nginx.
Но перед этим вам нужно создать файл паролей, в котором будут храниться все данные, связанные с аутентификацией. Так как используется nginx, то пароли должны быть обязательно зашифрованы при помощи функции crypt(). Вы можете сделать это, используя криптографический пакет OpenSSL, который по умолчанию установлен на вашем сервере.
Для того, чтобы создать зашифрованный пароль, введите следующую команду:
Далее у вас будет запрошен пароль, который вы хотите использовать, и его подтверждение. После чего на экране будет выведена зашифрованная версия вашего пароля, которая может выглядеть, к примеру, так:
Скопируйте данное значение, так как его нужно добавить в аутентификационный файл, который вы создадите далее.
Перейдем к его созданию. Назовите файл pma_pass и расположите его в директории с настройками nginx:
sudo nano /etc/nginx/pma_passДалее вам нужно в этом файле указать имя пользователя (в данном случае будет primer, но вы должны выбрать другое имя), которое вы хотите использовать, после него поставьте двоеточие (:) и вставьте зашифрованную версию вашего пароля, который вы скопировали до этого. Запись должна выглядеть следующим образом:
Сохраните и закройте файл после того, как внесли в него все необходимые изменения.
Теперь вам нужно внести определенные изменения в файл с настройками nginx. Для начала откройте файл в текстовом редакторе:
sudo nano /etc/nginx/sites-available/default
В нем вам нужно добавить новое расположение приложения phpMyAdmin (в данной инструкции используется /noinfohere).
Создайте новую секцию в разделе server, но вне каких-либо других блоков. В данном примере блок с новым расположением будет расположен ниже блока location /:
server { . . . location / { try_files $uri $uri/ =404; } location /noinfohere { } . . . }
В этом блоке нам нужно задать значение директивы под названием auth_basic – это сообщение, которое будет выводиться пользователям при аутентификации. При этом для большей защиты не стоит давать какие-то конкретные указания на то, какая именно аутентификация предстоит неавторизованным пользователям. Поэтому, к примеру, можно использовать просто словосочетание “Admin Login”.
Далее вам нужно использовать директиву под названием auth_basic_user_file для того, чтобы она указывала веб-серверу на тот аутентификационный файл, который вы создали ранее. Nginx будет запрашивать у пользователя авторизационные данные и сверять, совпадают ли введенные данные с теми, которые содержатся в аутентификационном файле.
После этого ваш файл должен выглядеть примерно так:
server { . . . location / { try_files $uri $uri/ =404; } location /noinfohere { auth_basic «Admin Login»; auth_basic_user_file /etc/nginx/pma_pass; } . . . }
Сохраните и закройте файл после ввода всей необходимой информации.
Для того, чтобы все изменения вступили в силу, вам необходимо перезагрузить веб-сервер:
sudo service nginx restart
Теперь, когда вы захотите войти в phpMyAdmin в вашем браузере, у вас будет запрошены имя пользователя и пароль, которые вы добавили в файл pma_pass:
http:// доменное_имя_или_IP-адрес/noinfohere
После того, как вы введете данные, вы увидите стандартное окно для авторизации в phpMyAdmin. Этот дополнительный уровень безопасности не только улучшает защиту вашей СУБД, но и препятствует сохранению в логах множества неудачных попыток ввести данные авторизации.
Заключение
Теперь для управления MySQL вы можете использовать удобный и защищенный веб-интерфейс. Данное приложение позволяет использовать практически все функции, которые доступны из командной строки MySQL: вы можете просматривать базы данных, схемы, выполнять запросы, а также создавать новые наборы и структуры данных.
Установка и настройка phpMyAdmin в среде Ubuntu
Действительно эффективных решений для работы с базами данных немного. В основном активно используется несколько программ и решений.
Приложение phpMyAdmin известно тем, что позволяет работать без прямого ввода на языке запросов SQL, обеспечивая простоту и лояльность к начинающему пользователю. Установка phpMyAdmin Ubuntu — тривиальная задача для профессионала.
Начинающий же пользователь может столкнуться с некоторыми неожиданностями и спорными моментами.
Как установить и настроить работу phpMyAdmin в среде Ubuntu.
Что представляет собой phpMyAdmin?
phpMyAdmin — это традиционное web-приложение с открытым исходным кодом, которое выпускается под лицензией GNU GPL.
То есть каждый желающий может использовать программу для любых целей, а также изменять её код и модифицировать ПО.
Приложение позволяет выполнять различные задачи по администрированию СУБД MySQL, команды языка запросов, а также просматривать базы данных. И всё это доступно прямо из браузера!Программа действительно завоевала немалую популярность. Оно широко используется в различных свободных и коммерческих проектах, а знатоки языка PHP могут свободно встраивать в неё свою функциональность. Сейчас мы коротко рассмотрим, что сделать перед тем, как установить phpMyAdmin на Ubuntu.
Что сделать в первую очередь?
Перед тем как установить phpMyAdmin…
В первую очередь, удостоверьтесь, что у вас есть требуемые права. В получении прав root нет необходимости, а вот привилегии на команду sudo должны присутствовать.
Во-вторых, на вашем сервере должен быть настроен LAMP. Это стек из технологий Linux (Ubuntu в том числе), веб-сервера Apache, СУБД MySQL и языка программирования PHP. Без наличия этих технологий продолжать работу нет смысла.
В-третьих, обзаведитесь доменом с сертификатом SSL/TLS. Известно, что установленный на Убунту Сервер phpMyAdmin часто подвергается атакам. Если необходимо обезопасить сервер от угроз — лучше не подключайтесь к нему по незащищённому (HTTP) соединению.
Дальнейшие действия
Для начала установки приложения phpMyAdmin на Ubuntu Server понадобится обновить информацию о пакетах:
«sudo apt-get update»
Дальше можно перейти к загрузке и установке нужных файлов:
«sudo apt-get install phpMyAdmin php-mbstring php-gettext»
При начальной настройке phpMyAdmin, Ubuntu потребуется узнать дополнительную информацию. Выберите сервер «apache2». На вопрос об использовании «dbconfig-common» ответьте «Да». Потом введите данные администратора, где это будет необходимо. После этого введите и повторите пароль для самой программы.
А сейчас включите расширения PHP. Это нужно будет сделать вручную:
«sudo phpenmod mcrypt
sudo phpenmod mbstring»
Теперь выполните перезагрузку программы Апач. Это позволит применить изменения:
«sudo systemctl restart apache2»
Доступ к интерфейсу программы phpMyAdmin можно будет получить с помощью…:
«https://x/phpMyAdmin»
где «x» — это доменное имя или IP-адрес сервера. Теперь можно без проблем войти в настроенную программу. Для этого используется стандартное имя — «root», а также пароль, который вы ввели при настройке MySQL. Следующие шаги по настройке приложения phpMyAdmin в ОС Ubuntu понадобятся, если вы хотите сделать работу безопаснее.
Обеспечение безопасности
С помощью дополнительных приёмов можно обеспечить «бонусную» защиту при управлении СУБД через браузер.
.htaccess
Файл .htaccess нужно применять, чтобы обеспечить управление сервером Apache со стороны того, кто им пользуется. Этот файл содержит определённые директивы, которые обязательны для исполнения на всём веб-сервере.
Помещать его следует в корневой директории. Он также может располагаться в любом другом месте. Тогда правила, записанные в такой .
htaccess, будут иметь более высокий приоритет, хоть и действовать для конкретного расположения.
Доступные для .htaccess директивы следует искать на официальном сайте веб-сервера Apache. Поддержку файлов такого типа нужно заранее включить.
Как включить разрешение на использование?
Перейдите в конфигурацию Apache:
«sudo nano /etc/apache2/conf-available/phpMyAdmin.conf»
Сюда нужно добавить данные следующего вида:
«Options FollowSymLinksDirectoryIndex index.phpAllowOverride All
. . .»
После этого закройте файл, сохранив изменения. Перезапустите Apache командой такого вида:
«sudo systemctl restart apache2».
Создание файла для директив
Введите команду:
«sudo nano /usr/share/phpMyAdmin/.htaccess»
Это позволит создать файл «.htaccess» и получить разрешение на его правку. Файл должен содержать информацию. Внесите в него следующие данные:
«AuthType BasicAuthName «Restricted Files»AuthUserFile /etc/phpMyAdmin/.htpasswd
Require valid-user»
Не забудьте сохранить файл перед окончанием работы с ним.
Как создать файл пароля?
Ранее мы предложили вам задать путь для файла с паролем. Теперь этот файл нужно создать и отредактировать. Настроенный пароль позволит выполнять аутентификацию в phpMyAdmin из любого места, и не только в Убунту.
Установите пакет поддержки программы «.htpasswd».
«sudo apt-get install apache2-utils»
Создайте файл «.htpasswd» и добавьте в него нового пользователя. Сделать это лучше так:
«sudo htpasswd -c /etc/phpMyAdmin/.htpasswd username»
где «username» — это имя пользователя.
Откат изменений. Как удалить phpMyAdmin?
Если возникла потребность выполнить удаление phpMyAdmin, Ubuntu позволяет сделать следующее:
Удаляем пакеты (только в обратном порядке):
«sudo apt-get purge phpMyAdminsudo apt-get purge php5-mysqlsudo apt-get purge php5sudo apt-get purge mysql-server
sudo apt-get purge apache2»
Производим удаление зависимостей:
«sudo apt-get purge apache2.2-commonsudo apt-get purge apache2-mpm-prefork
sudo apt-get purge libapache2-mod-php5»
Если используется Apache 2, нужно удалить директории:
«/etc/apache2/
/etc/php5/apache2/»
Установка apache2 + php + mysql + phpmyadmin на ubuntu 16.04
Решил поделиться с вами опытом установки софта на Ubuntu 16.04.
Напомню, все ниже описанные операции нужно выполнять под рутом (sudo su -).
настроим Apache2
nano /etc/apache2/apache2.conf ## фиксим предупреждения при перезапуске Apache ServerName localhost ## Включаем интерпретацию php AddType application / x-httpd-php .php .phtml ## Устанавливаем кодировку UTF-8 по умолчанию AddDefaultCharset UTF-8
nano /etc/apache2/apache2.conf## фиксим предупреждения при перезапуске ApacheServerName localhost## Включаем интерпретацию phpAddType application / x-httpd-php .php .phtml## Устанавливаем кодировку UTF-8 по умолчаниюAddDefaultCharset UTF-8 |
перезапускаем Apache
service apache2 restart
Открываем http://localhost/ и радуемся.
Настраиваем виртуальные хосты (VirtualHost)
(только для локальных хостов) создать файл vhosts.sh со следующим содержимым:
#!/bin/bash echo «Creating Virtual Host» cd /etc/apache2/sites-available cat «$1.conf» ServerAdmin webmaster@localhost ServerName $1 ServerAlias www.
$1 DocumentRoot «/var/www/$1» Options All AllowOverride All EOF mkdir «/var/www/$1» cd /etc/apache2/sites-enabled ln -s «/etc/apache2/sites-available/$1.conf» «$1.conf» echo «Editing /etc/hosts» cat «/etc/hosts» 127.0.0.
1 $1 EOF echo «Set permissions» chmod 0777 -R «/var/www/$1» echo «Restarting Apache2» /etc/init.d/apache2 restart echo «Finished!» echo «Local address: /var/www/$1» echo «Web address: http://$1»
123456789101112131415161718192021222324252627282930 | #!/bin/bashecho «Creating Virtual Host»cd /etc/apache2/sites-availablecat «$1.conf» ServerAdmin webmaster@localhost ServerName $1 ServerAlias www.$1 DocumentRoot «/var/www/$1» Options All AllowOverride AllEOFmkdir «/var/www/$1″cd /etc/apache2/sites-enabledln -s «/etc/apache2/sites-available/$1.conf» «$1.conf»echo «Editing /etc/hosts»cat «/etc/hosts»127.0.0.1 $1EOFecho «Set permissions»chmod 0777 -R «/var/www/$1″echo «Restarting Apache2″/etc/init.d/apache2 restartecho «Finished!»echo «Local address: /var/www/$1″echo «Web address: http://$1» |
Даете права на выполнение:
chmod + x /var/www/vhosts.sh
chmod + x /var/www/vhosts.sh |
Пример создания хоста:
sudo /var/www/vhosts.sh mysite.loc
sudo /var/www/vhosts.sh mysite.loc |
Все последующие шаги по virtualhosts можно пропускать.
В /etc/hosts прописываем наши хосты: (nano /etc/hosts)
127.0.0.1 mysite.loc
Переходим в папку /etc/apache2/
Смотрим, что внутри:
root @ HP: /etc/apache2 # ls -l всего 88 -rw-r — r— 1 root root 7728 26 апреля 22:55 apache2.conf -rw-r — r— 1 root root 7691 26 апреля 22:34 apache2.
conf ~ drwxr-xr-x 2 root root 4096 26 апреля 22:52 conf-available drwxr-xr-x 2 root root 4096 26 апреля 22:52 conf-enabled -rw-r — r— 1 root root 1782 3 января 16:48 envvars -rw-r — r— 1 root root 31063 3 января 16:48 magic drwxr-xr-x 2 root root 12288 26 апреля 22:27 mods-available drwxr-xr-x 2 root root 4096 26 апреля 22:27 mods-enabled -rw-r — r— 1 root root 320 7 января 15:23 ports.conf drwxr-xr-x 2 root root 4096 26 апреля 22:43 sites-available drwxr-xr-x 2 root root 4096 26 апреля 22:44 sites-enabled
root @ HP: /etc/apache2 # ls -lвсего 88-rw-r — r— 1 root root 7728 26 апреля 22:55 apache2.conf-rw-r — r— 1 root root 7691 26 апреля 22:34 apache2.conf ~drwxr-xr-x 2 root root 4096 26 апреля 22:52 conf-availabledrwxr-xr-x 2 root root 4096 26 апреля 22:52 conf-enabled-rw-r — r— 1 root root 1782 3 января 16:48 envvars-rw-r — r— 1 root root 31063 3 января 16:48 magicdrwxr-xr-x 2 root root 12288 26 апреля 22:27 mods-availabledrwxr-xr-x 2 root root 4096 26 апреля 22:27 mods-enabled-rw-r — r— 1 root root 320 7 января 15:23 ports.confdrwxr-xr-x 2 root root 4096 26 апреля 22:43 sites-availabledrwxr-xr-x 2 root root 4096 26 апреля 22:44 sites-enabled |
В папке sites-available хранятся кофниги доступных хостов, а в sites-enabled ссылки на активные хосты.
Переходим в доступные хосты и создаем конфиг для mysite.loc. Кстати, если ваш дефолтный конфиг заканчивается на .conf тогда создавайте конфиги с расширением * .conf.
nano sites-available/mysite.conf
nano sites-available/mysite.conf |
Пишем туда:
ServerName mysite.loc DocumentRoot /var/www/mysite.loc AllowOverride All
ServerName mysite.loc DocumentRoot /var/www/mysite.loc AllowOverride All |
Данной записи достаточно, чтобы работал ваш локальный хост. Теперь нужно создать ссылку на него в sites-enabled.
a2ensite mysite.conf
Ошибки: если в вас возникает ошибка и вы не можете создать ссылку. Тогда это сделать можно следующей записью:
ln /etc/apache2/sites-available/mysite.conf /etc/apache2/sites-enabled/
ln /etc/apache2/sites-available/mysite.conf /etc/apache2/sites-enabled/ |
Теперь нужно только перезагрузить настройки Apache2:
service apache2 reload ## или, если необходимо service apache2 restart
service apache2 reload## или, если необходимоservice apache2 restart |
Итак, Apache2 работает, первый хост добавлен!
ставим MySQL
MySQL содержится в репозиториях Ubuntu. Он разбит на несколько пакетов.
Для того чтобы установить MySQL сервер выполните команду:
sudo apt-get install mysql-server
sudo apt-get install mysql-server |
При установке конфигурации скрипт запросит пароль администратора (root) базы данных.
Сначала нужно удалить все старые версии, если есть
sudo apt-get purge `dpkg -l | grep php | awk '{print $ 2}' | tr » n» «» `
sudo apt-get purge `dpkg -l | grep php | awk '{print $ 2}' | tr » n» «» ` |
добавляем PPA
sudo add-apt-repository ppa:ondrej/php
sudo add-apt-repository ppa:ondrej/php |
обновляемся
sudo apt-get update
ставим php
sudo apt-get install php5.6
sudo apt-get install php5.6 |
дополнительные модули
sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml
sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml |
Смотрим версию:
Как пользоваться phpMyAdmin на Ubuntu
Всем привет! В одной из недавних статей я рассказал об установке LAMP на Ubuntu — локального сервера для Linux. К сожалению, средство администрирования баз данных phpMyAdmin не входит в набор инструментов LAMP, поэтому устанавливается отдельно. Из этой статьи вы узнаете, как пользоваться phpMyAdmin.
Установка phpMyAdmin на Ubuntu
Очень часто phpMyAdmin (PMA) встречается на платных хостингах и используется для создания и администрирования баз данных (БД) сайтов. Устанавливать ее на платный хостинг не надо — там уже все сделано до вас.
Чаще всего вы будете сталкиваться с установкой PMA на свой компьютер для администрирования баз данных локального сервера.
В качестве примера я рассмотрю установку phpMyAdmin на Ubuntu — один из самых популярных дистрибутивов Linux.
Откройте терминал и введите следующую команду:
sudo apt-get install phpmyadmin |
После этого введите пароль администратора и согласитесь с продолжением установки.
Выберете веб-сервер, который автоматически будет настроен для запуска PMA. В нашем случае это apache2.
Соглашайтесь настроить БД с помощью dbconfig-common.
Введите пароль администратора MySQL.
Задайте пароль для регистрации PMA на сервере баз данных и далее подтвердить его. После окончания установки, phpMyAdmin будет доступна по адресу http://localhost/phpmyadmin.
phpMyAdmin не работает
Если перейдя по этому адрес, вы увидите страницу с ошибкой, то можно сделать следующее.
- введите в терминале команду:
sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d - перезагрузите сервер apache с помощью команды:
sudo /etc/init.d/apache2 restart - повторно зайдите по адресу http://localhost/phpmyadmin, теперь вы должны увидеть страницу входа в панель администратора phpMyAdmin.
Пользователь будет root, а пароль вы задали при установке.
Создание новой базы данных
Пройдя аутентификацию, мы попадаем на стартовую страничку PMA, на которой можно выбрать язык интерфейса, если вы ранее этого еще не сделали, посмотреть информацию о системе управления базами данных MySQL и используемом веб-сервере. В левом же столбике представлены все имеющиеся БД.
Что в первую очередь пригодится? Конечно, умение создавать БД для будущего сайта. Для этого перейдите на вкладку Базы данных.
Достаточно ввести название новой БД и кликнуть на кнопку «Создать» — все остальное phpMyAdmin сделает автоматически.
Появится сообщение об успешном создании БД и она добавится в список ниже.
Добавление нового пользователя БД
Создав новую БД, необходимо еще и добавить пользователя, который бы мог ей пользоваться.
Для этого кликните на надписи «Проверить привилегии». Вас перебросит на страницу «Пользователи с правами доступа к БД», на которой следует кликнуть на «Добавить нового пользователя».
В разделе «Информация учетной записи» укажите имя пользователя (английскими буквами), хост (на локальном сервере — localhost) и пароль.Чуть ниже необходимо задать привилегии для нового пользователя. На локальном сервере можно не задумываясь отметить все пункты галочками. После этого следует нажать на кнопку «ОК» в самом низу и новый пользователь будет создан.
Импорт и экспорт баз данных
Для создания бэкапа (резервной копии) базы данных служит раздел «Экспорт».
В случае «быстрого» способа экспорта будут созданы бэкапы сразу всех доступных баз данных в формате, выбранном ниже.
Если необходимо создать резервную копию какой-то одной БД, то следует воспользоваться «обычным способом». В этом случае выберете нужную БД и в самом конце странице нажмите ОК.
В случае, если с базой данных что-то случилось и необходимо воспользоваться ранее созданной ее резервной копией необходимо:
- Удалить поврежденную БД. Для этого перейдите на закладку «Базы данных», отметьте поврежденную БД и нажмите «Удалить»:
- Загрузить (импортировать) рабочую версию БД. На вкладке «Импорт» нажмите кнопку Browse… (обзор), найдите файл бэкапа на своем компьютере и нажмите «ОК» в конце страницы.
На этом все. Как-то мало текста, но много картинок в статье получилось. Наверное, так и должно быть, ведь работать с phpMyAdmin не так сложно — главное знать, где и что находится, а это лучше всего показать на картинках.
Подписывайтесь на ленту новостей блога, чтобы всегда быть в курсе новых статей. Берегите себя!
Лучший способ выразить благодарность автору — поделиться с друзьями!
Узнавайте о появлении нового материала первым! Подпишитесь на обновления по email:
Следите за обновлениями в и RSS.
Как установить и настроить phpMyAdmin в Ubuntu 16.04
Несмотря на то, что многие пользователи испытывают потребность в системе управления базами данных вроде MySQL, работа с MySQL только с помощью средств командной строки может вызывать дискомфорт.
phpMyAdmin был создан для того, чтобы пользователи могли управлять базой данных MySQL с помощью веб-интерфейса. В этой статье мы расскажем о том, как установить и настроить phpMyAdmin для безопасной работы с вашими базами данных в Ubuntu 16.04.
Перед установкой
Перед тем, как мы начнём, убедитесь, что у вас есть всё необходимое.
Прежде всего, мы будем исходить из того, что у вас есть не-рутовый (non-root) пользователь с привилегиями sudo. Настроить такую учётную запись пользователя можно следуя шагам 1-4 в статье о первичной настройке сервера на Ubuntu 16.04.
Мы также будем считать, что вы завершили настройку стека LAMP (Linux, Apache, MySQL и PHP) на вашем сервере с Ubuntu 16.04. Если вы ещё не сделали этого, вы можете ознакомиться с этим процессом в статье об установке стека LAMP на Ubuntu 16.04.
И, наконец, необходимо иметь в виду некоторые вопросы безопасности при использовании phpMyAdmin, поскольку он:
- Напрямую взаимодействует с MySQL.
- Выполняет аутентификацию использую логин и пароль MySQL.
- Выполняет и возвращает результаты произвольных запросов SQL.
По этим причинам, а также потому, что phpMyAdmin является одним из наиболее распространённых и атакуемых PHP приложений, вам не стоит запускать phpMyAdmin на удалённых машинах с простым соединением HTTP. Если у вас ещё нет домена с настроенным SSL/TLS сертификатом, рекомендуем ознакомиться со статьёй Делаем Apache безопаснее с помощью Let' Encrypt на Ubuntu 16.04.
После выполнения описанных выше мероприятий, вы можете начать следовать шагам, указанным в этой статье.
Шаг 1 — Установка phpMyAdmin
Сначала установим phpMyAdmin из репозиториев Ubuntu по умолчанию.
Для этого обновим наш локальный индекс пакетов, а затем используем систему управления пакетами apt для загрузки и установки необходимых файлов:
- sudo apt-get update
- sudo apt-get install phpmyadmin php-mbstring php-gettext
В процессе установки вам будет задано несколько вопросов по конфигурации.
Внимание:
Во время первого диалога apache2 подсвечен, но не выбран. Если вы не нажмёте Пробел для выбора Apache, установщик не переместит необходимые файлы в процессе установки. Нажмите Пробел, Tab, а затем Enter для выбора Apache.
- При выборе сервера, выберите apache2.
- Ответьте yes на вопрос, хотите ли вы использовать dbconfig-common для настройки базы данных.
- У вас будет запрошен пароль администратора базы данных.
- Далее вам будет предложено ввести и повторить пароль для самого phpMyAdmin.
В процессе установки в директорию /etc/apache2/conf-enabled/ будет добавлен файл конфигурации phpMyAdmin для Apache.
Единственное, что мы должны сделать вручную, так это включить расширения PHP mcrypt и mbstring следующими командами:
- sudo phpenmod mcrypt
- sudo phpenmod mbstring
Далее перезапустим Apache для применения изменений:
- sudo systemctl restart apache2
Теперь вы можете осуществить доступ к веб-интерфейсу phpMyAdmin введя имя домена или публичного IP адреса вашего сервера и строки /phpmyadmin:
https://доменное_имя_или_IP_адрес/phpmyadmin
Теперь вы можете войти в веб-интерфейс используя имя пользователя root и пароль, заданный в процессе установки MySQL.
После входа вы увидите похожий интерфейс пользователя:
Шаг 2 — Делаем phpMyAdmin безопаснее
Установка phpMyAdmin осуществляется достаточно просто. Тем не менее, мы ещё не закончили. Из-за того, что phpMyAdmin используется большим количеством пользователей, он представляет собой популярную цель для злоумышленников. Нам необходимо предпринять некоторые шаги для предотвращения неавторизованного доступа.
Одним из способов добиться этого является авторизация пользователя перед входом в само приложение. Мы можем решить эту задачу использованием возможностей входящего в Apache файла .htaccess для авторизации и аутентификации пользователей.
Настройка Apache для разрешения использования .htaccess
Сначала включим возможность использования файла .htaccess в нашем файле конфигурации Apache.
Мы будем редактировать файл в нашей конфигурационной директории Apache:
- sudo nano /etc/apache2/conf-available/phpmyadmin.conf
Нам необходимо добавить директиву AllowOverride All в секцию конфигурационного файла:
/etc/apache2/conf-available/phpmyadmin.conf
Options FollowSymLinks DirectoryIndex index.php AllowOverride All . . .
После того, как вы добавили эту строку, сохраните и закройте файл.
Для применения изменений перезапустите Apache:
- sudo systemctl restart apache2
Создание файла .htaccess
Теперь, когда мы разрешили использовать .htaccess для нашего приложения, нам необходимо создать такой файл.
Файл необходимо создать в директории приложения. Мы можем создать необходимый файл и открыть его для редактирования следующей командой:
- sudo nano /usr/share/phpmyadmin/.htaccess
Теперь введём следующую информацию:
/usr/share/phpmyadmin/.htaccess
AuthType BasicAuthName «Restricted Files»AuthUserFile /etc/phpmyadmin/.htpasswdRequire valid-user
Введённые нами строки означают следующее:
- AuthType Basic: Эта строка задаёт тип авторизации. Указанный тип (Basic) означает, что авторизация будет осуществляться на основе пароля и файла пароля.
- AuthName: Эта строка задаёт текст приветствия в диалоге авторизации. Используйте общие слова и фразы в этой строке, чтобы злоумышленникам было сложнее определить, что за система скрывается за диалогом авторизации.
- AuthUserFile: Эта строка задаёт адрес файла пароля, который используется для авторизации. Файл должен находиться в недоступной для внешнего мира директории. Чуть далее мы создадим этот файл.
- Require valid-user: Эта строка означает, что только аутентифицированные пользователи могут осуществлять доступ к защищаемой системе.
После ввода указанных строк, сохраните и закройте файл.
Создание файла пароля .htpasswd для аутентификации
Теперь, когда мы задали путь для нашего файла пароля в директиве AuthUserFile в нашем файле .htaccess, нам необходимо создать этот файл.
Для того, чтобы это сделать, нам понадобится установить дополнительный пакет из стандартных репозиториев:
- sudo apt-get install apache2-utils
Теперь нам доступна утилита htpasswd.
Указанный нами ранее путь выглядел следующим образом: /etc/phpmyadmin/.htpasswd. Создадим этот файл и добавим в него первого пользователя следующей командой:
- sudo htpasswd -c /etc/phpmyadmin/.htpasswd username
Вам будет предложено выбрать и подтвердить пароль для созданного пользователя. После этого файл будет создан и в него будет добавлен хэш указанного вами пароля.
Для добавления нового пользователя выполните следующую команду без флага -c:
- sudo htpasswd /etc/phpmyadmin/.htpasswd additionaluser
Теперь, когда вы настроили доступ к поддиректории phpMyAdmin, при попытке входа в phpMyAdmin вам будет предложено ввести логин и пароль пользователя:
https://доменное_имя_или_IP_адрес/phpmyadmin
После ввода логина и пароля вы будете перенаправлены на страницу аутентификации phpMyAdmin. Таким образом, мы создали дополнительный слой защиты для вашего phpMyAdmin.
Установка PhpMyAdmin Ubuntu на Nginx или Apache
Phpmyadmin — это один из самых популярных инструментов для управления базами данных mysql через веб-интерфейс. Он написан на php и JavaScript и с помощью него вы можете управлять локальным или удаленным сервером баз данных.
Используя PhpMyAdmin, мы можем создавать, удалять, переименовывать, редактировать базы данных, таблицы, поля, а также управлять пользователями, экспортировать, импортировать записи и выполнять любые команды SQL. На данный момент поддерживаются сервера баз данных MariaDB, MySQL и Drizzle. В этой статье мы рассмотрим как выполняется установка PhpMyAdmin Ubuntu 16.04 на веб-сервер Apache или Nginx.
Установка PhpMyAdmin в Ubuntu 16.04
Дальше, я буду предполагать, что все необходимое программное обеспечение, такое как mysql, php и веб-сервер apache или nginx уже установлены. Если еще нет, то вы можете просмотреть инструкцию установка LAMP в Ubuntu 16.04.
Утилита phpmyadmin доступна в официальных репозиториях Ubuntu. Поэтому вы можете очень просто установить ее оттуда. Для этого сначала обновим список репозиториев:
sudo apt update
Затем установим саму программу:
sudo apt install phpmyadmin
В официальных репозиториях содержится более старая версия, поэтому если вы хотите установить phpmyadmin ubuntu самой новой версии, нужно использовать PPA:
sudo add-apt-repository ppa:nijel/phpmyadmin$ sudo apt-get update
$ sudo apt install phpmyadmin
Во время установки будет необходимо выбрать веб-сервер, с которым мы будем устанавливать phpmyadmin, выберите Apache с помощью пробела и нажмите Ок:
Настройки для Nginx придется указывать вручную и их мы рассмотрим чуть позже. Дальше нужно установить пароль на базу данных PhpMyAdmin, нажмите Да:
Затем введите два раза нужный пароль. Он вам вряд ли понадобится в дальнейшим, так что можете выбрать что-то сложное:
Возможно, для того чтобы все заработало придется включить несколько модулей php и конфигурационный файл apache:
sudo phpenmod mcrypt
$ sudo phpenmod mbstring
Затем включите конфигурационный файл Apache:
sudo a2enconf phpmyadmin
Установка phpmyadmin nginx ubuntu выполняется добавлением следующей секции в файл /etc/nginx/nginx.conf мы предполагаем, что nginx работает через php-fpm:sudo vi /etc/nginx/nginx.conf
server{listen 80;server_name phpmyadmin;access_log /var/log/phpmyadmin.access_log;
error_log /var/log/phpmyadmin.error_log;
location ~ /phpmyadmin/ {alias /usr/share/phpMyAdmin/;index index.php;location ~ /phpmyadmin(/.*.php) {include fastcgi.conf;fastcgi_param SERVER_NAME localhost;fastcgi_param SCRIPT_FILENAME /usr/share/phpMyAdmin$1;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;}}
}
Сохраните и перезагрузите ваш веб-сервер:
sudo systemctl restart apache2
Или:
sudo systemctl restart nginx
Теперь, все точно должно работать. Откройте браузер и наберите в адресной строке http://localhost/phpmyadmin:
Введите ваш логин и пароль и затем, вы сможете делать все, что вам нужно с базами данных.
Защита PhpMyAdmin
Установка phpmyadmn Ubuntu 16.04 завершена. Но эта программа дает полный контроль над базой данных, поэтому нам нужно обеспечить максимальную ее безопасность. Сделаем доступ к Phpmyadmin по паролю. Для настройки Apache создайте файл /usr/share/phpmyadmin/.htaccess со следующим содержанием:
sudo vi /usr/share/phpmyadmin/.htaccess
AuthType BasicAuthName «Restricted Files»AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user
Вот что значат эти строки:
- AuthType Basic — эта строка устанавливает тип аутентификации, мы указываем что будем использовать пароль;
- AuthName — задаем сообщение, которое будет видеть;
- AuthUserFile — файл с данными, которые будут использоваться для аутентификации;
- Require — необходимое условие, для аутентификации.
Дальше нужно создать .htaccess:
sudo htpasswd -c /etc/phpmyadmin/.htpasswd пользователь
Вы можете добавить несколько пользователей, но для этого уже не используйте опцию -c:
sudo htpasswd /etc/phpmyadmin/.htpasswd пользователь
Теперь, при попытке открыть адрес phpmyadmin система запросит пароль. Только пользователи, которые введут пароль смогут получить доступ к интерфейсу входа phpmyadmin.