Habilitar extensión ioncube de PHP en Debian 10 (Buster)
ionCube loader es una extensión de PHP que permite interpretar archivos de PHP protegidos y codificados con ionCube Encoder. Generalmente este software es utilizado para prevenir que el código fuente original sea decifrado por terceros.
Antes de empezar con este tutorial te recomandamos visitar los siguientes artículos si aún no tienes un entorno de PHP con Apache en Debian Buster.
- Instalar Apache, PHP y MySQL en Debian 10 (Buster)
- Instalar extensiones de PHP en Debian
Instalación
Lo primero que debes hacer es dirigirte al sitio de ionCube loaders y descargar el instalador respectivo para tu arquitectura (x86 / x64).
x64wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
x86
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
Una vez hecho esto puedes descomprimir el archiv tar.
tar -zxvf ioncube_loaders_lin_x86*
cd ioncube/
Ahora debes comprobar que versión de php tienes instalada y cuál es el directorio de las extensiones.
user@server:/tmp/ioncube$ php -v | grep PHP
PHP 7.4.18 (cli) (built: May 3 2021 11:59:44) ( NTS )
Copyright (c) The PHP Group
user@server:/tmp/ioncube$ php -i | grep extension_dir
extension_dir => /usr/lib/php/20190902 => /usr/lib/php/20190902
Con esto ya puedes copiar la extensión del directorio de ionCube hacia la carpeta de tus extensiones. En este caso, copiaremos la extensión para PHP 7.4 (NTS).
sudo cp ioncube_loader_lin_7.4.so /usr/lib/php/20190902/
El último paso consiste en agregar la extensión al archivo php.ini de PHP. Esto va a depender de cómo hallas instalado PHP y de dónde quieres habilitar la extensión. Por ejemplo, si quieres habilitar la extensión en los sitios del web server Apache y no en CLI, deberás modificar el siguiente archivo.
sudo vim /etc/php/7.4/apache2/php.ini
En alguna parte del archivo, preferiblemente en donde se encuentras las demás extensiones, deberías copiar tu extensión de la siguiente forma:
zend_extension=/usr/lib/php/20190902/ioncube_loader_lin_7.4.so
Finalmente puedes reiniciar tu servidor y correr aquellas aplicaciones de requieren de ionCube.
sudo systemctl restart apache2