Cómo instalar ionCube Loader en Debian y Ubuntu


ionCube Loader es una extensión (módulo) de PHP que permite a PHP cargar archivos protegidos y codificados mediante el software ionCube Encoder, que se utiliza principalmente en aplicaciones de software comerciales para proteger su código fuente y evitar que sea visible y detectable.

En este artículo, explicaremos cómo instalar y configurar ionCube Loader con PHP en distribuciones Debian y Ubuntu.

Un servidor Ubuntu o Debian que se ejecuta con un servidor web (administrador de paquetes apt como se muestra.

Paso 1: Instale el servidor web Apache o Nginx con PHP

1. Si ya tiene un servidor web Apache o Nginx en ejecución con PHP instalado en su sistema, puede saltar al Paso 2; de lo contrario, use el siguiente comando apt para instalarlos.

-------------------- Install Apache with PHP --------------------
$ sudo apt install apache2 php7.0 php7.0-fpm php7.0-cli 

-------------------- Install Nginx with PHP -------------------- 
$ sudo apt install nginx php7.0 php7.0-fpm php7.0-cli

2. Una vez que haya instalado Apache o Nginx con PHP en su sistema, puede iniciar el servidor web y activarlo para que se inicie automáticamente en el arranque del sistema usando los siguientes comandos.

-------------------- Start Apache Web Server --------------------
$ sudo systemctl start apache2
$ sudo systemctl enable apache2

-------------------- Start Nginx + PHP-FPM Server --------------------
$ sudo systemctl start nginx
$ sudo systemctl enable nginx
$ sudo systemctl start php7.0-fpm
$ sudo systemctl enable php7.0-fpm

Paso 2: Descarga IonCube Loader

3. Vaya a la distribución de Linux que se ejecuta en una arquitectura de 64 o 32 bits con el siguiente comando.

$ uname -r

Linux TecMint 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

El resultado anterior muestra claramente que el sistema se ejecuta en una arquitectura de 64 bits.

Según su arquitectura de distribución de Linux, descargue los archivos del cargador ioncube en el directorio/tmp usando el siguiente comando wget.

-------------------- For 64-bit System --------------------
$ cd /tmp
$ wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

-------------------- For 32-bit System --------------------
$ cd /tmp
$ wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz

4. Luego descomprima el archivo descargado usando el comando ls para listar los varios archivos del cargador ioncube para diferentes versiones de PHP.

$ tar -zxvf ioncube_loaders_lin_x86*
$ cd ioncube/
$ ls -l

Paso 3: Instale ionCube Loader para PHP

5. En la captura de pantalla anterior, verá varios archivos de cargador de ioncube para diferentes versiones de PHP, debe seleccionar el cargador de ioncube adecuado para su versión de PHP instalada en su servidor. Para conocer la versión de PHP instalada actualmente en su servidor, ejecute el comando.

$ php -v

La captura de pantalla anterior dice claramente que el sistema está usando la versión PHP 7.0.25, en su caso, debería ser una versión diferente.

6. A continuación, busque la ubicación del directorio de extensión para PHP versión 7.0.25, es donde se instalará el archivo cargador de ioncube.

$ php -i | grep extension_dir

extension_dir => /usr/lib/php/20151012 => /usr/lib/php/20151012

7. A continuación, debemos copiar el cargador ioncube para nuestra versión PHP 7.0.25 en el directorio de extensión (/ usr/lib/php/20151012).

$ sudo cp /tmp/ioncube/ioncube_loader_lin_7.0.so /usr/lib/php/20151012

Nota: asegúrese de reemplazar la versión de PHP y el directorio de extensión en el comando anterior de acuerdo con la configuración de su sistema.

Paso 4: Configurar ionCube Loader para PHP

8. Ahora necesitamos configurar el cargador ioncube para que funcione con PHP, en el archivo php.ini . Debian y Ubuntu usan diferentes archivos php.ini para PHP CLI y PHP-FPM como se muestra.

$ sudo vi /etc/php/7.0/cli/php.ini 		#for PHP CLI 
$ sudo vi /etc/php/7.0/fpm/php.ini		#for PHP-FPM & Nginx
$ sudo vi /etc/php/7.0/apache2/php.ini	        #for Apache2	

Luego agregue la línea debajo como la primera línea en los respectivos archivos php.ini .

zend_extension = /usr/lib/php/20151012/ioncube_loader_lin_7.0.so

Nota: asegúrese de reemplazar la ubicación del directorio de extensión y la versión de PHP en el comando anterior de acuerdo con la configuración de su sistema.

9. Luego guarde y salga del archivo. Ahora tenemos que reiniciar el servidor web Apache o Nginx para que los cargadores de ioncube entren en vigor.

-------------------- Start Apache Web Server --------------------
$ sudo systemctl restart apache2

-------------------- Start Nginx + PHP-FPM Server --------------------
$ sudo systemctl restart nginx
$ sudo systemctl restart php-fpm

Paso 5: Pruebe el cargador ionCube

10. Ahora es el momento de verificar que el cargador ionCube esté instalado y configurado correctamente en su servidor comprobando la versión de PHP una vez más. Debería poder ver un mensaje que indique que PHP está instalado y configurado con la extensión del cargador ioncube (el estado debe estar habilitado), como se muestra en el resultado a continuación.

$ php -v

PHP 7.0.25-0ubuntu0.16.04.1 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.2.0, Copyright (c) 2002-2018, by ionCube Ltd.
    with Zend OPcache v7.0.25-0ubuntu0.16.04.1, Copyright (c) 1999-2017, by Zend Technologies

¡Eso es! Para proteger los archivos PHP, debe tener el cargador IonCube instalado y configurado con su versión de PHP instalada, como se muestra arriba. Esperamos que todo haya funcionado bien sin problemas; de lo contrario, utilice el formulario de comentarios a continuación para enviarnos sus consultas.