PHP 보안 · 2 min read · Oct 24, 2025

OpenSuSE 10.2에서 Suhosin으로 PHP5 강화하는 방법

OpenSuSE 10.2에서 Suhosin으로 PHP5 강화하는 방법

버전 1.0
저자: Falko Timme

이 튜토리얼은 OpenSuSE 10.2 서버에서 Suhosin으로 PHP5를 강화하는 방법을 보여줍니다. Suhosin 프로젝트 페이지에서: “Suhosin은 PHP 애플리케이션과 PHP 코어의 알려진 및 알려지지 않은 결함으로부터 서버와 사용자를 보호하기 위해 설계된 PHP 설치를 위한 고급 보호 시스템입니다. Suhosin은 독립적으로 사용하거나 조합하여 사용할 수 있는 두 개의 독립적인 부분으로 구성됩니다. 첫 번째 부분은 버퍼 오버플로우 또는 형식 문자열 취약점에 대한 몇 가지 저수준 보호를 구현하는 PHP 코어에 대한 작은 패치이며, 두 번째 부분은 모든 다른 보호를 구현하는 강력한 PHP 확장입니다.”

이 문서는 어떤 종류의 보증 없이 제공됩니다! 이것이 당신에게 작동할 것이라는 보증을 제공하지 않습니다!

1 사전 참고

저는 192.168.0.100 IP 주소를 가진 OpenSuSE 10.2 서버에서 이것을 테스트했습니다.

이 튜토리얼은 OpenSuSE 10.2에 PHP5가 설치되어 있다면 Suhosin을 설치하기 위해 해야 할 일이 없기 때문에 다소 비정형적입니다. OpenSuSE의 PHP5는 기본적으로 이미 Suhosin을 포함하고 있습니다. 어쨌든, 이 튜토리얼을 작성할 가치가 있다고 생각하는 이유는 “Suhosin을 설치하기 위해 무엇을 해야 합니까?”라는 질문에 답하기 때문입니다. - PHP5가 이미 설치되어 있다면 아무것도 필요 없습니다.

2 Apache2 및 PHP5 설치 (선택 사항)

(이 장은 이미 Apache2와 PHP5가 설치되어 있는 경우 선택 사항입니다 - PHP5에서 Suhosin이 활성화되어 있는지 확인하려면 다음 장으로 건너뛰십시오.)

서버에 Apache2와 PHP5가 설치되어 있지 않다면 지금 설치하십시오:

yast2 -i apache2 apache2-devel apache2-mod_perl apache2-mod_php5 apache2-prefork perl-HTML-Parser perl-HTML-Tagset perl-Tie-IxHash perl-URI perl-libwww-perl php5 php5-devel zlib zlib-devel

이제 시스템을 구성하여 부팅 시 Apache를 시작하도록 설정하십시오:

chkconfig --add apache2

그런 다음 Apache2를 시작하십시오:

/etc/init.d/apache2 start

이제 서버에 기본 기능을 갖춘 PHP5가 설치되었습니다. 특별한 PHP5 모듈이 필요하다면 YaST를 시작하고 PHP5 패키지를 검색할 수 있습니다:

yast2

소프트웨어 > 소프트웨어 관리로 이동하십시오:

그런 다음 검색 기능을 사용하여 php5를 검색하십시오:

그 후, 설치할 패키지를 선택할 수 있습니다:

또는 다음과 같이 명령줄에서 패키지를 설치할 수 있습니다:

yast2 -i php5-bcmath php5-bz2 php5-calendar php5-ctype php5-curl php5-dbase php5-dom php5-ftp php5-gd php5-gettext php5-gmp php5-iconv php5-imap php5-ldap php5-mbstring php5-mcrypt php5-mhash php5-mysql php5-ncurses php5-odbc php5-openssl php5-pcntl php5-pgsql php5-posix php5-shmop php5-snmp php5-soap php5-sockets php5-sqlite php5-sysvsem php5-tokenizer php5-wddx php5-xmlrpc php5-xsl php5-zlib php5-exif php5-fastcgi php5-pear php5-sysvmsg php5-sysvshm

그런 다음 Apache를 재시작하십시오:

/etc/init.d/apache2 restart

3 PHP5 설치에 대한 세부 정보 얻기

Apache 설치에서 가상 호스트를 이미 생성하지 않았다면 기본 웹 사이트의 문서 루트는 /srv/www/htdocs입니다. 이제 해당 디렉토리에 작은 PHP 파일(info.php)을 생성하고(가상 호스트를 생성한 경우 PHP가 활성화된 가상 호스트 중 하나에 배치하십시오) 브라우저에서 호출합니다. 이 파일은 설치된 PHP 버전과 같은 PHP 설치에 대한 유용한 세부 정보를 많이 표시합니다.

vi /srv/www/htdocs/info.php

| |

이제 브라우저에서 해당 파일을 호출합니다(예: http://192.168.0.100/info.php):

보시다시피, 우리의 PHP 버전은 5.2.0입니다.

모든 것이 잘 진행되었다면, 이제 페이지의 두 곳에서 Suhosin이 언급되는 것을 볼 수 있습니다:

그게 다입니다. 원하신다면 Suhosin을 구성할 수 있습니다(자세한 내용은 http://www.hardened-php.net/suhosin/configuration.html 참조), 하지만 Suhosin은 기본 구성으로 즉시 작동하므로 자신이 무엇을 하고 있는지 확실히 아는 것이 중요합니다.

4 링크

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.