HTTP 헤더에서 Apache 및 PHP 버전을 숨기는 방법

HTTP 헤더에서 Apache 및 PHP 버전을 숨기는 방법

2022-10-18 last update

6 minutes reading Apache Version Apache apache security php security PHP Version
웹 사이트 보안은 웹 호스팅의 가장 중요하고 중요한 구성 요소입니다. 사이버 공격은 애플리케이션을 손상시킬 수 있습니다. 이 튜토리얼은 최종 사용자에게 Apache/PHP 버전 세부 정보를 숨기는 데 도움이 됩니다. 변경하기 전에 먼저 아래 명령을 사용하여 HTTP 헤더를 보내는 정보 서버를 확인하십시오.

1단계 – 헤더 세부 정보 확인

curl 또는 wget 명령을 사용하여 명령줄을 통해 웹 사이트의 헤드 세부 정보를 가져올 수 있습니다.
wget --server-response --spider http://example.com/index.php
위의 세부 사항을 기록하고 나중에 비교할 수 있도록 보관하십시오. 세부 정보를 숨기는 단계를 따르십시오.

2단계 – Apache 서버 세부 정보 숨기기

먼저 시스템에서 Apache 구성 파일을 찾아 편집합니다. Apache 구성 파일은 다음 위치에서 찾을 수 있습니다.구성 파일
  • CentOS/Fedora/Redhat –/etc/httpd/conf/httpd.conf
  • Ubuntu/Debian/Linuxmint –/etc/apache2/conf-enabled/security.conf
  • ServerTokens 지시문 설정

    ServerTokens 지시문은 클라이언트로 다시 전송되는 서버 응답 헤더 필드에 일반 OS 세부 정보가 포함되는지 여부를 제어합니다. 사용할 때 응답 값으로 다음 옵션을 구성할 수 있습니다. 서버에 따라 다음 중 하나를 사용하십시오.
    ServerTokens Prod    # Server sends (e.g.): Server: Apache
    
    click here ServerTockens 지시문과 함께 사용할 추가 옵션에 대한 정보

    ServerSignature 지시문 설정

    ServerSignature는 서버 생성 문서의 바닥글을 구성합니다. Apache 구성 파일을 편집하고 ServerSignature 지시문을 검색하여 업데이트하십시오. Read More about ServerSignature
    ServerSignature  Off
    

    3단계 – PHP 버전 숨기기

    기본적으로 PHP 설치는 HTTP 헤더 내에 PHP 버전을 포함하는 PHP가 서버에 설치된 세계에 노출됩니다(예: X-Powered-By: PHP/7.2.0- 2+ubuntu16.04.1+deb.sury.org+2). Read More 구성 파일-
  • CentOS/Fedora/Redhat –/etc/php.ini
  • Ubuntu/Debian/Linuxmint –/etc/php/7.2/apache2/php.ini
  • 헤더에서 이 값을 숨기려면 php.ini를 편집하고 아래 지시문을 Off
    expose_php = Off
    
    로 업데이트합니다.

    4단계 – Apache 다시 로드 및 설정 확인

    Apache 서버를 다음으로 다시 시작합니다. 변경 사항을 다시 로드합니다.
    sudo sytemctl restart httpd.service        ## Redhat systems 
    sudo sytemctl restart apache2.service      ## Debian systems 
    
    서버에서 필요한 변경을 수행했습니다. 이제 모든 변경을 수행한 후 아래 명령을 다시 사용하고 출력을 이전 결과와 비교합니다.
    wget --server-response --spider http://example.com/index.php