Der Ioncube Loader ist ein PHP-Modul zum Laden von Dateien, die mit der Ioncube Encoder-Software geschützt wurden. Ioncube wird oft von kommerziellen PHP-Softwareanbietern verwendet, um ihre Software zu schützen, daher ist es wahrscheinlich, dass Sie früher oder später auf eine Ioncube-kodierte Datei stoßen, wenn Sie Erweiterungen für CMS- oder Shop-Software installieren, die in PHP geschrieben sind. In diesem Tutorial erkläre ich die Installation des Ioncube-Lademoduls im Detail für CentOS, Debian und Ubuntu.
1 Voraussetzungen
Auf Ihrem Server muss die Programmiersprache PHP installiert sein. Ich werde den Befehlszeilen-Editor Nano und die Befehlszeilen-Download-Anwendung wget verwenden. Nano und Wget sind auf den meisten Servern installiert, falls sie auf Ihrem Server fehlen, installieren Sie sie mit apt / yum:
CentOS
yum install nano wget
Debian und Ubuntu
apt-get install nano wget
2 Ioncube Loader herunterladen
Die Ioncube-Loader-Dateien können kostenlos von Ioncube Inc. heruntergeladen werden. Sie existieren für 32-Bit- und 64-Bit-Linux-Systeme.
Im ersten Schritt überprüfe ich, ob es sich bei dem Server um ein 32Bit oder 64Bit System handelt. Ausführen:
uname -a
Die Ausgabe sieht ungefähr so aus:
Wenn der Text „x86_64“ enthält, führt der Server ein 64-Bit-Linux-Kerbel aus. Ansonsten ist es ein 32Bit (i386) Kernel. Die meisten aktuellen Linux-Server laufen auf einem 64-Bit-Kernel.
Laden Sie den Loader im tar.gz-Format in den /tmp-Ordner herunter und entpacken Sie ihn:
Für 64-Bit-x86_64-Linux:
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
Für 32-Bit-i386-Linux:
cd /tmp
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
tar xfz ioncube_loaders_lin_x86.tar.gz
Die Dateien werden in einen Ordner mit dem Namen „ioncube“ entpackt.
3 Welcher Ioncube Loader ist der richtige?
Wenn Sie "ls /tmp/ioncube " Dann sehen Sie, dass sich im ioncube-Verzeichnis viele Loader-Dateien befinden.
Die Dateien haben eine Nummer, die der PHP-Version entspricht, für die sie erstellt wurden, und es gibt auch eine „_ts“-Version (Thread Safe) von jedem Loader. Wir werden hier die Version ohne Thread-Sicherheit verwenden.
Um die installierte PHP-Version herauszufinden, führen Sie den folgenden Befehl aus:
php -v
Die Ausgabe sieht ungefähr so aus:
Für diese Aufgabe sind nur die ersten beiden Ziffern der Versionsnummer in der ersten Ergebniszeile von Bedeutung, auf diesem Server verwende ich PHP 7.0. Wir notieren uns diese Nummer, da wir sie für die nächsten Schritte benötigen.
Jetzt ist es an der Zeit herauszufinden, wo sich das Erweiterungsverzeichnis dieser PHP-Version befindet, führen Sie den folgenden Befehl aus, um den Verzeichnisnamen zu finden:
php -i | grep extension_dir
Die Ausgabe sollte der von diesem Screenshot ähneln:
Ich habe den Pfad im Screenshot markiert, das Erweiterungsverzeichnis auf diesem Server ist "/usr/lib/php/20151012". Der Verzeichnisname ist für jede PHP-Version und Linux-Distribution unterschiedlich, verwenden Sie einfach den, den Sie vom Befehl erhalten, und nicht den, den ich hier habe.
Kopieren Sie den ioncube-Loader für unsere PHP-Version 7.0 nicht in das Erweiterungsverzeichnis /usr/lib/php/20151012:
cp /tmp/ioncube/ioncube_loader_lin_7.0.so /usr/lib/php/20151012/
Ersetzen Sie oben „7.0“ durch Ihre PHP-Version und „/usr/lib/php/20151012“ durch das Erweiterungsverzeichnis Ihrer PHP-Version.
4 Konfigurieren Sie PHP für den Ioncube Loader
Der nächste Konfigurationsschritt ist bei Centos und Debian/Ubuntu etwas anders. Wir müssen eine Zeile hinzufügen:
zend_extension = /usr/lib/php/20151012/ioncube_loader_lin_7.0.so
als erste Zeile in die php.ini Datei(en) des Systems. Auch hier enthält der obige Pfad das Erweiterungsverzeichnis „/usr/lib/php/20151012“ und die PHP-Version „7.0“, stellen Sie sicher, dass Sie diese ersetzen, damit sie zu Ihrem System-Setup passen. Ich beginne mit den Anweisungen für CentOS.
4.1 Ioncube-Loader auf CentOS konfigurieren
Centos hat nur eine zentrale php.ini-Datei, zu der wir den Ioncube-Loader hinzufügen müssen. Öffnen Sie die Datei /etc/php.ini mit einem Editor:
nano /etc/php.ini
und fügen Sie "zend_extension =" plus den Pfad zum ioncube-Loader als erste Zeile in der Datei hinzu.
zend_extension = /usr/lib/php/20151012/ioncube_loader_lin_7.0.so
Speichern Sie dann die Datei und starten Sie den Apache-Webserver neu:
service httpd restart
service php-fpm restart
4.2 Ioncube-Loader auf Debian und Ubuntu konfigurieren
Debian und Ubuntu verwenden separate php.ini-Dateien für PHP CLI (Commandline), CGI, Apache2 und FPM-Modus. Die Dateipfade sind:
- /etc/php/7.0/apache2/php.ini
- /etc/php/7.0/cli/php.ini
- /etc/php/7.0/cgi/php.ini
- /etc/php/7.0/fpm/php.ini
Eine Datei muss bearbeitet werden, um den ioncube Loader in den entsprechenden PHP-Modus zu versetzen. Es steht Ihnen frei, Dateien für PHP-Modi wegzulassen, die Sie nicht verwenden oder für die Sie keine ioncube-Loader-Unterstützung benötigen. Es ist auch möglich, dass Sie nicht alle Dateien auf Ihrem Server haben, machen Sie sich also keine Sorgen, wenn Sie eine der Dateien nicht finden können.
Apache mod_php
nano /etc/php/7.0/apache2/php.ini
Befehlszeile PHP (CLI)
nano /etc/php/7.0/cli/php.ini
PHP CGI (wird für CGI- und Fast_CGI-Modi verwendet)
nano /etc/php/7.0/cgi/php.ini
PHP-FPM
nano /etc/php/7.0/fpm/php.ini
und fügen Sie "zend_extension =" plus den Pfad zum ioncube Loader als erste Zeile in der/den Datei(en) hinzu.
zend_extension = /usr/lib/php/20151012/ioncube_loader_lin_7.0.so
Speichern Sie dann die Datei(en) und starten Sie den Apache-Webserver und php-fpm neu:
service apache2 restart
service php7.0-fpm restart
5 Test-Ionenwürfel
Lassen Sie uns überprüfen, ob der ioncube-Loader erfolgreich installiert wurde. Zuerst werde ich die Kommandozeile von PHP testen. Ausführen:
php -v
Ich habe die Zeile weiß markiert, die anzeigt, dass der Ioncube-Loader aktiviert wurde:
with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.2.0, Copyright (c) 2002-2018, by ionCube Ltd.
Wenn Sie das PHP einer Website testen möchten, erstellen Sie eine „info.php“-Datei mit diesem Inhalt:
<?php
phpinfo();
?>
Und öffnen Sie die URL in einem Webbrowser. Sie können ioncube in der Ausgabe von phpinfo() sehen:
6 Links
- CentOS
- Debian
- Ubuntu
- Ionenwürfel