Cách cài đặt Ioncube Loader trên CentOS, Debian và Ubuntu

theanh

Administrator
Nhân viên
Ioncube loader là một module PHP để tải các tệp được bảo vệ bằng phần mềm Ioncube Encoder. Ioncube thường được các nhà cung cấp phần mềm PHP thương mại sử dụng để bảo vệ phần mềm của họ, vì vậy, rất có thể bạn sẽ gặp phải một tệp được mã hóa Ioncube sớm hay muộn khi bạn cài đặt tiện ích mở rộng cho phần mềm CMS hoặc Shop được viết bằng PHP. Trong hướng dẫn này, tôi sẽ giải thích chi tiết về việc cài đặt module Ioncube loader cho CentOS, Debian và Ubuntu.

1 Điều kiện tiên quyết​

Máy chủ của bạn phải cài đặt ngôn ngữ lập trình PHP. Tôi sẽ sử dụng Trình soạn thảo dòng lệnh Nano và ứng dụng tải xuống dòng lệnh wget. Nano và Wget được cài đặt trên hầu hết các máy chủ, trong trường hợp chúng bị thiếu trên máy chủ của bạn, hãy cài đặt chúng bằng apt / yum:

CentOS​

Mã:
yum install nano wget

Debian và Ubuntu​

Mã:
apt-get install nano wget

2 Tải xuống Ioncube Loader​

Có thể tải xuống các tệp trình tải Ioncube miễn phí từ Ioncube Inc. Chúng tồn tại cho các hệ thống Linux 32Bit và 64Bit.

Trong bước đầu tiên, tôi sẽ kiểm tra xem máy chủ là hệ thống 32Bit hay 64Bit. Chạy:
Mã:
uname -a
Đầu ra sẽ tương tự như sau:



Khi văn bản chứa "x86_64" thì máy chủ chạy Kerbel Linux 64Bit. Nếu không, đó là Kernel 32Bit (i386). Hầu hết các máy chủ Linux hiện tại đều chạy Kernel 64Bit.

Tải Loader ở định dạng tar.gz vào thư mục /tmp và giải nén:

Đối với Linux 64Bit x86_64:
Mã:
cd /tmp
wgethttp://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xfz ioncube_loaders_lin_x86-64.tar.gz
Đối với Linux 32Bit i386:
Mã:
cd /tmp
wgethttp://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
tar xfz ioncube_loaders_lin_x86.tar.gz
Các tệp được giải nén vào một thư mục có tên "ioncube".

3 Ioncube Loader nào là đúng?​

Khi bạn chạy "ls /tmp/ioncube" thì bạn sẽ thấy có nhiều tệp trình tải trong thư mục ioncube.



Các tệp có số tương ứng với phiên bản PHP mà chúng được tạo ra và cũng có phiên bản "_ts" (An toàn cho luồng) của mỗi trình tải. Chúng ta sẽ sử dụng phiên bản không có tính năng an toàn luồng ở đây.

Để tìm phiên bản php đã cài đặt, hãy chạy lệnh:
Mã:
php-v
Đầu ra sẽ tương tự như sau:



Đối với tác vụ này, chỉ có hai chữ số đầu tiên của số phiên bản trong dòng kết quả đầu tiên là quan trọng, trên máy chủ này, tôi sẽ chạy PHP 7.0. Chúng ta ghi lại số này vì chúng ta cần nó cho các bước tiếp theo.

Bây giờ là lúc tìm ra thư mục mở rộng của phiên bản PHP này ở đâu, hãy chạy lệnh sau để tìm tên thư mục:
Mã:
php -i | grep extension_dir
Đầu ra sẽ tương tự như đầu ra từ ảnh chụp màn hình này:



Tôi đã đánh dấu đường dẫn trong ảnh chụp màn hình, thư mục mở rộng trên máy chủ này là "/usr/lib/php/20151012". Tên thư mục sẽ khác nhau đối với từng phiên bản PHP và bản phân phối Linux, chỉ cần sử dụng tên bạn nhận được từ lệnh chứ không phải tên tôi nhận được ở đây.

Không sao chép trình tải ioncube cho phiên bản PHP 7.0 của chúng tôi vào thư mục mở rộng /usr/lib/php/20151012:
Mã:
cp/tmp/ioncube/ioncube_loader_lin_7.0.so/usr/lib/php/20151012/
Thay thế "7.0" ở trên bằng phiên bản PHP của bạn và "/usr/lib/php/20151012" bằng thư mục mở rộng của phiên bản PHP của bạn.

4 Cấu hình PHP cho Trình tải Ioncube​

Bước cấu hình tiếp theo hơi khác một chút đối với Centos và Debian/Ubuntu. Chúng ta sẽ phải thêm một dòng:
Mã:
zend_extension =/usr/lib/php/20151012/ioncube_loader_lin_7.0.so
là dòng đầu tiên vào tệp php.ini của hệ thống. Một lần nữa, đường dẫn trên chứa thư mục tiện ích mở rộng "/usr/lib/php/20151012" và phiên bản PHP "7.0", hãy đảm bảo rằng bạn thay thế chúng để phù hợp với thiết lập hệ thống của mình.Tôi sẽ bắt đầu bằng hướng dẫn dành cho CentOS.

4.1 Cấu hình Ioncube loader trên CentOS​

Centos chỉ có một tệp php.ini trung tâm mà chúng ta phải thêm ioncubeloader vào. Mở tệp /etc/php.ini bằng trình soạn thảo:
Mã:
nano/etc/php.ini
và thêm "zend_extension =" cùng với đường dẫn đến ioncubeloader làm dòng đầu tiên trong tệp.
Mã:
zend_extension =/usr/lib/php/20151012/ioncube_loader_lin_7.0.so
Sau đó lưu tệp và khởi động lại máy chủ web Apache:
Mã:
service httpd restart
service php-fpm restart

4.2 Cấu hình trình tải Ioncube trên Debian và Ubuntu​

Debian và Ubuntu sử dụng các tệp php.ini riêng biệt cho chế độ PHP CLI (Dòng lệnh), CGI, Apache2 và FPM. Đường dẫn tệp là:
  • /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
Một tệp phải được chỉnh sửa để bật trình nạp ioncube vào chế độ PHP tương ứng. Bạn có thể tự do bỏ qua các tệp cho các chế độ PHP mà bạn không sử dụng hoặc nơi bạn không cần hỗ trợ trình nạp ioncube. Cũng có thể bạn không có tất cả các tệp trên máy chủ của mình, vì vậy đừng lo lắng khi bạn không thể tìm thấy một trong các tệp.

Apache mod_php
Mã:
nano /etc/php/7.0/apache2/php.ini
Dòng lệnh PHP (CLI)
Mã:
nano /etc/php/7.0/cli/php.ini
PHP CGI (được sử dụng cho chế độ CGI và Fast_CGI)
Mã:
nano /etc/php/7.0/cgi/php.ini
PHP FPM
Mã:
nano /etc/php/7.0/fpm/php.ini
và thêm "zend_extension =" cùng với đường dẫn vào ioncubeloader làm dòng đầu tiên trong tệp(các tệp).
Mã:
zend_extension =/usr/lib/php/20151012/ioncube_loader_lin_7.0.so
Sau đó lưu tệp(các tệp) và khởi động lại máy chủ web Apache và php-fpm:
Mã:
service apache2 restart
service php7.0-fpm restart

5 Kiểm tra Ioncube​

Hãy kiểm tra xem ioncube loader đã được cài đặt thành công chưa. Đầu tiên, tôi sẽ kiểm tra dòng lệnh PHP. Chạy:
Mã:
php -v


Tôi đã đánh dấu dòng màu trắng cho biết trình tải ioncube đã được bật:
Mã:
với Trình tải PHP ionCube (đã bật) + Bảo vệ chống xâm nhập từ ioncube24.com (chưa cấu hình) v10.2.0, Bản quyền (c) 2002-2018, của ionCube Ltd.
Nếu bạn muốn kiểm tra PHP của một trang web, hãy tạo một "tệp info.php với nội dung sau:
Mã:
Và mở URL trong trình duyệt web. Bạn sẽ có thể thấy ioncube trong đầu ra phpinfo():


6 Liên kết​

 
Back
Bên trên