Recebi a tarefa de criar um inventário de todos os sites/webapps hospedados em nossa infraestrutura (alguns milhares de sites hospedados em cerca de 120 VMs Linux). A maioria dos sites é servida pelo Apache (httpd 2.4), mas também são usados Apache 2.2, Nginx, Tomcat e outros servidores web. Como esta é uma tarefa enorme, não quero gastar mais tempo do que o necessário. Então, estou me perguntando se alguém pode me indicar um script, ferramenta, função Ansible existente ou algo parecido que analise as configurações do servidor web para reunir todos os vhosts configurados. Estou ciente de que existem fuzzers como DirBuster ou VHostScan que os pentesters usam, mas como tenho acesso shell nesses servidores da web, isso parece um caminho ineficiente (e provavelmente impreciso).
Responder1
Para Apache httpd você pode executar o seguinte comando:
Isso mostra as configurações analisadas no arquivo de configuração (que atualmente mostra apenas as configurações do virtualhost, mas é exatamente isso que você parece precisar).
Isso retorna algo como:
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