Basta criar seu primeiro <VirtualHost>
que diga não a qualquer solicitação.
<VirtualHost *:80>
ServerName i-dont-want-your-requests
Order allow,deny
Deny from all
</VirtualHost>
Esta documentação diz que
Due to the fact that www.example1.com is first in the configuration file,
it has the highest priority and can be seen as the default or primary server.
That means that if a request is received that does not match one of the specified
ServerName directives, it will be served by this first VirtualHost.
Como posso desabilitar isso, não quero que o apache sirva nenhum arquivo se algum dos hosts virtuais habilitados não corresponderem?
Para fazer uso do tráfego de qualquer maneira, você pode apenas criar uma página que diga ao usuário que não há nada para ver aqui e ele deve ter entrado no (errado) domínio errado.
Talvez forneça alguns domínios possíveis que o usuário poderia estar procurando ou apenas exibir alguns anúncios.
Seria uma pena deixar o tráfego desperdiçado, sem mencionar a diferença que tal página faria na facilidade de uso, em oposição a uma simples página "Acesso negado".
Tags virtualhost apache-2.2