Как установить администратор на сервер Ubuntu

Как установить администратор на сервер Ubuntu

27 октября 2023 г.
Если вы ищете простой в использовании веб-интерфейс с графическим интерфейсом для администрирования реляционных баз данных MySQL и не только, Adminer может быть тем, что вы ищете.

Если вы создаете веб-приложение с использованием Linux, чаще всего вы окажетесь во власти инструментов администрирования MySQL с командной строкой, которые включены в эту базу данных. Хотя эти инструменты достаточно надежны, они могут оказаться громоздкими для менее опытных разработчиков. И даже если вы более опытный разработчик, во многих случаях вы не хотите, чтобы вас беспокоил процесс ввода длинных пакетов команд.

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

Из этого руководства вы быстро узнаете, как настроить среду LAMP и как запустить Adminer поверх нее.

Посетите администратора

Перейти к:

    Что вам понадобится для установки Adminer Как установить MySQL Как установить Adminer с MySQL Как получить доступ к веб-интерфейсу администратора Почему Админер? Соображения безопасности

Что вам понадобится для установки Adminer

Чтобы запустить Adminer, вам понадобится экземпляр Ubuntu Server — я демонстрирую 23.04, но вы также можете использовать 22.04 или 20.04 — и пользователь с привилегиями sudo. Вот и все. Давайте совершим немного магии с базой данных.

СМОТРИТЕ: Основные моменты обновления с Ubuntu Server 20.04 до 22.04.

Как установить MySQL

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

    Сначала вам нужно запустить команду:
sudo apt-get установить lamp-server^ -y
    После завершения установки запустите и включите службы MySQL и Apache с помощью следующих команд:
sudo systemctl включить --now apache2
sudo systemctl включить --сейчас MySQL
    Затем защитите установку MySQL и дайте пользователю-администратору пароль с помощью команды:
sudo mysql_secure_installation

Вы можете следовать инструкциям, чтобы правильно настроить MySQL, но если вам нужна дополнительная информация об этом, обратитесь к разделу «Настройка MySQL и MariaDB».

Как установить Adminer с MySQL

Adminer запускается как PHP-скрипт, который можно загрузить непосредственно в корневой каталог вашего Linux-сервера с помощью утилиты wget. Если вы установили Apache с помощью пакета lamp-server, указанного выше, то корневой веб-каталог по умолчанию — /var/www/html, и этот каталог принадлежит пользователю root. Если вы не измените эти настройки по умолчанию, вам придется использовать sudo для загрузки и установки Adminer. На момент написания этой статьи последняя версия Adminer — 4.8.1.

Приведенные ниже команды покажут вам, как перейти в каталог /var/www/html и загрузить PHP-код администратора непосредственно в него:

компакт-диск /var/www/html

sudo wget https://github.com/vrana/adminer/releases/download/v4.8.1/adminer-4.8.1.php

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

Рисунок А

Как получить доступ к веб-интерфейсу администратора

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

    Войдите в консоль MySQL с помощью команды:
Судо MySQL
    Создайте нового пользователя — назовем его dbadmin, но вы можете назвать его как угодно — с помощью команды:
СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'dbadmin'@'%', ИДЕНТИФИЦИРОВАННОГО ПО 'ПАРОЛЮ';

Где ПАРОЛЬ — надежный/уникальный пароль.

    Дайте пользователю перезагрузку с глобальными правами с помощью:
GRANT CREATE USER, RELOAD ON *.* TO 'dbadmin'@'%';
    Предоставьте необходимые права с помощью:
GRANT ALL ON `db`.* TO 'dbadmin'@'%' С GRANT OPTION;

Обратите внимание: в приведенной выше команде по обе стороны от db стоят обратные кавычки, а не одинарные кавычки. Если вы запустите команду с одинарными кавычками, произойдет ошибка.

    Наконец, предоставьте пользователю права создания с помощью:
GRANT CREATE, CREATE USER, SELECT, RELOAD ON *.* TO 'dbadmin'@'%';
    Сбросьте привилегии и выйдите с помощью:
УДАЛЕНИЕ ПРИВИЛЕГИЙ;
Выход

Теперь вы можете указать веб-браузеру

http://СЕРВЕР/adminer-4.8.1.php

Где SERVER — это IP-адрес хост-сервера, который открывается в окне входа администратора (рис. B).

Рисунок Б

Окно входа администратора.

На этом этапе вы сможете создавать и изменять базы данных по желанию вашего администратора (рис. C). Обратите внимание, что ваш доступ ограничен разрешениями учетной записи, которую вы используете для подключения к базе данных.

Рисунок С

Теперь администратор готов удовлетворить ваши потребности в администрировании базы данных.

Вот как легко запустить Adminer поверх базы данных MySQL. Попробуйте эту платформу с любой базой данных, с которой вам нужно работать, и посмотрите, не облегчит ли она вашу работу значительно.

Почему Админер?

Adminer, естественно, предоставляет те функции, которые вы ожидаете от веб-инструмента управления базами данных:

    Подключение к серверу базы данных через имя пользователя и пароль. Создание базы данных. Список по полям, индексам, внешним ключам и триггерам таблиц. Редактируйте имя, механизм, параметры сортировки, auto_increment и комментарии для таблиц. Измените имя, тип, параметры сортировки, комментарий и значения по умолчанию для столбцов. Добавляйте и удаляйте таблицы или столбцы. Перечислите данные в таблицах с результатами поиска, агрегирования, сортировки и ограничения. Вставка, обновление и удаление записей. Поддерживает все типы данных и большие двоичные объекты посредством передачи файлов. Выполните любую команду SQL. Показать и убить процессы. Отображение и редактирование пользователей и прав.

Adminer выходит за рамки большинства графических инструментов администрирования баз данных, поскольку он поддерживает множество других систем управления реляционными базами данных, помимо MySQL, включая MariaDB, PostgreSQL, SQLite, MS SQL, Oracle, Elasticsearch и MongoDB. В этом отношении Adminer предлагает функциональность веб-инструмента администрирования баз данных и удобство администрирования нескольких систем баз данных с помощью одного простого в установке инструмента.

Соображения безопасности

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

ПРЕМИУМ: ознакомьтесь с этим набором для найма инженера баз данных.

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

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


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE