IonCube설치 및 테스트

| 2020년 12월 25일 | 0 Comments

1. IonCube Loader 소개

암호화로 인코딩된 PHP 소스를 읽어드릴 수 있도록 도와주 프로그램이다.

암호화된 PHP 파일들을 사용하기 위해 IonCube Loader 의 설치가 필요합니다. PHP의 웹 사이트에 실시간으로 악성코드를 차단하는 기능과 PHP 실행속도 증가를 추가로 제공하고 있습니다.

2. CentOS에서 IonCube Loader 설치

* 설치환경 (OS : Centos 7.8,apache : 2.4.6, php : 7.0.33)

* APMyum 설치를 기본으로 했습니다.

1) 먼저 apachephp가 설치되어 있는지 확인한다.

# php -v

# yum install -y php

2) Apachempm방식을 확인한다.

# httpd -V | grep -i mpm

# yum install -y httpd

ApacheMPM(다중처리 모듈)방식이 event, worker 경우 Ioncube가 작동하지 않아,

Server MPM을 확인해줘야한다.

Prefork 방식 : 한 자식프로세스당 하나의 쓰레드를 사용하는 방법

기본 사용 메모리가 worker보다 높으며 프로세스 간 메모리를 공유하지 않는 독립 형태이므로 안정적임.

아파치 컴파일시 옵션 추가하지 않을경우 기본으로 이 모듈로 동작합니다.


Worker
방식 : 한 자식프로세스당 여러개의 쓰레드를 사용하는 방법

기본 사용 메모리는 prefork보다 낮으며 쓰레드 간에 메모리를 서로 공유함.

동시접속자가 많은 사이트에 적합합니다.

Event 방식 : 한개 또는 고정된 프로세스만 생성하고 그 프로세스의 내부에서 비 동기 방식으로 효율적으로 작업을 처리한다.(속도가 가장 빠르다.)

*Server MPM 변경 방법

# vi /etc/httpd/conf.modules.d/00-mpm.conf

위 설정파일 안에서 사용하고 싶은 모듈을 주석을 해제해주고, 나머지는 주석처리해주면 된다.

2-1. Ioncube 설치파일 다운로드

1) https://www.ioncube.com/loaders.php에서 운영체제에 맞는 버전을 선택하여 다운로드 합니다.

# cd /usr/local/src

# wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

 

2) IonCube Loader 압축해제

# tar vxfz ioncube_loaders_lin_x86-64.tar.gz

3) 파일확인

# ls -l /usr/local/src/ioncube

 

22. php.ini 파일 설정

1) php.ini 파일에 [Zend] 구문을 추가해준다.

# vi /etc/php.ini

[zend]

zend_extension_ts=/usr/local/src/ioncube/ioncube_loader_lin_7.0.ts.so

zend_extension=/usr/local/src/ioncube/ioncube_loader_lin_7.0.so

위 구문을 맨 아래에 추가해다.

*주의점* 추가해주는 .ts.so.sophp 버전과 같아야한다.

( php = 5.6.17, IondCube = 5.6 )

 

2-3. IonCube Loader 확인

1) Apache 재시작

# systemctl restart httpd

2) IonCube 확인

# php -v

 

URLhttp://IP/phpinfo.php를 입력하고 사이트를 확인한다.

3. IonCube 테스트

3-1. 암호화 파일 만들기

1) 암호화할 파일 만들기

간단하게 “<?php phpinfo(); ?>” phpinfo.php파일을 만든다.

 

2)https://www.ioncube.com/login_page.php?c=jobs에서 회원가입을 한다.

Individual(개인) 선택한다.

사용하고 싶은 계정으로 생성

회원가입 후 로그인을 하면 다음과 같은 화면이 뜬다.

처음에 만들어놓은 phpinfo.php파일을 선택하고,

위와 같이 체크를 해준 다음 업로드를 하면 인코딩 파일이 생성된다.

*, Test encoding를 체크해주지 않으면 암호화는 더 어려워지지만 금액을 지불해야 다운받을 수 있다.

파일을 다운로드 한다.

3) 파일 확인

 

처음과 다르게 파일이 암호화된 것을 알 수 있다.

3-2. 암호화 파일로 페이지 띄우기

1) 먼저 IonCube가 없는 서버에서 암호화 파일을 이용해 페이지를 띄워보았다.

 

IonCube가 없어 설치를 해줘야 한다고 나타는다.

2) IonCube를 추가해준 서버에서 사이트를 띄워보았다.

 

정상적으로 페이지를 읽어보는것을 확인했다.

이상으로 IonCube_Loader의 설치 및 설정을 마치겠습니다. 감사합니다.

 

 

 

Category: 솔루션/IT기타

Avatar

About the Author ()