O Apache pode ser configurado com um host virtual que não responde?

1

Cenário: example.com, a.example.com e b.example.com resolvem tudo para o IP 1.2.3.4. O Apache 2.4.29 no Ubuntu 18.04.1 é configurado com vários hosts virtuais (possivelmente em portas não padrão); algo como:

<VirtualHost *:81>
  ServerName example.com
  ...
</VirtualHost>

<VirtualHost *:81>
  ServerName a.example.com
  DocumentRoot /var/www/a
  ...
</VirtualHost>

<VirtualHost *:81>
  ServerName b.example.com
  DocumentRoot /var/www/b
  ...
</VirtualHost>

O que eu gostaria é que os pedidos para a.example.com e b.example.com funcionem como hosts virtuais normais, mas para solicitações de example.com (ou para 1.2.3.4) para não receber nenhuma resposta em tudo - não uma resposta 404, nem uma resposta 5xx, simplesmente nada.

O objetivo é fazer com que os hosts virtuais funcionem normalmente, mas para qualquer coisa que esteja investigando o domínio ou o endereço IP para nem mesmo estar ciente de que um servidor HTTP está sendo executado nesse IP.

Eu examinei os documentos do Apache para a diretiva VirtualHost, mas não encontrei nada. Eu também olhei para a RFC 7230 e não vi nada óbvio que tornaria esse cenário impossível - é claro que uma sessão TCP precisa ser estabelecida antes que o servidor saiba o que o cliente está solicitando, então um invasor saberia que alguma coisa está escutando naquela porta, mas até onde eu poderia dizer eu não vi nada no protocolo em si que faz o servidor revelar que está escutando HTTP antes que o cliente faça a requisição.

Não tenho certeza de que o que estou descrevendo é possível e, mesmo que seja, não tenho certeza de quanto valioso seria. Entrada apreciada.

    
por ras 21.09.2018 / 22:03

1 resposta

0

Talvez algo nos moldes de

RewriteEngine on
RewriteRule ^ - [L,redirect=410]

Coloque isso no seu host virtual padrão e cada solicitação deve retornar um erro 410.

    
por 22.09.2018 / 08:28