Как изменить ссылку на phpmyadmin

I am wondering how to change the default URL for phpMyAdmin. I am using the latest version (4.0.4.1) on my CentOS 6 VPS. I am wanting to change it from /phpmyadmin to something more secure. I am un...

I am wondering how to change the default URL for phpMyAdmin. I am using the latest version (4.0.4.1) on my CentOS 6 VPS. I am wanting to change it from /phpmyadmin to something more secure. I am unsure how to do this or where to even find my apache.conf file if there is one?

Thanks!

asked Jul 1, 2013 at 11:39

user1922212's user avatar

For ubuntu (i used ubuntu 12.04), the default phpmyadmin apache configuration can be found at /etc/phpmyadmin/apache.conf

You can open it by type sudo nano /etc/phpmyadmin/apache.conf and change the third

Alias /yournewalias /usr/share/phpmyadmin

Do not forget to restart apache service,

sudo service apache2 restart

answered Sep 24, 2014 at 17:18

Lafif Astahdziq's user avatar

0

phpMyAdmin default Apache configuration

Alias /phpmyadmin /usr/share/phpmyadmin

Change that to

phpMyAdmin default Apache configuration

Alias /anyname /usr/share/phpmyadmin

Then make sure to restart Apache

sudo /etc/init.d/apache2 restart

answered Aug 5, 2013 at 0:14

M_R_K's user avatar

M_R_KM_R_K

5,7731 gold badge38 silver badges40 bronze badges

0

Edit this file

/etc/apache2/conf-available/phpmyadmin.conf

line 3: change the line to be

Alias /whateveryouwant /usr/share/phpmyadmin

answered Jun 14, 2015 at 18:34

Devy's user avatar

DevyDevy

23810 silver badges19 bronze badges

By default, the login page of phpmyadmin is located at http://<ip address>/phpmyadmin. The first thing that you will want to do is changing that URL. This will not necessarily stop attackers from targeting your server, but will lower the risks of a successful break-in.

This is known as security through obscurity and while some people would argue that it is not a safe measure, it has been known to both discourage attackers and to prevent break-ins.

Note: Make sure you have working LAMP or LEMP setup with PhpMyAdmin installed on your system, if not, then follow Setup LAMP or LEMP with PhpMyAdmin.

To do it in Apache or Nginx Web servers, follow the instructions as explained below:

Change PhpMyAdmin Login Page in Apache

open /etc/httpd/conf.d/phpMyAdmin.conf if in CentOS or /etc/phpmyadmin/apache.conf in Debian and comment out the line(s) beginning with Alias.

------------ On CentOS/RHEL and Fedora ------------ 
# vi /etc/httpd/conf.d/phpMyAdmin.conf

------------ On Debian and Ubuntu ------------ 
# /etc/phpmyadmin/apache.conf

Then add a new one as follows:

# Alias /phpmyadmin /usr/share/phpmyadmin
Alias /my /usr/share/phpmyadmin

PhpMyAdmin Change Alias

PhpMyAdmin Change Alias

The above will allow us to access the phpmyadmin interface via http://<ip address>/my. Feel free to change the Alias above if you want to use another URL.

In the same file, make sure the Require all granted directive is included inside the Directory /usr/share/phpmyadmin block.

PhpMyAdmin Allow Access

PhpMyAdmin Allow Access

In addition, make sure Apache reads the phpmyadmin configuration in Debian/Ubuntu:

------------ On Debian and Ubuntu ------------ 
# echo "Include /etc/phpmyadmin/apache.conf" >> /etc/apache2/apache2.conf

Finally, restart Apache to apply changes and point your browser to http://<ip address>/my.

------------ On CentOS/RHEL and Fedora ------------ 
# systemctl restart httpd

------------ On Debian and Ubuntu ------------ 
# systemctl restart apache2

Change PhpMyAdmin Login Page in Nginx

On the Nginx web server, we just need to create a symbolic link of PhpMyAdmin installation files to our Nginx document root directory (i.e. /usr/share/nginx/html) by typing the following command:

# ln -s /usr/share/phpMyAdmin /usr/share/nginx/html
OR
# ln -s /usr/share/phpmyadmin /usr/share/nginx/html

Now we need to change the URL of our phpMyAdmin page, we simply need to rename the symbolic link as shown:

# cd /usr/share/nginx/html
# mv phpmyadmin my
OR
# mv phpMyAdmin my

Change PhpMyAdmin Url in Nginx

Change PhpMyAdmin Url in Nginx

Finally, restart Nginx and PHP-FPM to apply changes and point your browser to http://<ip address>/my.

------------ On CentOS/RHEL and Fedora ------------ 
# systemctl restart nginx
# systemctl restart php-fpm

------------ On Debian and Ubuntu ------------ 
# systemctl restart nginx
# systemctl restart php5-fpm

It should open the phpmyadmin interface (as shown in the image below), whereas http://<ip address>/phpmyadmin should result in a Not Found error page.

Secure PhpMyAdmin Login Page

Secure PhpMyAdmin Login Page

Do not login using the database root user’s credentials yet. You don’t want those credentials going through the wire in plain text, so in the next tip we will explain how to setup a self-signed certificate for PhpMyAdmin login page.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

Support Us

We are thankful for your never ending support.

In this tutorial we will show you how to change the default location to access /phpmyadmin to something else more private.
Why would we do this, firstly it deters automated bots & also anyone who knows you may be using phpmyadmin on your server from finding the login page.

lets do this…………….

1) Connect to your server ROOT access (SSH)

2) Open the apache2.conf.

3) Find this line, should be at the top:

Code: Select all

Alias /phpmyadmin /usr/share/phpmyadmin

4) Change /phpmyadmin to anything!! for example we will use /private_phpmyadmin like this:

Code: Select all

Alias /private_phpmyadmin /usr/share/phpmyadmin

5) restart apache2, important!!

6) Let’s go test it….
Type your old URL:

Code: Select all

http://change-to-your-server-ip-or-domain-setup/phpmyadmin

— you should get a 404 error (page missing) Good!

Now Try the new private URL:

Code: Select all

http://change-to-your-server-ip-or-domain-setup/private_phpmyadmin 

That’s it, now only you and your private clients will know where the login page for phpmyadmin is located.

This change will not update the link in vestacp to the phpmyadmin link under websites, you will need to change the url destination in the theme also.

THEME/UI EDIT Link

As requested, here is the way to edit the new link in the theme
We need to do this in two areas, admin and user folders.

1) Connect to your server ROOT access (SSH)

2) Open Admin Folder

Code: Select all

nano /usr/local/vesta/web/templates/admin/list_db.html

Find the line:

Code: Select all

if ($data[$key]['TYPE'] == 'mysql') $db_admin_link = "http://".$http_host."/phpmyadmin/";

Change it to:

Code: Select all

if ($data[$key]['TYPE'] == 'mysql') $db_admin_link = "http://".$http_host."/private_phpmyadmin/";

F2, Y, enter.

3) Open USER Folder

Code: Select all

nano /usr/local/vesta/web/templates/user/list_db.html

Find the line:

Code: Select all

if ($data[$key]['TYPE'] == 'mysql') $db_admin_link = "http://".$http_host."/phpmyadmin/";

Change it to:

Code: Select all

if ($data[$key]['TYPE'] == 'mysql') $db_admin_link = "http://".$http_host."/private_phpmyadmin/";

F2, Y, enter.

Test it, all good.

:)

Введение

Реляционные системы управления базами данных, к примеру MySQL, используются на многих сайтах и веб-приложениях. Однако далеко не каждый пользователь может администрировать их через командную строку.

Для того, чтобы решить эту проблему, был создан проект под названием phpMyAdmin. Это приложение представляет собой веб-интерфейс, который используется для работы с СУБД. Следуя этой инструкции, вы сможете установить и защитить от недоброжелателей phpMyAdmin на сервере Ubuntu 14.04. В данном случае будет использоваться nginx, который представляет собой легковесный и производительный веб-сервер, способный работать с большой нагрузкой.

Требования

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

Вы обязательно должны выполнить настройку сервера Ubuntu 14.04 – это важно, так как вам понадобится надежная база для того, чтобы развернуть связку, о которой пойдет речь далее. Также вам понадобится пользователь, который не имеет root-прав (то есть не суперпользователь), но наделен sudo-правами для выполнения административных задач.

Также на вашем сервере Ubuntu 14.04 должен быть развернут стек LEMP (Linux, Nginx, MySQL и PHP). Он будет необходим для обслуживания интерфейса phpMyAdmin (MySQL также является программным обеспечением для работы с базами данных, которыми мы хотим управлять).

Если все вышеперечисленное у вас установлено и настроено, тогда переходите к следующей части этой статьи.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Шаг 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

Окно авторизации выглядит следующим образом:

Как установить phpMyAdmin на nginx и Ubuntu 14.04Для того, чтобы авторизоваться, используйте имя пользователя и пароль действующего пользователя MySQL. Например, введите имя суперпользователя и его пароль от базы MySQL. Таким образом вы попадете в административную панель:

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

Шаг 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

5d654c472a4c9b59bed7969b386dedeaf34f248dПосле того, как вы введете данные, вы увидите стандартное окно для авторизации в phpMyAdmin. Этот дополнительный уровень безопасности не только улучшает защиту вашей СУБД, но и препятствует сохранению в логах множества неудачных попыток ввести данные авторизации.

Заключение

Теперь для управления MySQL вы можете использовать удобный и защищенный веб-интерфейс. Данное приложение позволяет использовать практически все функции, которые доступны из командной строки MySQL: вы можете просматривать базы данных, схемы, выполнять запросы, а также создавать новые наборы и структуры данных.

VDS/VPS

14 мая, 2015 12:05 пп
8 100 views
| 3 комментария

PHP, Ubuntu, VPS

Реляционные системы управления базами данных, такие как MySQL, необходимы для корректной работы большинства веб-сайтов и приложений. Однако не все пользователи обладают навыками управления такими СУБД из командной строки.

Чтобы устранить эту проблему, был разработан phpMyAdmin – альтернативный веб-интерфейс для работы с СУБД. В данном руководстве речь пойдёт об установке и защите phpMyAdmin на сервере Ubuntu 14.04. В качестве веб-сервера используется Nginx – производительный сервер, способный обрабатывать большие нагрузки.

Требования

Чтобы обеспечить надёжную основу для сборки этой связки, нужно выполнить начальную настройку сервера Ubuntu 14.04 и создать пользователя с расширенными привилегиями (т.е., с доступом к sudo).

Кроме того, необходимо предварительно установить группу программ LEMP (Linux, Nginx, MySQL, PHP). Эта платформа необходима для обслуживания интерфейса phpMyAdmin. Чтобы получить инструкции по установке этого программного стека, читайте это руководство.

Подготовив сервер, приступайте к выполнению руководства.

1: Установка phpMyAdmin

Предварительно установив платформу LEMP, можно сразу приступать к инсталляции phpMyAdmin. Пакеты этой программы можно найти в стандартных репозиториях Ubuntu, потому установка не займёт много времени.

Сначала обновите список локальных пакетов системы. Затем используйте инструмент apt, чтобы загрузить пакеты из репозитория и установить их:

sudo apt-get update
sudo apt-get install phpmyadmin

Во время установки будут запрошены некоторые данные, например, веб-сервер, который нужно автоматически настроить. Поскольку среди предложенных вариантов нет Nginx, просто нажмите TAB, чтобы продолжить.

Следующая подсказка спросит, нужно ли базу данных для phpmyadmin при помощи dbconfig-common. Выберите Yes, чтобы продолжить.

Теперь нужно ввести пароль администратора MySQL, созданный во время установки СУБД. После этого создайте и подтвердите пароль для новой БД, созданной только что для phpMyAdmin.

Установка phpMyAdmin завершена. Чтобы Nginx мог найти и корректно обработать файлы phpMyAdmin, нужно создать символьную ссылку на каталог document root сервера Nginx:

sudo ln -s /usr/share/phpmyadmin /usr/share/nginx/html

В завершение нужно включить PHP-модуль mcrypt, от которого зависит работа phpMyAdmin. Он устанавливается вместе с phpMyAdmin, нужно только активировать его и перезапустить процессор PHP.

sudo php5enmod mcrypt

Теперь phpMyAdmin полностью готов к работе. Чтобы открыть интерфейс, введите в браузер доменное имя или внешний IP-адрес, а затем /phpmyadmin:

http://домен_или_IP_сервера/phpmyadmin

На экране появится стандартная страница входа phpMyAdmin.

Чтобы войти, используйте учётные данные пользователя MySQL. К примеру, можно использовать root-пользователя MySQL и его пароль. Получив валидные учётные данные, phpMyAdmin откроет доступ к интерфейсу администратора.

2: Защита phpMyAdmin

На данном этапе phpMyAdmin полностью готов к использованию. Однако установка веб-интерфейса открыла публичный доступ к MySQL, а это серьёзный риск для безопасности сервера.

Даже наличие страницы аутентификации не решает этой проблемы. Из-за своей популярности и доступа к большим объёмам данных phpMyAdmin часто подвергается атакам хакеров.

Чтобы уменьшить риск взлома, можно использовать две стратегии. Во-первых, можно изменить местонахождение установки (сейчас это /phpmyadmin), чтобы обойти ботов, которые пытаются взломать сервер методом автоматизированного прямого подбора пароля. Также можно создать дополнительный шлюз аутентификации на уровне веб-сервера, который нужно пройти, чтобы получить доступ к экрану входа в PhpMyAdmin.

Изменение расположения phpMyAdmin

Чтобы веб-сервер Nginx мог обслуживать файлы phpMyAdmin, ранее вы создали символьную ссылку на каталог document root веб-сервера.

Чтобы изменить URL, по которому находится phpMyAdmin, нужно просто переименовать символическую ссылку. Перейдите в каталог каталог document root веб-сервера 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, по которому его можно найти в браузере, благодаря чему автоматизированные боты для взлома  не смогут получить к нему доступ.

Выберите имя, которое не отображает цели; для примера в этом руководстве это место называется /nothingtosee. Переименуйте ссылку:

sudo mv phpmyadmin nothingtosee
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 nothingtosee -> /usr/share/phpmyadmin

Теперь попробуйте посетить предыдущее местонахождение установки phpMyAdmin; на экране появится ошибка 404.

http://домен_или_IP/phpmyadmin

Интерфейс phpMyAdmin доступен по новой ссылке:

http://домен_или_IP/nothingtosee

Настройка шлюза авторизации веб-сервера

Теперь нужно создать страницу авторизации сервера, которую необходимо пройти, чтобы получить доступ к странице входа в PhpMyAdmin.

К счастью, большинство веб-серверов, – и Nginx в их числе, – поставляются с этой функцией. Нужно просто отредактировать конфигурационный файл Nginx.

Сначала нужно создать файл паролей для хранения учётных данных. Nginx требует, чтобы пароль был зашифрован при помощи функции crypt(). Криптографический пакет OpenSSL, который должен быть установлен на сервере, предоставляет эту функциональность.

Чтобы создать зашифрованный пароль, введите:

openssl passwd

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

O5az.RSPzd.HE

Скопируйте это значение и вставьте его в аутентификационный файл, который будет создан.

Чтобы создать файл паролей, используйте следующую команду (файл будет называться pma_pass и находиться в конфигурационном каталоге Nginx):

sudo nano /etc/nginx/pma_pass

В этом файле нужно указать имя пользователя и зашифрованный при помощи openssl пароль, которые будут использоваться для входа в phpMyAdmin, разделив их символом двоеточия.

К примеру, если пользователя зовут demo, то файл будет выглядеть так:

demo:O5az.RSPzd.HE

Примечание: Ни в коем случае не используйте такое имя – оно крайне ненадёжно!

Сохраните и закройте файл.

Теперь можно отредактировать конфигурационный файл Nginx. Откройте его в текстовом редакторе:

sudo nano /etc/nginx/sites-available/default

В этот файл нужно внести раздел с новым местонахождением установки phpMyAdmin (в данном случае это /nothingtosee).

Вне всех других блоков создайте блок server, в нём найдите раздел location / и укажите в нём место установки:

server {
. . .
location / {
try_files $uri $uri/ =404;
}
location /nothingtosee {
}
. . .
}

В этом блоке нужно установить значение директивы auth_basic, введя сообщение аутентификации, которое будет отображаться в запросе учётных данных. Чтобы ограничить доступ неавторизованным пользователям, можно просто использовать «Admin Login».

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

В результате блок имеет такой вид:

server {
. . .
location / {
try_files $uri $uri/ =404;
}
location /nothingtosee {
auth_basic "Admin Login";
auth_basic_user_file /etc/nginx/pma_pass;
}
. . .
}

Сохраните и закройте файл.

Чтобы активировать внесённые изменения, перезапустите веб-сервер:

sudo service nginx restart

Если посетить phpMyAdmin в веб-браузере, будет запрошено имя пользователя и пароль, внесённые в файл pma_pass.

http://домен_или_IP/nothingtosee

Получив учётные данные, браузер откроет страницу входа в phpMyAdmin. Это создаёт дополнительный уровень безопасности и сохранит логи MySQL в чистоте (в них не будет сотен неудачных попыток входа).

Заключение

Теперь можно управлять MySQL при помощи надёжного и относительно безопасного интерфейса. Он предоставляет основные функции, доступные из командной строки MySQL: пользователь может просматривать базы данных, схемы, создавать запросы и новые наборы и структуры данных.

Tags: LEMP Stack, Linux, MySQL, NGINX, PHP, phpMyAdmin, Ubuntu 14.04

Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.

Активные темы Темы без ответов

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

1 2011-02-11 17:19:33 (изменено: Blast, 2011-02-11 19:12:49)

  • Blast
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2011-02-11
  • Сообщений: 5

Тема: [Решено] Смена адреса /phpmyadmin/

Приветствую.

Решил «расти» и переставил сервер под убунту. Неделю уже ковыряю, разбираюсь, голова ватная, охото кушать и спать smile

Для удобства поставил phpmyadmin (впервые им пользуюсь, понравилось).

И никак не могу найти в каких конфигах изменить адрес phpmyadmin’a c
http://localhost/phpmyadmin
на, например
http://localhost/qwerty

Не хочу что бы с наружи видели что установлен phpmyadmin, а то ночнут подбирать, ковырять — ну их нафиг:)

2 Ответ от DmitryV 2011-02-11 17:46:05 (изменено: DmitryV, 2011-02-11 17:49:43)

  • DmitryV
  • Пенсионер
  • Неактивен
  • Откуда: Санкт-Петербург, Россия
  • Зарегистрирован: 2010-07-31
  • Сообщений: 558

Re: [Решено] Смена адреса /phpmyadmin/

Посмотрите попробуйте файл http.conf (воспользуйтесь поиском) возможно в нем указан Alias phpmyadmin.
Либо в него вставлены дополнительные файлы с настройкой через директиву Include /путь к/ файлу

также в неастройке PHPMyAdmin установите метод авторизации cookie (файл config.inc.php)

$cfg['Servers'][$i]['auth_type'] = 'cookie';

и можно ограничить доступ к директории через директивы файла .htaccess

3 Ответ от Blast 2011-02-11 18:18:46

  • Blast
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2011-02-11
  • Сообщений: 5

Re: [Решено] Смена адреса /phpmyadmin/

/etc/apache2/http.conf — пустой
/etc/apache2/conf.d — нет ничего про алиасы

/etc/apache2/mods-available :

<IfModule alias_module>
#
# Aliases: Add here as many aliases as you need (with no limit). The format is 
# Alias fakename realname
#
# Note that if you include a trailing / on fakename then the server will
# require it to be present in the URL.  So "/icons" isn't aliased in this
# example, only "/icons/".  If the fakename is slash-terminated, then the 
# realname must also be slash terminated, and if the fakename omits the 
# trailing slash, the realname must also omit it.
#
# We include the /icons/ alias for FancyIndexed directory listings.  If
# you do not use FancyIndexing, you may comment this out.
#
Alias /icons/ "/usr/share/apache2/icons/"

<Directory "/usr/share/apache2/icons">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

</IfModule>

/etc/apache2/mods-available :

LoadModule alias_module /usr/lib/apache2/modules/mod_alias.so

/usr/lib/apache2/modules/mod_alias.so не открывает, никакая кодировка не подходит.

Поиск как в notepad++ не могй найти в убунте.

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

Через .htaccess я по поиску нашёл, но мне надо самому будет удалённо заходить…

4 Ответ от DmitryV 2011-02-11 18:34:27 (изменено: DmitryV, 2011-02-11 18:53:44)

  • DmitryV
  • Пенсионер
  • Неактивен
  • Откуда: Санкт-Петербург, Россия
  • Зарегистрирован: 2010-07-31
  • Сообщений: 558

Re: [Решено] Смена адреса /phpmyadmin/

Посмотрите возможно в /etc/phpmyadmin/apache.conf  или папке /usr/local/etc/ или в директории /usr/etc/ папки apache или phpmyadmin на память не помню где конкретно находяться конфиги.
Откройте консоль и команда find (синтаксис описание — http://citkit.ru/articles/96/)или введите команду MC что запустить должно Midnight Commander если не установлен советую установить из пакетов.
нет LoadModule это загрузка модуля это и не нужно открывать это библиотека…
поищите по содержимому файла phpmyadmin и имени *.conf
PS:Я бы лучше развернул сервер на Debian или FreeBSD.

5 Ответ от Blast 2011-02-11 19:05:10

  • Blast
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2011-02-11
  • Сообщений: 5

Re: [Решено] Смена адреса /phpmyadmin/

Дебиан и Убунту это же вроде как одно и тоже ядро, обросшее разным комплектом пакетов (разумеется могу ошибаться)

С самого начала ковырял этот файл

/etc/apache2/conf.d/phpmyadmin.conf :

# phpMyAdmin default Apache configuration

Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>
    Options FollowSymLinks
    DirectoryIndex index.php

    <IfModule mod_php5.c>
        AddType application/x-httpd-php .php

        php_flag magic_quotes_gpc Off
        php_flag track_vars On
        php_flag register_globals Off
        php_value include_path .
    </IfModule>

</Directory>

# Authorize for setup
<Directory /usr/share/phpmyadmin/setup>
    <IfModule mod_authn_file.c>
    AuthType Basic
    AuthName "phpMyAdmin Setup"
    AuthUserFile /etc/phpmyadmin/htpasswd.setup
    </IfModule>
    Require valid-user
</Directory>

# Disallow web access to directories that don't need it
<Directory /usr/share/phpmyadmin/libraries>
    Order Deny,Allow
    Deny from All
</Directory>
<Directory /usr/share/phpmyadmin/setup/lib>
    Order Deny,Allow
    Deny from All
</Directory>

Менял это
Alias /phpmyadmin /usr/share/phpmyadmin

на другую строку, перезагружал — админка открывалась как и раньше… Хотя похоже на правду..

6 Ответ от Blast 2011-02-11 19:12:29

  • Blast
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2011-02-11
  • Сообщений: 5

Re: [Решено] Смена адреса /phpmyadmin/

Стыд и срам!

Видимо я толи ярлык менял, толи что-то ещё не так делал, оказалось то что делал в начале (предидущий пост) — как раз то что надо smile

7 Ответ от DmitryV 2011-02-11 19:20:57

  • DmitryV
  • Пенсионер
  • Неактивен
  • Откуда: Санкт-Петербург, Россия
  • Зарегистрирован: 2010-07-31
  • Сообщений: 558

Re: [Решено] Смена адреса /phpmyadmin/

Ничего бывает, Ubuntu это уже новый прорект в сборках Linux, Debian придерживаеться политик стабильности и он один из старейших проектов Linux, а FreeBSD это на сегодняшний день одна из ведущих internet платформ в сетях.

8 Ответ от Blast 2011-02-11 19:29:45

  • Blast
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2011-02-11
  • Сообщений: 5

Re: [Решено] Смена адреса /phpmyadmin/

С нуля курить линукс трудно и мне не по силам.
С убутной знакомый дружит, он и предложил сделать всё «как положено». Хотя сначало думали на счёт Дебиана, т.к. всё похоже… А раз они похожие, то не за горами время когда буду ковырять дебиан smile

9 Ответ от lancc 2016-06-29 11:59:30 (изменено: lancc, 2016-06-29 12:02:58)

  • lancc
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2016-06-29
  • Сообщений: 2

Re: [Решено] Смена адреса /phpmyadmin/

День добрый, у меня проблема такая же как у автора
есть убунту 14.04
правлю конфиг в nano /etc/phpmyadmin/apache.conf  и в  /etc/apache2/conf-available/phpmyadmin.conf тоже самое
собственно меня интересует две строчки, это алиас и доступ по определённому айпи

# phpMyAdmin default Apache configuration

Alias /lsjdfsufhd3464hiHdh /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>
        Options FollowSymLinks
        DirectoryIndex index.php
Order Deny,Allow
Deny from all
Allow from ххх.хх.хх.хх
Allow from ххх.хх.хх.хх

и как было доступно по старому phpmyadmin и по любому айпи доступ, так и доступно, куда лезть? сервер ест-во перезапускал

10 Ответ от Hanut 2016-06-29 19:40:36

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,723

Re: [Решено] Смена адреса /phpmyadmin/

lancc сказал:

как было доступно по старому phpmyadmin и по любому айпи доступ, так и доступно, куда лезть?

Вероятно вы какой-то не тот конфигурационный файл правите. По Ubuntu конкретно подсказать решение не могу. Попробуйте обратиться к пользователям Ubuntu.

11 Ответ от lancc 2016-06-30 16:18:09 (изменено: lancc, 2016-06-30 17:56:39)

  • lancc
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2016-06-29
  • Сообщений: 2

Re: [Решено] Смена адреса /phpmyadmin/

всё правильно правлю, других нет…
есть продвижения, вот это закоментировал
Order Deny,Allow
Deny from all
Allow from ххх.хх.хх.хх
Allow from ххх.хх.хх.хх
открывается теперь админка по новому адресу, но что плохо и по старому тоже, как быть? Более того, она открывается от любого моего сайта, как сделать так что бы она открывалась только по одному сайту и по адресу который прописан в alias
пробовал закоментить Alias /lsjdfsufhd3464hiHdh /usr/share/phpmyadmin, отредактировал в виртуальных хостах апатча файл nano /etc/apache2/sites-available/000-default.conf написав в ServerName адрес который хочу и отредактировал
файл апатча, указав что файл phpmyadmin лежит в /var/www/html, не помогло, везде открывает кроме моего сайта где надо  big_smile  big_smile  big_smile  big_smile

Сообщения 11

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить спящий режим на huawei планшете настроить
  • Как изменить ссылку канала дзен
  • Как изменить спящий режим на huawei mediapad t3 10
  • Как изменить ссылку канала youtube
  • Как изменить спящий режим на honor 8s

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии