6.7 Установка IonCube Loader на сервер
IonCube Loader – это расширение для интерпретатора PHP, которое используется для загрузки и выполнения зашифрованных файлов PHP. Оно используется для защиты Вашего PHP-кода от несанкционированного доступа и копирования. IonCube является частым требованием для работы или ее оптимизации у многих CMS или их плагинов.
На нашем shared-хостинге, поддержка IonCube и его версия зависит от выбранной для пользователя версии PHP. Это актуально для любой линейки тарифных планов хостинга, а также для виртуальных/выделенных серверов с установленной панелью ISPManager4.
Внимание: если на Вашем сервере установлена панель ISPManager4 – у Вас уже установлен IonCube для всех поддерживаемых версий. Выполнять эту инструкцию ни в коем случае не стоит, так как это может привести к полной неработоспособности сервера. В случае возникновения потребности обновить версию IonCube – обратитесь в Службу поддержки.
Предварительные требования к установке IonCube
Если у Вас сервер без какой-либо панели управления, Вы можете столкнуться с необходимостью ручной установки IonCube.
Процесс установки может отличаться в зависимости от Вашей ОС. Вне зависимости от ОС, первым шагом всегда является подключение по SSH и получения root доступа.
Для установки IonCube требуется машина с активным и работающим вебсервером, Apache или Nginx, а также установленная версия PHP из списка поддерживаемых IonCubeLoader.
Внимание: IonCube Loader имеет определенную особенность – он зачастую не поддерживает “нулевые” версии PHP, например PHP 8.0. При этом, версии PHP 8.1 или PHP 8.2 им поддерживаются.
Пошаговая установка IonCube
Важно: значение команд, используемых при установке IonCube Loader варьируются в завимости от некоторых переменных: версии PHP на сервере, локации PHP-директории и версии архитектуры сервера. Здесь и в дальнейшем мы будем выделять значения этих переменных. Вместо них, при установке, необходимо будет подставить соответствующие значения для Вашего сервера.
1. Подключитесь к серверу по SSH.
2. Проверьте архитектуру текущего сервера:
- uname -m
Выводx86_64
Как видим из x86_64, наш текущий сервер работает на 64-битной архитектуре. Значения вида i686 указывали бы на обратное – 32-х битную архитектуру.
3. Далее, переходим директорию tmp
и загружаем необходимый архив:
- Для 64-битных систем:
- cd /tmp
- wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
- Для 32-битных систем:
- cd /tmp
- wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
4. После загрузки архива необходимо его разархивировать:
Так как в примере у нас используется 64-х битная архитектура, мы загрузили и распаковываем именно такой архив.
- tar -zxvf ioncube_loaders_lin_x86-64.tar.gz
.5. Переходим в директорию ioncube
и просматриваем список файлов.
- cd ioncube/
- ls -l
Выводtotal 39260
-rw-rw-r-- 1 507 507 472192 Sep 9 2023 ioncube_loader_lin_4.1.so
-rw-rw-r-- 1 507 507 471968 Sep 9 2023 ioncube_loader_lin_4.2.so
-rw-rw-r-- 1 507 507 472768 Sep 9 2023 ioncube_loader_lin_4.3.so
-rw-rw-r-- 1 507 507 490752 Sep 9 2023 ioncube_loader_lin_4.3_ts.so
-rw-rw-r-- 1 507 507 475840 Sep 9 2023 ioncube_loader_lin_4.4.so
-rw-rw-r-- 1 507 507 494880 Sep 9 2023 ioncube_loader_lin_4.4_ts.so
-rw-rw-r-- 1 507 507 483360 Sep 9 2023 ioncube_loader_lin_5.0.so
-rw-rw-r-- 1 507 507 497632 Sep 9 2023 ioncube_loader_lin_5.0_ts.so
-rw-rw-r-- 1 507 507 1116768 Sep 9 2023 ioncube_loader_lin_5.1.so
-rw-rw-r-- 1 507 507 1155744 Sep 9 2023 ioncube_loader_lin_5.1_ts.so
-rw-rw-r-- 1 507 507 1139936 Sep 9 2023 ioncube_loader_lin_5.2.so
-rw-rw-r-- 1 507 507 1176704 Sep 9 2023 ioncube_loader_lin_5.2_ts.so
-rw-rw-r-- 1 507 507 1222328 Sep 9 2023 ioncube_loader_lin_5.3.so
-rw-rw-r-- 1 507 507 1275512 Sep 9 2023 ioncube_loader_lin_5.3_ts.so
-rw-rw-r-- 1 507 507 1512960 Sep 9 2023 ioncube_loader_lin_5.4.so
-rw-rw-r-- 1 507 507 1599584 Sep 9 2023 ioncube_loader_lin_5.4_ts.so
-rw-rw-r-- 1 507 507 1520056 Sep 9 2023 ioncube_loader_lin_5.5.so
-rw-rw-r-- 1 507 507 1602040 Sep 9 2023 ioncube_loader_lin_5.5_ts.so
-rw-rw-r-- 1 507 507 1485192 Sep 9 2023 ioncube_loader_lin_5.6.so
-rw-rw-r-- 1 507 507 1549640 Sep 9 2023 ioncube_loader_lin_5.6_ts.so
-rw-rw-r-- 1 507 507 1254608 Sep 9 2023 ioncube_loader_lin_7.0.so
-rw-rw-r-- 1 507 507 1316080 Sep 9 2023 ioncube_loader_lin_7.0_ts.so
-rw-rw-r-- 1 507 507 1355080 Sep 9 2023 ioncube_loader_lin_7.1.so
-rw-rw-r-- 1 507 507 1438760 Sep 9 2023 ioncube_loader_lin_7.1_ts.so
-rw-rw-r-- 1 507 507 1407568 Sep 9 2023 ioncube_loader_lin_7.2.so
-rw-rw-r-- 1 507 507 1489008 Sep 9 2023 ioncube_loader_lin_7.2_ts.so
-rw-rw-r-- 1 507 507 1316800 Sep 9 2023 ioncube_loader_lin_7.3.so
-rw-rw-r-- 1 507 507 1386880 Sep 9 2023 ioncube_loader_lin_7.3_ts.so
-rw-rw-r-- 1 507 507 1363392 Sep 9 2023 ioncube_loader_lin_7.4.so
-rw-rw-r-- 1 507 507 1430848 Sep 9 2023 ioncube_loader_lin_7.4_ts.so
-rw-rw-r-- 1 507 507 1401736 Sep 9 2023 ioncube_loader_lin_8.1.so
-rw-rw-r-- 1 507 507 1506216 Sep 9 2023 ioncube_loader_lin_8.1_ts.so
-rw-rw-r-- 1 507 507 1439016 Sep 9 2023 ioncube_loader_lin_8.2.so
-rw-rw-r-- 1 507 507 1546568 Sep 9 2023 ioncube_loader_lin_8.2_ts.so
-rw-r--r-- 1 507 507 10768 Aug 5 2022 LICENSE.txt
-rw-r--r-- 1 507 507 181104 Aug 15 2022 loader-wizard.php
-rw-r--r-- 1 507 507 4070 Sep 9 2023 README.txt
-rw-r--r-- 1 507 507 39548 Sep 9 2023 USER-GUIDE.pdf
-rw-r--r-- 1 507 507 11269 Sep 9 2023 USER-GUIDE.txt
Как видим, в архиве присутствовало множество различный версий модуля для разных версий PHP. Необходимо узнать, какой из этих файлов нужен нам для дальнейшей установки.
6. Просматриваем текущую версию PHP:
- php -v
ВыводPHP 8.1.2-1ubuntu2.17 (cli) (built: May 1 2024 10:10:07) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
with Zend OPcache v8.1.2-1ubuntu2.17, Copyright (c), by Zend Technologies
7. Следующим шагом, определяем локацию директории, в которую необходимо будет устанавливать IonCube Loader.
- php -i | grep extension_dir
Выводextension_dir => /usr/lib/php/20210902 => /usr/lib/php/20210902
Локация /usr/lib/php/20210902 понадобится нам в дальнейшем процессе установки. В ОС из ветки Centos такая папка может иметь вид /usr/lib64/php/modules.
8. Копируем файлы IonCube в нужную директорию.
- sudo cp /tmp/ioncube/ioncube_loader_lin_8.1.so /usr/lib/php/20210902
9. Теперь необходимо внести правки в файлы конфигурации php.ini
. В разных конфигурациях сервера у них может варьироваться локация:
- sudo nano /etc/php/8.1/cli/php.ini #для PHP CLI
- sudo nano /etc/php/8.1/fpm/php.ini #для PHP-FPM & Nginx
- sudo nano /etc/php/8.1/apache2/php.ini #для Apache2
Вставьте строку следующего вида в самое начало php.ini
:
zend_extension = /usr/lib/php/20210902/ioncube_loader_lin_8.1.so
8. Выполните рестарт вебсервера:
- sudo systemctl restart apache2
- sudo systemctl restart httpd
- sudo systemctl restart nginx
- sudo systemctl restart php-fpm
9. Проверьте правильность установки командой:
- php -v
Если установка успешна, строка с информацией о текущей версии IonCube будет отображаться следующим образом:
ВыводPHP 8.1.2-1ubuntu2.17 (cli) (built: May 1 2024 10:10:07) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
with the ionCube PHP Loader v13.0.2, Copyright (c) 2002-2023, by ionCube Ltd.
with Zend OPcache v8.1.2-1ubuntu2.17, Copyright (c), by Zend Technologies
На этой странице
Похожие статьи
- Панель управления aaPanel. Как установить панель aaPanel на чистый виртуальный/выделенный сервер
- Панель управления FastPanel. Как установить панель FastPanel на чистый виртуальный/выделенный сервер
- Запуск приложений в фоне с помощью Screen
- Панель управления Hestia. Как установить панель Hestia на чистый виртуальный/выделенный сервер