- Установка IonCube Loader
- IonCube на 32-битной системе
- IonCube на 64-битных системах
- Установка IonCube Loader
- Видео-инструкция по установке IonCube Loader
- Текстовая пошаговая инструкция
- Как установить загрузчик IonCube на Ubuntu 20.04 LTS
- Как установить загрузчик IonCube на Ubuntu 20.04 LTS
- Установите загрузчик IonCube на Ubuntu 20.04 LTS Focal Fossa
- Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие apt команды в терминале.
- Шаг 2. Установка загрузчиков IonCube в Ubuntu 20.04.
- Шаг 3. Настройте загрузчик ionCube на PHP.
- Шаг 4. Тестирование IonCube на Ubuntu 20.04.
- Как установить IonCube Loader в Debian 10
- Как установить IonCube Loader в Debian 10
- Установите загрузчик IonCube на Debian 10 Buster
- Шаг 1. Перед установкой любого программного обеспечения важно убедиться, что ваша система обновлена, выполнив следующие apt команды в терминале:
- Шаг 2. Установка загрузчика IonCube в Debian 10.
- Шаг 3. Тестирование IonCube в системе Debian.
- Ликбез по IonCube
- Список понятий
- Необходимое ПО
- Кодирование и обфускация исходного кода
- Создание лицензии
- Установка IonCube Loader
Установка IonCube Loader
IonCube – это расширение PHP-модуля, которое загружает зашифрованные PHP-файлы и ускоряет отображаемые веб-страницы.
Данное расширение необходимо многим приложениям на основе PHP.
IonCube на 32-битной системе
Данный раздел предназначен для PHP, установленного на 32-битной системе. Для примера можно разогнать LAMP на Ubuntu 12.04.
Сначала скачайте пакет:
cd /var/www
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
tar xvfz ioncube_loaders_lin_x86.tar.gz
Затем перейдите к файлу IP-адрес/ioncube/loader-wizard.php (в данном случае это http://198.199.105.50/ioncube/loader-wizard.php).
В появившемся окне выберите Local install.
Мастер установки IonCube Loader укажет, какой модуль является правильным (в данном случае это ioncube_loader_lin_5.3.so).
Теперь нужно сохранить файл 20ioncube.ini file в /etc/php5/apache2/conf.d.
Используйте следующую строку, чтобы добавить модуль IonCube Loader:
Скопируйте эту строку в папку с PHP-модулями, которую можно найти при помощи следующей строки (путь будет предоставлен мастером):
php -i | grep extension_dir
Будет выведено следующее:
extension_dir => /usr/lib/php5/20090626+lfs => /usr/lib/php5/20090626+lfs
Теперь нужно скопировать модуль в папку PHP-модулей:
cp /var/www/ioncube/ioncube_loader_lin_5.3.so /usr/lib/php5/20090626+lfs/
Затем нужно перезапустить Apache2, чтобы загрузить модуль.
service apache2 restart
Обновите веб-страницу http://198.199.105.50/ioncube/loader-wizard.php и убедитесь в том, что модуль был установлен (должно появиться сообщение «Loader Installed Successfully»).
IonCube на 64-битных системах
Если LAMP stack установлен на 64-битную систему, нужно загрузить соответствующий пакет:
cd /var/www
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xvfz ioncube_loaders_lin_x86-64.tar.gz
Затем повторите все вышеописанные действия.
Источник
Установка IonCube Loader
Прежде чем начинать установку, вам необходимо знать следующее:
- Версия ОС(Операционной системы), установленной на VPS.
- Версия PHP, установленного на VPS.
- Путь расположения файла php.ini.
Способы получения этой информации будут последовательно рассмотрены в шагах этой статьи.
Видео-инструкция по установке 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 на Ubuntu 20.04 LTS
Как установить загрузчик IonCube на Ubuntu 20.04 LTS
В этом руководстве мы покажем вам, как установить IonCube Loader в Ubuntu 20.04 LTS. Для тех из вас, кто не знал, IonCube Loaders — это, по сути, утилита шифрования / дешифрования для приложений PHP, которая также помогает ускорить обслуживаемые страницы. Это часто требуется для многих приложений на основе PHP.
В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo ‘ к командам для получения привилегий root. Я покажу вам пошаговую установку IonCube Loader на Ubuntu 20.04 LTS (Focal Fossa). Вы можете следовать тем же инструкциям для Ubuntu 18.04, 16.04 и любого другого дистрибутива на основе Debian, такого как Linux Mint.
Установите загрузчик IonCube на Ubuntu 20.04 LTS Focal Fossa
Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие apt команды в терминале.
Шаг 2. Установка загрузчиков IonCube в Ubuntu 20.04.
Теперь мы загружаем последние версии PHP-модулей загрузчиков IonCube со страницы загрузки IonCube:
После этого нам нужно определить, где PHP загружает расширения, это можно сделать, выполнив приведенную ниже команду и посмотрев:
Вы увидите результат, который выглядит примерно так:
Шаг 3. Настройте загрузчик ionCube на PHP.
Теперь отредактируйте необходимые файлы конфигурации PHP или вы можете обновить все файлы конфигурации, найденные выше:
Шаг 4. Тестирование IonCube на Ubuntu 20.04.
Если вы видите версию PHP с версией загрузчика ionCube, это означает, что вы успешно установили и настроили загрузчик PHP IonCube в своей системе Ubuntu 20.04.
Поздравляю! Вы успешно установили IonCube . Благодарим за использование этого руководства для установки загрузчика IonCube в системе Ubuntu 20.04 LTS Focal Fossa. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт IonCube .
Источник
Как установить IonCube Loader в Debian 10
Как установить IonCube Loader в Debian 10
В этом руководстве мы покажем вам, как установить IonCube Loader в Debian 10. Для тех из вас, кто не знал, IonCube Loaders — это, по сути, утилита шифрования / дешифрования для приложений PHP, которая также помогает ускорить обслуживаемые страницы. . Это часто требуется для многих приложений на основе PHP.
В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo ‘ к командам для получения привилегий root. Я покажу вам пошаговую установку IonCube Loader на Debian 10 (Buster).
Установите загрузчик IonCube на Debian 10 Buster
Шаг 1. Перед установкой любого программного обеспечения важно убедиться, что ваша система обновлена, выполнив следующие apt команды в терминале:
Шаг 2. Установка загрузчика IonCube в Debian 10.
Теперь скачиваем последние версии PHP-модулей загрузчиков IonCube с официального сайта:
После успешной загрузки архива распакуйте его:
Затем найдите расположение каталога расширений для версии PHP 7.4.8, именно там будет установлен файл IonCube Loader:
Затем нам нужно скопировать ionCube Loader для нашей версии PHP 7.4.8 в каталог расширений : /usr/ lib / php / 20151012
После этого нам нужно определить, где PHP загружает расширения, это можно сделать, выполнив приведенную ниже команду и посмотрев:
Вы увидите результат, который выглядит примерно так:
Затем добавьте следующую строку в качестве первой строки в соответствующих файлах: php . ini
Теперь нам нужно перезапустить веб-сервер Apache или Nginx, чтобы загрузчик IonCube заработал:
Шаг 3. Тестирование IonCube в системе Debian.
Если вы видите версию PHP с версией загрузчика ionCube, это означает, что вы успешно установили и настроили загрузчик PHP IonCube в своей системе Debian 10.
Поздравляю! Вы успешно установили IonCube . Благодарим за использование этого руководства по установке IonCube Loader на Debian 10 Buster. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт IonCube .
Источник
Ликбез по IonCube
IonCube — это набор утилит для командной строки, которые позволяют производить кодирование, обфускацию и лицензирование исходного кода, написанного на языке php.
Функционал IonCube очень обширен что бы о нем можно было написать в одной статье. Под катом я опишу основной функционал IonCube, который необходим для защиты кода от не лицензионного использования.
Список понятий
1. Кодирование исходного кода — процесс при котором исходный код, написанный на языке php, превращается в набор машинных команд, чтение и декодирование которых максимально затруднено.
2. Обфускация — приведение исходного кода программы к виду, сохраняющему ее функциональность, но затрудняющему анализ, понимание алгоритмов работы и модификацию.
3. Лицензия — это специальный, закодированный приватным ключом файл, который необходим для запуска закодированного исходного кода.
Необходимое ПО
1. IonCube Encoder — набор бинарных файлов для разных ОС, при помощи которых можно кодировать исходный код, производить его обфускацию и генерировать лицензии. Платное ПО, но можно скачать триал версию.
2. IonCube Loader — поставляется в виде .so или .dll библиотеки, необходим для декодирования исходного кода закодированного при помощи IonCube Encoder. Бесплатное ПО, скачать можно тут.
Кодирование и обфускация исходного кода
В зависимости от версии PHP под которую написан код, IonCube Encoder предоставляет следующие бинарные файлы для выполнения кодирования и обфускации: ioncube_encoder, ioncube_encoder5 или ioncube_encoder53
Формат команды следующий:
./ioncube_encoder –o [options]
Ниже я перечислю основные опции необходимые для кодирования и обфускации кода:
—replace-target — опция говорит енкодеру что надо полностью заменить целевой каталог или файл, если он уже существует, новым каталогом или файлом. Например:
./ioncube_encoder unencrypted_folder –o encrypted_folder —replace-target
—copy @ — опция говорит енкодеру что надо копировать указанный файл или каталог (и все его подкаталоги) без кодирования его содержимого. Знак @ говорит о том, что путь к копируемому файлу или директории надо искать от корня кодируемой директории. Т.е. если было указано копировать каталог configs, то будет копироватся только каталог configs котороый лежит в корне кодируемой директории, а не например в подкатегории example/configs. В качестве примера можно привести каталог где лежат конфигурационные файлы и которые кодировать не нужно:
./ioncube_encoder unencrypted_folder –o encrypted_folder —replace-target —copy @configs/
—ignore @ — опция говорит енкодеру что надо игнорировать указанный файл или директорию (и все ее поддриректории), при этом в результирующий каталог они не копируются.
./ioncube_encoder unencrypted_folder –o encrypted_folder —replace-target —ignore @docs/
—obfuscate — запускает процесс обфускации кода, в качестве объектов, к которым применяется обфускация могут быть: functions, linenos, locals или all. Например:
./ioncube_encoder unencrypted_folder –o encrypted_folder —replace-target —obfuscate all
—obfuscation-key «some_unique_key» — обязательный параметр для обфускации, который задает уникальный ключ, что делает практически невозможным процесс декодирования кода.
./ioncube_encoder unencrypted_folder –o encrypted_folder —replace-target —obfuscate all —obfuscation-key «It is unique key :)»
— опция говорит энкодеру, что файл при запуске должен запрашивать файл лицензии. Путь к файлу лицензии будет относителен запросившему его файлу, так что лучше здесь указывать просто название файла лицензии, который IonCube Loader будет искать сперва в том же каталоге, в котором находится скрипт, запросивший файл лицензии, а не найдя будет идти рекурсивно в верх вплоть до корневой директории. Таким образом файл лицензии можно сохранять просто в корневом каталоге, куда установлено ваше приложение. Например:
./ioncube_encoder unencrypted_folder –o encrypted_folder —replace-target —with-license license.txt
—passphrase — секретный ключ, при помощи которого кодируются файлы. Внимание: файл лицензии должен быть сгенерирован с таким же секретным ключом. Обязательный параметр если используется параметр —with-license .
./ioncube_encoder unencrypted_folder –o encrypted_folder —replace-target —with-license license.txt —passphrase some_passphrase
Создание лицензии
Лицензии создаются при помощи бинарного файла make_license. Формат команды для создания лицензии:
./make_license –-passphrase –o
—passphrase — эта опция задает секретный ключ, который используется для формирования подписи для лицензии. Внимание: ключ должен совпадать с ключем, который использовался при кодировании исходного кода.
Ограничение лицензии по серверам
—allowed-server [ ][@[ ]][< >] — эта опция используется для ограничения валидности лицензии по домену, IP или MAC адресу сервера, для которого она предназначена.
Примеры.
1. Ограничение по домену:
—allowed-server www.foo.com
—allowed-server www.foo.com,www.bar.com
—allowed-server 1.2.3.4@
Символ «@» в конце домена означает что хоть домен и похож на IP адрес но его стоит воспринимать именно как домен.
Внимание: для определения домена в IonCube Loader используется конструкция $_SERVER[‘SERVER_NAME’] .
2. Ограничение по IP адресу:
—allowed-server 192.168.1.4
—allowed-server 192.168.1.4,192.168.1.20
Примечания:
1. Когда закодированный файл запрашивается через web-сервер, то IP сверяется с тем IP, который присылает web-сервер.
2. Когда закодированный файл запрашивается на прямую, например когда имеем дело с php shell скриптами, то IP сравнивается только с первичным IP адресом сетевого интерфейса.
3. Нельзя указать в ограничении IP адрес 127.0.0.1
3. Ограничения по MAC адресу. MAC адрес должен состоять из 6-ти байт и должен быть представлен в шестнадцатеричном виде, например:
4. Комбинирование ограничений. IonCube позволяет комбинировать ограничения, например:
Ограничение лицензии по времени
— позволяет задать период, на протяжении которого с момента генерации лицензия является валидной. Периоды можно задавать в следующих величинах: секунды (s), минуты (m). часы (h) или дни (d). Например:
—expire-in 360s
—expire-in 20m
—expire-in 24h
—expire-in 365d
—expire-on — позволяет задать точную дату, до которой лицензия является валидной. Например:
Установка IonCube Loader
1. Скачайте IonCube Loader для вашей ОС, он распространяется бесплатно.
2. В архиве вы найдете по два файла с расширением .so или .dll для каждой версии php, у одного из них будет постфикс «ts», что означает что функционал «thread safety» для этого файла активен.
3. В вашем php.ini пропишите путь к скачаной библиотеке. Например:
zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.3.so
zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.3_ts.so
zend_extension_ts = /usr/local/ioncube/ioncube_loader_lin_5.2.so
Обратите внимание что для PHP версией меньше 5.3 нужно указывать директиву zend_extension_ts если в хотите использовать библиотеку с функционалом «thread safety».
4. Перезагрузите web-сервер.
Вот в принципе и все, что нужно знать для защиты своего кода от не лицензионного использования. Больше информации Вы сможете найти на официальном сайте IonCube.
Источник