ionCube یک مجموعه نرم افزار تجاری شامل یک PHP encoder, package foundry, bundler، یک سیستم real time برای شناسایی نفوذ در سایت و نرم افزارهای گزارش error و یک loader میباشد.
PHP encoder اپلیکیشنی برای محافظت از نرم افزار PHP است، که برای امن کردن، رمزگذاری و لایسنس دهی به سورس کد PHP استفاده میشود. ionCube loader یک extension است که برای load کردن فایل های PHP به صورت محافظت شده و کدگذاری شده به واسطه PHP encoder، مورد استفاده قرار میگیرد. این ابزار اکثرا در اپلیکیشن های نرم افزاری تجاری مورد استفاده قرار میگیرد که به منظور محافظت از سورس کدهایشان و جلوگیری از قابل مشاهده بودنشان استفاده میشود.
همچنین توصیه میشود مطالعه کنید :
نحوه نصب ionCube Loader در Debian و Ubuntu (به زودی)
در این مقاله ما به شما نحوه نصب و کانفیگ ionCube Loader به همراه PHP را در توزیع های CentOS 7 و RHEL 7 نمایش خواهیم داد.
پیش نیاز :
روی سرور شما باید وب سروری مانند Apache یا Nginx به همراه PHP نصب باشد، اگر شما روی سیستم تان وب سرور و PHP ندارید شما میتوانید آنها را با استفاده از دستور yum همانند زیر نصب کنید.
مرحله 1 : نصب وب سرور Apache یا Nginx به همراه PHP
1 - اگر روی سیستم تان آپاچی یا انجین ایکس به همراه پی اچ پی نصب باشد میتوانید به مرحله 2 بروید، در غیر اینصورت باید از دستور yum زیر برای نصب آنها استفاده کنید.
2 - بعد از نصب آپاچی یا انجین ایکس و PHP روی سیستم تان، سرویس وب سرور را start کنید و از enable بودن آن برای auto start شدن آن به هنگام boot سیستم با استفاده از دستور زیر مطمئن شوید.
مرحله 2 : دانلود IonCube Loader
3 - به وب سایت ioncube رفته و فایل های نصب را دانلود کنید، (به دلیل فیلتر شدن ip های اینران، برای وارد شدن به این وب سایت از فیلترشکن استفاده کنید) اما قبل از آن ابتدا شما باید با استفاده از دستور زیر بررسی کنید که آیا سیستم تان تحت معماری 64 بیت یا 32 بیت در حال اجرا میباشد.
خروجی بالا واضحا نمایش میدهد که سیستم عامل شما تحت معماری 64 بیت در حال اجرا میباشد.
با توجه به معماری سیستم لینوکس خود فایل های ionloader مناسب را با استفاده از دستور wget زیر در پوشه /tmp/ دانلود کنید.
4 - سپس فایل های دانلود شده را با استفاده از دستور tar آنرا unzip کنید، سپس به پوشه unzip شده وارد شوید و برای لیست کردن فایل های ioncube loader برای ورژن های مختلف PHP دستور ls را اجرا کنید.
مرحله 3 : نصب ionCube Loader برای PHP
5 - فایل های متفاوتی از ionCube Loader برای ورژن های گوناگون PHP وجود خواهند داشت. شما نیاز دارید که ioncube loader درست و مناسب را برای ورژن PHP نصب شده روی سیستم تان انتخاب کنید. برای دانستن ورژن PHP نصب شده روی سرور دستور زیر را اجرا کنید.
خرجی بالا به وضوح نشان میدهد که سیستم از PHP 7.2.17 استفاده میکند، که البته در سرور شما باید ورژن متفاوتی موجود باشد.
6 - سپس، مسیر پوشه extension برای PHP 7.2 را پیدا کنید که در حقیقت مکانیست که فایل ioncube loader در آن نصب خواهد شد. از خروجی دستور زیر مشخص است که مسیر /usr/lib64/php/modules میباشد.
7 - سپس نیاز داریم که ioncube loader را برای PHP 7.2 به دایرکتوری extension کپی کنیم. (/usr/lib64/php/modules).
نکته : مطمئن شوید که ورژن PHP و مسیر extension را در دستور بالا با توجه به تنظیمات سیستم خود به درستی جایگزین کرده باشید.
مرحله 4 : کانفیگ ionCube Loader برای PHP
8 - اکنون نیاز داریم که ioncube loader را برای کار کردن با PHP در فایل php.ini کانفیگ کنیم.
سپس خط زیر را به عنوان اولین خط به php.ini اضافه میکنیم.
نکته : مطمئن شوید که ورژن PHP و مسیر extension را در دستور بالا با توجه به تنظیمات سیستم خود به درستی جایگزین کرده باشید.
9 - سپس فایل را ذخیره و از آن خارج شوید. اکنون نیاز هست که به منظور اعمال تغییرات مربوط به ionCube Loader، وب سرور آپاچی یا انجین ایکس را restart کنیم.
مرحله 5 : تست کردن ionCube Loader
10 - برای تست کردن این که آیا ionCube Loader اکنون نصب و به درستی کانفیگ شده یک بار دیگر ورژن php خود را چک کنید. اکنون شما باید قادر باشید همانند دستور زیر پیغامی را ببینید که نشان میدهد php به همراه ionCube extension (وضعیت آن باید enabled باشد) نصب و کانفیگ شده است.
خروجی بالا تایید میکند که اکنون PHP به همراه ionCube Loader لود و enabled شده است.
ionCube Loader یک PHP extension برای load کردن امن و کدگذاری شده فایل ها با استفاده از PHP encoder میباشد. ما امیدواریم که همه چیز مربوط به این پست در پیاده سازی شما به درستی کار کند.
PHP encoder اپلیکیشنی برای محافظت از نرم افزار PHP است، که برای امن کردن، رمزگذاری و لایسنس دهی به سورس کد PHP استفاده میشود. ionCube loader یک extension است که برای load کردن فایل های PHP به صورت محافظت شده و کدگذاری شده به واسطه PHP encoder، مورد استفاده قرار میگیرد. این ابزار اکثرا در اپلیکیشن های نرم افزاری تجاری مورد استفاده قرار میگیرد که به منظور محافظت از سورس کدهایشان و جلوگیری از قابل مشاهده بودنشان استفاده میشود.
همچنین توصیه میشود مطالعه کنید :
نحوه نصب ionCube Loader در Debian و Ubuntu (به زودی)
در این مقاله ما به شما نحوه نصب و کانفیگ ionCube Loader به همراه PHP را در توزیع های CentOS 7 و RHEL 7 نمایش خواهیم داد.
پیش نیاز :
روی سرور شما باید وب سروری مانند Apache یا Nginx به همراه PHP نصب باشد، اگر شما روی سیستم تان وب سرور و PHP ندارید شما میتوانید آنها را با استفاده از دستور yum همانند زیر نصب کنید.
مرحله 1 : نصب وب سرور Apache یا Nginx به همراه PHP
1 - اگر روی سیستم تان آپاچی یا انجین ایکس به همراه پی اچ پی نصب باشد میتوانید به مرحله 2 بروید، در غیر اینصورت باید از دستور yum زیر برای نصب آنها استفاده کنید.
کد PHP:
-------------------- Install Apache with PHP --------------------
# yum install httpd php php-cli php-mysql
-------------------- Install Nginx with PHP --------------------
# yum install nginx php php-fpm php-cli php-mysql
کد PHP:
-------------------- Start Apache Web Server --------------------
# systemctl start httpd
# systemctl enable httpd
-------------------- Start Nginx + PHP-FPM Server --------------------
# systemctl start nginx
# systemctl enable nginx
# systemctl start php-fpm
# systemctl enable php-fpm
مرحله 2 : دانلود IonCube Loader
3 - به وب سایت ioncube رفته و فایل های نصب را دانلود کنید، (به دلیل فیلتر شدن ip های اینران، برای وارد شدن به این وب سایت از فیلترشکن استفاده کنید) اما قبل از آن ابتدا شما باید با استفاده از دستور زیر بررسی کنید که آیا سیستم تان تحت معماری 64 بیت یا 32 بیت در حال اجرا میباشد.
کد PHP:
# uname -a
Linux hosting 3.10.0-957.10.1.el7.x86_64 #1 SMP Mon Mar 18 15:06:45 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
با توجه به معماری سیستم لینوکس خود فایل های ionloader مناسب را با استفاده از دستور wget زیر در پوشه /tmp/ دانلود کنید.
کد PHP:
-------------------- 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
کد PHP:
# tar -xvf ioncube_loaders_lin_x86*
# cd ioncube/
$ ls -l
مرحله 3 : نصب ionCube Loader برای PHP
5 - فایل های متفاوتی از ionCube Loader برای ورژن های گوناگون PHP وجود خواهند داشت. شما نیاز دارید که ioncube loader درست و مناسب را برای ورژن PHP نصب شده روی سیستم تان انتخاب کنید. برای دانستن ورژن PHP نصب شده روی سرور دستور زیر را اجرا کنید.
کد PHP:
# php -v
PHP 7.2.17 (cli) (built: Apr 3 2019 10:02:16) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
6 - سپس، مسیر پوشه extension برای PHP 7.2 را پیدا کنید که در حقیقت مکانیست که فایل ioncube loader در آن نصب خواهد شد. از خروجی دستور زیر مشخص است که مسیر /usr/lib64/php/modules میباشد.
کد PHP:
# php -i | grep extension_dir
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules
کد PHP:
# cp ioncube_loader_lin_7.2.so /usr/lib64/php/modules/
مرحله 4 : کانفیگ ionCube Loader برای PHP
8 - اکنون نیاز داریم که ioncube loader را برای کار کردن با PHP در فایل php.ini کانفیگ کنیم.
کد PHP:
# vim /etc/php.ini
کد PHP:
zend_extension = /usr/lib64/php/modules/ioncube_loader_lin_5.4.so
نکته : مطمئن شوید که ورژن PHP و مسیر extension را در دستور بالا با توجه به تنظیمات سیستم خود به درستی جایگزین کرده باشید.
9 - سپس فایل را ذخیره و از آن خارج شوید. اکنون نیاز هست که به منظور اعمال تغییرات مربوط به ionCube Loader، وب سرور آپاچی یا انجین ایکس را restart کنیم.
کد PHP:
-------------------- Start Apache Web Server --------------------
# systemctl restart httpd
-------------------- Start Nginx + PHP-FPM Server --------------------
# systemctl restart nginx
# systemctl restart php-fpm
مرحله 5 : تست کردن ionCube Loader
10 - برای تست کردن این که آیا ionCube Loader اکنون نصب و به درستی کانفیگ شده یک بار دیگر ورژن php خود را چک کنید. اکنون شما باید قادر باشید همانند دستور زیر پیغامی را ببینید که نشان میدهد php به همراه ionCube extension (وضعیت آن باید enabled باشد) نصب و کانفیگ شده است.
کد PHP:
# php -v
خروجی بالا تایید میکند که اکنون PHP به همراه ionCube Loader لود و enabled شده است.
ionCube Loader یک PHP extension برای load کردن امن و کدگذاری شده فایل ها با استفاده از PHP encoder میباشد. ما امیدواریم که همه چیز مربوط به این پست در پیاده سازی شما به درستی کار کند.