여러 웹 서버에 걸쳐 모든 가상 호스트의 인벤토리

여러 웹 서버에 걸쳐 모든 가상 호스트의 인벤토리

저는 우리 인프라(약 120개의 Linux VM에서 호스팅되는 수천 개의 사이트)에서 호스팅되는 모든 웹사이트/웹앱의 인벤토리를 생성하는 임무를 맡았습니다. 대부분의 사이트는 Apache(httpd 2.4)에서 제공되지만 Apache 2.2, Nginx, Tomcat 및 기타 웹 서버도 사용됩니다. 이것은 엄청난 작업이기 때문에 필요 이상으로 많은 시간을 소비하고 싶지 않습니다. 그래서 누군가 구성된 모든 가상 호스트를 수집하기 위해 웹 서버 구성을 구문 분석하는 기존 스크립트, 도구, Ansible 역할 또는 이와 유사한 것을 알려줄 수 있는지 궁금합니다. 나는 침투 테스터가 사용하는 DirBuster 또는 VHostScan과 같은 fuzzer가 있다는 것을 알고 있지만 해당 웹 서버에 대한 셸 액세스 권한이 있기 때문에 이것은 비효율적이며 아마도 부정확한 방법처럼 보입니다.

답변1

Apache httpd의 경우 다음 명령을 실행할 수 있습니다.

httpd -S

이는 구성 파일에서 구문 분석된 설정을 보여줍니다(현재는 가상 호스트 설정만 표시하지만 이것이 바로 필요한 것으로 보입니다).

이는 다음과 같은 내용을 반환합니다.

VirtualHost configuration:
*:80                   is a NameVirtualHost
         default server www.example.com (/etc/httpd/conf.d/www.example.com.conf:19)
         port 80 namevhost www.example.com (/etc/httpd/conf.d/www.example.com.conf:19)
                 alias example.com
                 alias server.example.com
         port 80 namevhost www.example.co.uk(/etc/httpd/conf.d/www.example.co.uk.conf:1)
                 alias example.co.uk

관련 정보