Модуль ioncube php loader
Модуль ioncube php loader
Как установить ionCube loader
Некоторые веб-приложения требуют для своей работы установленного на веб-сервере программного обеспечения ionCube loader. Это ПО обеспечивает дешифрацию и эффективное выполнение откомпилированного и зашифрованного php кода. Процесс установки ionCube loader довольно прост, но для тех, кто впервые столкнулся с установкой и не знаком с английским языком, на котором работает мастер установки, возможно возникнут вопросы. Итак, рассмотрим процесс установки ionCube loader на локальном сервере и на сервере хостинга.
Установка на локальный сервер
В качестве примера локального сервера возьмем Денвер для Windows, установленный в каталог, назначенный на диск Z:
Шаги установки:
Итак, следуем инструкции шаг за шагом:
рис. 3
После установки обязательно удалите файл мастера установки loader-wizard.php из корневой папки вашего сайта из соображений безопасности. Теперь можно устанавливать веб-приложения.
Установка на хостинге
Большинство хостинг провайдеров предустанавливают на свои серверы ionCube loader. Поэтому сначала узнайте у своего хостинг-провайдера, установлен ли уже на вашем сервере ionCube loader. Это можно узнать самостоятельно, запустив мастер установки loader-wizard.php, полученный на первом этапе установки на локальный сайт. Перепишите мастер в корневую директорию сайта и запустите в браузере с помощью URL www.мой-сат.ru/loader-wizard.php. Если вы увидите сообщение, подобное рис. 2, то ionCube loader уже установлен на вашем хостинге. Можно приступать к использованию веб-приложений. Так же возможно, что на хостинге установлена старая версия IONcube loader и в этом случае мастер порекомендует установить новую версию. Процесс обновления версии заключается в установке на ваш сайт новой версии ionCube loader, как будто он еще не установлен.
Если IONcube loader не установлен на вашем хостинге, то наилучшим выходом будет попросить хостера установить на ваш сервере IONcube loader. Так же на большинстве хостингов возможна самостоятельная установка, но необходимо проконсультироваться у службы поддержки хостинга как установить IONcube loader на свой сайт, так как в разных хостингах могут быть разные способы установки.
Установка ionCube в Ubuntu 16.04
ionCube – это модуль PHP, предназначенный для загрузки зашифрованных PHP-файлов и ускоряет загрузку веб-страниц, что необходимо для корректной работы многих PHP-приложений. Данное руководство поможет установить ionCube на сервер Ubuntu 16.04.
Требования
1: Выбор версии ionCube
Версия ionCube должна совпадать с версией PHP. Чтобы выбрать правильную версию ionCube, нужно знать:
Если у вас 64-битный сервер Ubuntu, то, скорее всего, PHP использует ту же архитектуру, но лучше это проверить. Для этого можно использовать сценарий PHP, который извлечёт информацию о текущих параметрах PHP.
Создайте файл info.php в корневом каталоге веб-сервера (по умолчанию это /var/www/html) с помощью текстового редактора.
sudo nano /var/www/html/info.php
Вставьте в него следующий код:
На экране появится страница с таким заголовком:
PHP Version 7.0.8-3ubuntu3
Ниже будет представлен список параметров PHP.
Как видите, версия PHP указана в самом заголовке. В данном случае используется версия 7.0.8. Обратите внимание на строку System. Если в конце этой строки вы видите x86_64, вы используете 64-битную версию PHP, а если i686, то 32-битную.
Теперь можно загрузить ionCube.
2: Установка ionCube
Посетите сайт ionCube и найдите ссылку на соответствующую версию пакета. В данном случае это 64-битный пакет Linux. Скопируйте ссылку на архив tar.gz и загрузите файл.
tar xvfz ioncube_loaders_lin_x86-64.tar.gz
Примечание: Версия может отличаться.
Эта команда создаст каталог ioncube, в котором хранятся разные файлы для разных версий PHP. В данном случае нужен файл для версии PHP 7.0, он называется ioncube_loader_lin_7.0.so. Этот файл нужно скопировать в каталог расширений PHP, extension_dir. Чтобы найти путь к нему, снова откройте страницу:
Путь к этому каталогу будет указан в строке extension_dir (в данном случае это /usr/lib/php/20151012). Скопируйте файл в указанное место:
sudo cp ioncube/ioncube_loader_lin_7.0.so /usr/lib/php/20151012/
Чтобы PHP-расширение загружалось, его нужно добавить в настройки PHP. Это можно сделать в конфигурационном файле php.ini, но лучше всё же создать отдельный файл для параметров расширения: так вы сможете загружать его раньше других расширений и избежать возможных конфликтов.
Чтобы узнать, где можно создать пользовательский конфигурационный файл, откройте страницу info.php:
Теперь нужно создать файл 00-ioncube.in в каталоге /etc/php/7.0/apache2/conf.d. Два нуля в начале файла позволяют загружать этот файл прежде других расширений PHP.
sudo nano /etc/php/7.0/apache2/conf.d/00-ioncube.ini
Добавьте в файл такую строку:
Сохраните и закройте файл.
Чтобы изменения вступили в силу, перезапустите веб-сервер:
# Apache:
sudo systemctl restart apache2.service
# Nginx:
sudo systemctl restart nginx
Также можно перезапустить php-fpm:
sudo systemctl restart php7.0-fpm.service
3: Тестирование ionCube
Вернитесь на страницу info.php:
Обновите её и найдите ключевое слово ionCube. Вы увидите:
[…] Zend engine v3.0.0. Copyright © 1998-2016 Zend Technologies
with the ionCube PHP Loader (enabled) + Instruction Protection from ioncube24.com […]
Это значит, что расширение ionCube загружено на сервер.
После установки ionCube страницу info.php нужно удалить: она открывает доступ к конфиденциальным данным сервера и подвергает его опасности.
sudo rm /var/www/html/info.php
Также вы можете удалить дополнительные файлы ionCube:
Расширение ionCube полностью готово к работе. Теперь вы можете использовать его для поддержки любого PHP-приложения, которому необходим этот модуль.
Как установить ionCube с PHP в Ubuntu 20.04
Андрей Васенин
Это руководство поможет вам настроить загрузчик ionCube с помощью PHP в системе Ubuntu 20.04 Linux.
Предварительные требования
Мы предполагаем, что в вашей системе Ubuntu уже установлен PHP. Если нет, вы можете воспользоваться одной из инструкций необходимой версии PHP.
Загружаем самые свежие php-модули загрузчика ioncube с сайта ioncube со страницы загрузки ioncube. В качестве альтернативы вы также можете использовать следующую команду для загрузки загрузчиков ioncube (см. команду ниже). Также распакуйте загруженный архив в каталог /usr/local:
Важно сделать еще одну проверку! Возможно, Apache был настроен для работы с другой версией PHP, также установленной в Вашей системе. Чтобы обнаружить это, вам нужно поместить файл с командой phpinfo (); в корневой папке (document root) веб-сервера / сайта. Затем запустить его. Например вы создали файл 1.php в корне, тогда в веб-браузере вызываете url: http://mysite.com/1.php
По умолчанию PHP хранит файлы конфигурации в следующем месте. Например, файлы конфигурации для PHP 7.4 хранятся в следующих папках:
Теперь отредактируйте необходимые файлы конфигурации PHP или вы можете обновить все файлы конфигурации, найденные выше. Добавьте приведенный ниже код в конец файлов в зависимости от вашей версии PHP:
Обязательно замените путь к файлу /usr/local/ioncube/ioncube_loader_lin_7.23.so на соответствующий файл версии PHP.
Все сделано. Вы добавили настройки ionCube в свою конфигурацию php. Чтобы проверить конфигурацию, введите команду:
Вывод
В этом руководстве Вы научились устанавливать и настраивать загрузчик ionCube PHP в системе Ubuntu 20.04 Linux. Надеюсь, что данный краткий мануал будет Вам полезен!
Установка IonCube Loader
Прежде чем начинать установку, вам необходимо знать следующее:
Способы получения этой информации будут последовательно рассмотрены в шагах этой статьи.
Видео-инструкция по установке IonCube Loader
Текстовая пошаговая инструкция
Для начала следует узнать версию и архитектуру установленной на сервере операционной системы, чтобы знать, какой установочный архив необходимо скачать. Для этого воспользуйтесь командой:
Вывод этой команды может быть следующим:
Исходя из полученных результатов, можно определить разрядность системы. В показанном примере система является 64-разрядной. Основываясь на этой информации, качаем установочный архив IonCube Loader с официального сайта. Для этого подключитесь к VPS по SSH с правами суперпользователя (root) и воспользуйтесь командой wget:
Для 32-разрядных систем:
Для 64-разрядных систем:
После завершения скачивания архива необходимо его распаковать. Для этого введите одну из команд в зависимости от имени скачанного архива:
Теперь нужно создать директорию usr/local/ioncube, в которую затем будет загружен модуль IonCube. Создание директории можно выполнить при помощи команды:
После этого вам понадобится знать версию PHP, установленного на VPS. Для этого введите в консоли команду:
В зависимости от полученной информации о версии PHP следует изменять нижеуказанные команды, т.к. для каждой версии PHP IonCube предоставляет отдельные файлы модуля. Если, например, в результате команды php –v отобразилась версия PHP 5.4.39, то в следующей команде следует ввести первые 2 цифры версии PHP. Пример команды:
Если же, например, на сервере используется PHP 5.3.12, то, вместо 5.4 следует ввести 5.3. Указанная звездочка после версии позволяет скопировать сразу два файла, необходимых для работы модуля: ioncube_loader_lin_5.4.so и ioncube_loader_lin_5.4_ts.so.
Далее необходимо внести правки в конфигурационный файл PHP — php.ini. В Fedora/CentOS данный файл обычно находится в каталоге /etc, а в Debian/Ubuntu – в каталоге /etc/php5/apache2/. Откройте файл php.ini с помощью любого консольного текстового редактора (например, nano или vi) и после строки [Zend] пропишите абсолютный путь расположения скопированных файлов IonCube, например:
Если у вас установлен Zend Optimizer, то вводить указанные строки в файле php.ini следует перед строками Zend Optimizer, иначе произойдет ошибка в работе веб-сервера. Если же у вас ещё не установлен ZendOptimizer, но понадобится в будущем рекомендуется устанавливать его после установки IonCube Loader.
После внесения указанных строк необходимо сохранить их в файле и выйти из редактора.
В редакторе Nano сохранение выполняется сочетанием клавиш CTRL+O, а выход при помощи CTRL+X.
В редакторе vi для сохранения и выхода используется команда :wq.
В случае использования Debian/Ubuntu информацию об установленном расширении необходимо внести в конфигурационные файлы cli, cgi, apache режимов. Для ускорения процесса вместо редактирования всех php.ini вручную можно поочередно выполнить следующие команды:
Если в процессе выполнения будет отсутствовать какая-либо директория или файл, вы можете создать их вручную командами mkdir и touch. Например:
Не забудьте о назначении прав доступа к созданному файлу:
После сохранения изменений в конфигурационном файле, потребуется перезапуск веб-сервера Apache для того, чтобы внесенные изменения вступили в силу. Для этого введите следующие команды:
Проверяем на корректность конфигурационный файл:
Если команда вывела запись:
Значит с настройками всё в порядке и можно приступать к перезапуску Apache. Если же в выводе отобразилась какая-либо ошибка, то программа отобразит описание этой ошибки, включая номер строки, в которой расположена некорректная запись.
Перезапуск веб-сервера выполняется следующими командами:
Для Fedora и CentOS 7:
После этого работоспособность IonCube Loader можно проверить с помощью команд:
Если все установлено правильно, то в консоли будет выведено сообщение примерно следующего содержания:
При помощи команды
можно получить список подключенных модулей PHP, среди которых должен быть и IonCube.
Установка Ioncube Loader в CentOS/Debian/Ubuntu
Похожие статьи
Как установить PostgreSQL 13 в Rocky Linux и AlmaLinux
Как переименовать ветку в git
Как запустить bash скрипт как systemd сервис
Ioncube Loader это PHP модуль, для загрузки файлов, защищенных ПО Ioncube Encoder. Ioncube обычно используется коммерческими компаниями, занимающимися разработкой на PHP для защиты их продуктов.
В этой статье я расскажу, как происходит установка Ioncube Loader в CentOS/Debian/Ubuntu.
1. Подготовка
Предположим, что вебсервер с PHP уже настроены и работают. В хоте установки мы будем использовать Nano и Wget.
Если у вас они не установлены, то установим их:
CentOS
Debian/Ubuntu
2. Загрузка Ioncube Loader
Ioncube Loader может быть загружен с официального сайта Ioncube Inc. Есть версии как под 32-битные системы, так и под 64-битные.
Для начала выясним, какая разрядность у системы на сервере, набрав:
В результате увидим подобный результат:
Если в результате есть x86_64, значит сервер работает с 64-битным ядром Linux, иначе 32-битное.
Загрузим сам Ioncube Loader в формате tar.gz в папку /tmp, после чего распакуем его.
Для 64-битных систем:
cd /tmp
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xfz ioncube_loaders_lin_x86-64.tar.gz
Для 32-битных систем:
cd /tmp
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
tar xfz ioncube_loaders_lin_x86.tar.gz
После результате распаковки мы получили папку ioncube
3. Так какой Ioncube Loader нам устанавливать?
После перехода в папку /tmp/ioncube/ вы увидите много файлов:
Число в имени файла соответствует версии PHP, для которой он собран, а _ts это Thread Safe версии. Мы будем использовать обычную версию (не Thread Safe).
Для начала выясним, какая версия PHP у нас установлена:
В результате вы получите нечто подобное:
У нас установлен PHP версии 5.6. Запомним ее.
Теперь выясним, где расположена папка с расширениями PHP:
Получаем подобный результат:
На скриншоте нужный нам путь был выделен. И это /usr/lib/php5/20131226. У вас может быть другой путь, в зависимости от операционной системы и версии PHP.
Скопируем Ioncube Loader для PHP 5.6 в папку расширений:
cp /tmp/ioncube/ioncube_loader_lin_5.6.so /usr/lib/php5/20131226/
Не забудьте, что цифра в имени файла – версия PHP, для которой собран Ioncube Loader. Не перепутайте.
4. Настройка PHP для Ioncube Loader
Здесь нам понадобится добавить в конфигурацию PHP (php.ini) строку, отвечающую за загрузку расширения:
Эта операция различается для CentOS и Debian/Ubuntu:
4.1 Для CentOS
В CentOS есть основной файл php.ini, в который мы и добавим вышеуказанную строку. Откроем файл для редактирования:
И добавим строку в него:
У вас будет другой путь, поэтому проверьте, что ничего не перепутали.
После этого сохраняем файл и перезапускаем вебсервер и PHP (если PHP НЕ как модуль Apache):
service httpd restart
service php-fpm restart
4.2 Для Debian/Ubuntu
В отличие от CentOS в Debian/Ubuntu есть несколько файлов php.ini, для PHP CLI (командная строка), CGI, модуля Apache и PHP FPM.
Обычно они расположены по следующим путям:
/etc/php5/apache2/php.ini
/etc/php5/cli/php.ini
/etc/php5/cgi/php.ini
/etc/php5/fpm/php.ini
Нам потребуется отредактировать каждый из них или отредактировать только нужные вам (допустим вам не нужен Ioncube Loader в CGI)
Также как и в CentOS открываем файл для редактирования и добавляем вышеуказанную строку:
Для модуля Apache:
И вставляем
Эту же операцию проводим для остальных файлов.
После чего перезагружаем вебсервер и PHP (если PHP НЕ как модуль Apache):
service apache2 restart
service php5-fpm restart
5. Проверяем Ioncube Loader
Проверим, правильно ли мы установили Ioncube Loader, для этого в консоли выполните следующую команду:
В результате вы получите что-то вроде
Наш Ioncube Loader успешно устновлен и работает (выделен на скриншоте).
Учтите, что если вы не устанавливали Ioncube Loader для консоли (CLI), то он может отсутствовать в выводе команды, поэтому нужно использовать вывод phpinfo() на сайте:
Создайте на вашем сайте файл с произвольным именем и добавьте в него:
После чего откройте в браузере этот файл, вы должны увидеть длинный вывод с большим количеством информации, но нам интересна эта часть: