PHP의 취약점을 패치하고 보안에 관련한 추가 기능을 제공하는 Suhosin(수호신)은 PHP 5.X 버전 같은 경우 코어 취약점을 패치하는 버전이 존재하지만 PHP 7.X 버전은 코어 패치가 없고 extension 버전만 제공하고 있습니다.
우분투 같은 경우 레포지토리를 등록한 다음 패키지로 설치하는 방법이 있는데 16.04 이전 버전만 제공하며 이후 버전 또는 CentOS는 다음과 같이 컴파일 후 설치할 수 있습니다.
튜토리얼 환경 : 우분투 16.04 PHP 7.1 FPM
PHP7 Suhosin 컴파일 설치하기
apt install php7.1-dev gcc make autoconf libc-dev pkg-config
설치 전 컴파일을 위해 컴파일 도구 및 php-dev 패키지가 필요합니다. 위 명령어를 통해 설치합니다.
git clone https://github.com/sektioneins/suhosin7 cd suhosin7 phpize ./configure make make install Installing shared extensions: /usr/lib/php/20160303/
github에서 suhosin7 소스를 다운로드 받은 다음 위 명령어를 통해 컴파일 설치합니다.
echo extension=suhosin7.so >> /etc/php/7.1/mods-available/suhosin.ini ln -s /etc/php/7.1/mods-available/suhosin.ini /etc/php/7.1/fpm/conf.d/10-suhosin.ini service php7.1-fpm restart
컴파일한 수호신 모듈을 불러오는 ini 파일을 생성한 다음 심볼릭 링크를 건 후 php-fpm을 재시작합니다.
phpinfo(); 페이지에서 설치가 잘 되었는지 확인하면 되겠습니다.