Как установить и защитить phpMyAdmin в Ubuntu 12.04
Статус: устарело
В этой статье рассматривается версия Ubuntu, которая больше не поддерживается. Если вы в настоящее время используете сервер под управлением Ubuntu 12.04, мы настоятельно рекомендуем обновить или перейти на поддерживаемую версию Ubuntu:
- Обновите Ubuntu до версии 14.04.
- Обновление Ubuntu 14.04 до Ubuntu 16.04
- Перенесите данные сервера в поддерживаемую версию.
Причина:
См. вместо этого:
О phpMyAdmin
phpMyAdmin — это бесплатное веб-приложение для работы с MySQL в Интернете — оно обеспечивает удобный визуальный интерфейс для возможностей MySQL.
Настраивать
Шаги, описанные в этом руководстве, требуют, чтобы пользователь имел привилегии root на вашем виртуальном частном сервере. Вы можете увидеть, как настроить это здесь, в шагах 3 и 4.
Перед работой с phpMyAdmin вам необходимо установить LAMP на свой сервер. Если на вашем сервере нет стека Linux, Apache, MySQL, PHP, вы можете найти руководство по его настройке здесь.
Когда у вас есть пользователь и необходимое программное обеспечение, вы можете начать установку phpMyAdmin на свой VPS!
Установите phpMyAdmin
Самый простой способ установить phpmyadmin — через apt-get:
sudo apt-get install phpmyadmin apache2-utils
Во время установки phpMyAdmin проведет вас через базовую настройку. Как только процесс запустится, выполните следующие действия:
- Выберите Apache2 в качестве сервера.
- Выберите ДА, когда вас спросят, следует ли настраивать базу данных для phpmyadmin с помощью dbconfig-common
- Введите пароль MySQL при появлении запроса
- Введите пароль, который вы хотите использовать для входа в phpmyadmin
После завершения установки добавьте phpmyadmin в конфигурацию apache.
sudo nano /etc/apache2/apache2.conf
Добавьте конфигурацию phpmyadmin в файл.
Include /etc/phpmyadmin/apache.conf
Перезапустите апач:
sudo service apache2 restart
Затем вы можете получить доступ к phpmyadmin, перейдя в youripaddress/phpmyadmin. Экран должен выглядеть так
Безопасность
К сожалению, более старые версии phpMyAdmin имели серьезные уязвимости в системе безопасности, в том числе позволяющие удаленным пользователям в конечном итоге использовать root на базовом виртуальном частном сервере. Можно предотвратить большинство этих атак с помощью простого процесса: заблокировать весь каталог с помощью собственных ограничений пользователя/пароля Apache, которые предотвратят даже попытки этих удаленных пользователей использовать более старые версии phpMyAdmin.
Настройте файл .htaccess
Чтобы настроить это, начните с разрешения файла .htaccess работать в каталоге phpmyadmin. Вы можете сделать это в файле конфигурации phpmyadmin:
sudo nano /etc/phpmyadmin/apache.conf
В разделе каталога добавьте строку \AllowOverride All в разделе \Индекс каталога, чтобы раздел выглядел следующим образом:
<Directory /usr/share/phpmyadmin> Options FollowSymLinks DirectoryIndex index.php AllowOverride All [...]
Настройте файл .htaccess
С разрешенным файлом .htaccess мы можем приступить к настройке собственного пользователя, чей вход потребуется даже для доступа к странице входа в phpmyadmin.
Начните с создания страницы .htaccess в каталоге phpmyadmin:
sudo nano /usr/share/phpmyadmin/.htaccess
Затем настройте авторизацию пользователя в файле .htaccess. Скопируйте и вставьте следующий текст в:
AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/apache2/.phpmyadmin.htpasswd Require valid-user
Ниже вы увидите краткое объяснение каждой строки
- AuthType: относится к типу аутентификации, которая будет использоваться для проверки паролей. Пароли проверяются через HTTP, и ключевое слово Basic не должно быть изменено.
- AuthName: это текст, который будет отображаться при запросе пароля. Здесь можно разместить что угодно.
- AuthUserFile: в этой строке указывается путь сервера к файлу паролей (который мы создадим на следующем шаге).
- Require valid-user: эта строка сообщает файлу .htaccess, что только пользователи, указанные в файле паролей, могут получить доступ к экрану входа в phpMyAdmin.
Создайте файл htpasswd
Теперь мы продолжим и создадим действительную информацию о пользователе.
Начните с создания файла htpasswd. Используйте команду htpasswd и поместите файл в каталог по вашему выбору, если он недоступен из браузера. Хотя вы можете назвать файл паролей как угодно, принято называть его .htpasswd.
sudo htpasswd -c /etc/apache2/.phpmyadmin.htpasswd username
Вам будет предложено ввести и подтвердить свой пароль.
Как только имя пользователя и пароль сохранены, вы можете видеть, что пароль зашифрован в файле.
Завершите, перезапустив apache:
sudo service apache2 restart
Доступ к phpMyAdmin
Теперь phpMyAdmin будет намного безопаснее, так как только авторизованные пользователи смогут получить доступ к странице входа. При доступе к вашему ipaddress/phpmyadmin должен отображаться такой экран.
Заполните его логином и паролем, которые вы сгенерировали. После входа в систему вы можете получить доступ к phpmyadmin с именем пользователя и паролем MySQL.