2015년 6월 13일 토요일

ioncube 설치

php 5.6 에 ioncube 설치

  • download : http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
  • 압축해재 후 이동
    • tar -xvf ./ioncube_loaders_lin_x86_64.tar.gz
    • mv ioncube /usr/local
  • php.ini 파일 수정 
    • 압축 해제한 폴더내에 각 php 버전별 so 파일 존재한다. 맞는 버전으로 load
    • [ioncube]
      zend_extension_ts=/usr/local/ioncube/ioncube_loader_lin_5.6_ts.so
      zend_extension=/usr/local/ioncube/ioncube_loader_lin_5.6.so
  • apache 재시작 및 확인
    • php -v 

 

Zend guard loader 설치

php 5.6 에 zend guard loader 설치

  • download : http://www.zend.com/en/products/loader/downloads#Linux 에서 버전에 맞는 파일 다운로드.
  • 수행 명령:
    • cp ZendGuardLoader.so /usr/lib64/
  • /usr/local/apache/conf/php.ini 수정
    • [Zend.loader]
      zend_extension=/usr/lib64/ZendGuardLoader.so
      zend_loader.enable = 1
      zend_loader.disable_licensing = 0
      zend_loader.obfuscation_level_support = 3
  • apache 재실행 및 php -v 로 확인 아래의 내용이 나오면 정상 설치완료.
        


  •  truble shooting.
    • 만약 php -v 로 확인시 symbol ~~ global 어쩌구 하면서 안될경우 apache 설치시 ./configure 파라미터중 --with-mpm=prefork 를 안넣고 설치해서 발생하는 오류다.

modsecurity 설치

apache 2.4.12 에 modsecurity 2.9.0설치

  • download : https://www.modsecurity.org/tarball/2.9.0/modsecurity-2.9.0.tar.gz
  • 수행 명령 :
    • yum install  expat expat-devel
    • ./configure --with-apxs=/usr/local/apache/bin/apxs 
    • make
    • make install
  • apache 설정파일 변경
    • vi /usr/local/apache/conf/httpd.conf
      • LoadFile /usr/lib64/libxml2.so 
      • LoadFile /usr/lib64/liblua-5.1.so
      • LoadModule security2_module modules/mod_security2.so
         
  • rule 파일 
    • mkdir /usr/local/apache/conf/modsecurity  # rule 파일 저장위치 
    • vi /usr/local/apache/conf/httpd.conf
      • Include conf/modsecurity/*.conf
    • /usr/local/apache/conf/modsecurity/{filename}.conf 로 rule 파일 생성 및 apache 재 기동

CenOS 6.6에 apache 2.4.12, php 5.6 소스 설치

apache 2.4.12
php 5.6 을 소스 설치 하였으며
의존성 관련 설치도 순서대로 다 나열하겠다.

apache 설치시 필요한 apr, apr-util, pcre 는 yum 으로 설치해도 가능하지만
아직 yum 의 apr, apr-util 버전이 apache 2.4.12 설치에 필요한 버전을 충족시키지 못한다.

이 글을 작성하는 현재는 yum 으로 설치한 apr, apr-util 은 버전의 문제가 있어 소스 설치 하였다.

설치 순서는 아래와 같다.
- apr 
- apr-util
- pcre
- apache
- php



  1. apr 
    • download : http://mirror.apache-kr.org//apr/apr-1.5.2.tar.gz
    • 수행 명령 : 
      • yum install gcc
      • ./configure --prefix=/usr/local/apr 
      • make
      • make install  
    • configure 설명 : 
      • prefix : 설치할 위치
     
  2. apr-util 
      •  download : http://mirror.apache-kr.org//apr/apr-util-1.5.4.tar.gz
      • 수행명령 : 
        • ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
        • make
        • make install
      • configure 설명 :
        • prefix : 설치할 위치
        • with-apr : 참조할 apr 의 설치 위치

  3. pcre 
    • 수행명령 :
      • yum install pcre pcre-devel
     
  4. apache
    • download : http://apache.tt.co.kr//httpd/httpd-2.4.12.tar.gz
    • 수행명령 :
      • ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-module=so --enable-so --enable-mods-shared=all --with-mpm=prefork
      • make
      • make install
    • configure 설명
      • prefix : 설치할 위치
      • with-apr : 참조할 apr의 설치 위치
      • with-apr-util : 참조할 apr-util의 설치 위치
      • enable-moduel=so : module 로드 관련으로 보입니다.
      • enable-so : module 로드 관련으로 보입니다. 해당 파라미터가 없을경우 php 소스 설치시 오류가 발생
      • enable-mods-shared=all : 공유 모듈에 대한것으로 보입니다.
      • with-mpm=prefork : apache thread 관련으로 알고있는데 해당 파라미터가 없을경우 php 설치후 Zend guard loader 등의 설치시 php.ini에 등록해도 올라가질 않습니다.
    • 기타 : with-mpm-prefork 파라미터 누락시 php.ini 에 zend guard loader, ioncube 등을 올려도 php -v 로 확인시 오류 메세지가 발생됩니다.

  5. php
    • download : http://php.net/downloads.php
    • 수행명령 : 
      • yum install perl perl-devel
      • yum install libxml2 libxml2-devel
      • yum install gd gd-devel
      • ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/apache2/conf --with-curl --enable-calendar --enable-shmop --enable-ftp --enable-sockets --disable-cgi --with-gd --with-png-dir=/usr/lib --with-zlib-dir --with-jpeg-dir=/usr/lib --with-freetype-dir=/usr/local/freetype --with-iconv --enable-mbstring
      • make
      • make install
    • configure 설명 : 
      • prefix : 설치 위치
      • with-apxs2 :apache apxs 위치 
      • with-config-file-path : php.ini 파일을 위치시킬 위치
    • 기타 :configure 파라미터에 따라 우선적으로 설치해야할 의존성 패키지 들이 있습니다. configure 중 오류발생시 해당 오류에 맞는 패키지를 yum 으로 설치하면서 진행하면 이상 없이 진행이 가능합니다.


 다음은 해당 내용을 설치하며 남긴 동영상이다.