Alexander A Manaeff -

 
 

Установка phpMyAdmin на BitrixVM (Debian)

Первые шаги в nix - системах. Unix, Linux, Free BSD, Ubuntu...

Модератор: UncleFather

Установка phpMyAdmin на BitrixVM (Debian)

Сообщение UncleFather » 03 ноя 2020 21:31, Вт




Задача:

Необходимо:


  1. установить phpMyAdmin на виртуальную машину Bitrix;

  2. настроить phpMyAdmin на подключение к нескольким внешним серверам, находящимся в локальной сети;

  3. дать возможность подключаться к серверу mySQL, установленному на BitrixVM, из локальной сети.




Решение:


  1. Устанавливаем phpMyAdmin, согласно инструкции, например Установка PhpMyAdmin на Bitrix-сервер:


    1. Подключаемся к серверу по SSH и выходим из меню Битрикс через пункт “0”$

    2. Устанавливаем PhpMyAdmin:
      Код: Выделить всё
      yum install phpmyadmin -y


    3. Зададём необходимые права для директории с phpMyAdmin и директории с временными файлами программы:
      Код: Выделить всё
      chown -R bitrix:bitrix /usr/share/phpMyAdmin
      chown bitrix:bitrix /var/lib/phpMyAdmin/temp


    4. Создаём ссылку в директории сайта, указывающую на установленный phpMyAdmin:
      Код: Выделить всё
      ln -s /usr/share/phpMyAdmin /home/bitrix/www/phpmyadmin


      Примечание: если у имеется несколько отдельных “kernel” сайтов, и необходимо, чтобы phpMyAdmin открывался по ссылкам каждого сайта, создаём ссылки в директории каждого из сайтов. Например:
      Код: Выделить всё
      ln -s /usr/share/phpMyAdmin /home/bitrix/www/phpmyadmin
      ln -s /usr/share/phpMyAdmin /home/bitrix/ext_www/<your_site_name>/phpmyadmin


    5. Добавляем секретный ключ в файл конфигурации phpMyAdmin. Сгенерировать 32-значный ключ можно, например, онлайн генератором паролей, и добавляем его в файл /usr/share/phpMyAdmin/libraries/config.default.php в строку $cfg['blowfish_secret'] = '’';. Получится примерно так:
      Код: Выделить всё
      $cfg['blowfish_secret'] = 'xMMempnm80Fr9tkWubAqSToXenuhrdN1';


    6. Переносим конфигурационный файл phpMyAdmin для веб-сервера Apache, в нужную директорию:
      Код: Выделить всё
      mv /etc/httpd/conf.d/phpMyAdmin.conf /etc/httpd/bx/conf/


    7. Редактируем перенесённый файл любым любым редактором. Нас будет интересовать секция <Directory /usr/share/phpMyAdmin/>. В ней необходимо:


      1. закомментировать директиву:
        Код: Выделить всё
        #Require local


      2. добавить адреса, откуда будет разрешен доступ к phpMyAdmin директивами:
        Код: Выделить всё
        Deny from All
        Allow from xxx.xxx.xxx.xxx/xx


      3. в любое место секции добавить директиву:
        Код: Выделить всё
        php_admin_value mbstring.func_overload 0


      Должно получиться как-то так:
      Код: Выделить всё
      <Directory /usr/share/phpMyAdmin/>
         AddDefaultCharset UTF-8
         php_admin_value mbstring.func_overload 0   
         #Require local
         Deny from All
         Allow from 192.168.0.1/24
      </Directory>


    8. Добавляем список mySQL серверов, к которым нам нужно подключаться. Для этого редактируем файл /etc/phpMyAdmin/config.inc.php любым любым редактором. В нём необходимо скопировать записи, относящиеся к первому серверу. Скопировать их нужно столько раз, сколько серверов mySQL, а затем заменить их ip адреса, чтобы получилось так:
      Код: Выделить всё
      /**
       * Servers configuration
       */
      $i = 0;

      /**
       * First server
       */
      $i++;
      /* Authentication type */
      $cfg['Servers'][$i]['auth_type'] = 'cookie';
      /* Server parameters */
      $cfg['Servers'][$i]['host'] = '192.168.0.15';
      $cfg['Servers'][$i]['compress'] = false;
      $cfg['Servers'][$i]['AllowNoPassword'] = false;

      /**
       * Second server
       */
      $i++;
      /* Authentication type */
      $cfg['Servers'][$i]['auth_type'] = 'cookie';
      /* Server parameters */
      $cfg['Servers'][$i]['host'] = 'localhost';
      $cfg['Servers'][$i]['compress'] = false;
      $cfg['Servers'][$i]['AllowNoPassword'] = false;


      /**
       * Third server
       */
      $i++;
      /* Authentication type */
      $cfg['Servers'][$i]['auth_type'] = 'cookie';
      /* Server parameters */
      $cfg['Servers'][$i]['host'] = '192.168.0.91';
      $cfg['Servers'][$i]['compress'] = false;
      $cfg['Servers'][$i]['AllowNoPassword'] = false;

  2. Предоставляем права на чтение на папку /etc/phpMyAdmin и файл /etc/phpMyAdmin/config.inc.php для пользователя bitrix [600] - без этого файл конфигурации не будет виден сервисом httpd;

  3. Для пользователя, под которым будем заходить в mySQL, даем права на доступ из локальной сети, или с любого адреса (%);

  4. Открываем порт в iptables для доступа из локальной сети и сохраняем настройки:
    Код: Выделить всё
    iptables -I INPUT -s xxx.xxx.xxx.xxx/xx -p tcp --dport 3306 -j ACCEPT
    service iptables save


  5. Перезапускаем службы:
    Код: Выделить всё
    systemctl restart mysqld.service
    systemctl restart httpd.service
    systemctl restart iptables.service
    apachectl restart

Теперь интерфейс phpMyAdmin будет доступен по адресу http://bitrixVM_address/phpmyadmin, а к СУБД mySQL можно подключаться с любого интерфейса phpMyAdmin из локальной сети, донастроив для него свой config.inc.php, аналогично этой инструкции (п I.8 ).




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










Alexander A. Manaeff©

Понравилась статья? Будем крайне признательны за репосты в соцсетях! Материально поддержать проект можно здесь

Мои странички:
ВКонтакте
Одноклассники
Youtube
Facebook
Instagram
Изображение
Изображение
Изображение
Изображение
Аватара пользователя
UncleFather
Site Admin
 
Сообщения: 1419
Зарегистрирован: 17 авг 2004 16:20, Вт



Вернуться в NiX для начинающих

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron
Alexander A Manaeff -
@Mail.ru .