Excluir pasta da listagem de diretórios no Apache2

Excluir pasta da listagem de diretórios no Apache2

Eu sei que posso desabilitar listagens de diretórios com

Options -Indexes

em um <Location>ou <Directory>, mas quero que a listagem aconteça. O problema é que estou hospedando arquivos no meu servidor. Mas também tenho uma interface web para pihole rodando lá. Então configurei uma regra que proíbe /admine /piholepode ser acessado exceto pela rede local:

<Location ~ "/(pihole|admin)">
        Order deny,allow
        Deny from all
        Allow from 127.0.0.1
        Allow from 192.168.1
</Location>

Isso também remove as entradas da listagem de diretórios. No entanto, ele gera uma entrada de acesso negado sempre que error.logalguém chama a listagem do diretório remotamente:

[Fri Jan 24 18:13:00.582417 2020] [access_compat:error] [pid 1633] [client XX.XX.XX.XX:60484] AH01797: client denied by server configuration: /var/www/html/pihole/

Isso, por sua vez, perturba o fail2ban e proíbe as pessoas apenas por olharem a listagem que deveriam ter permissão para visualizar.

Então, como faço para corrigir isso?

Minha ideia era simplesmente excluir as duas entradas da listagem para começar. Mas não sei como fazer isso.
eu tentei

<Location ~ "/(pihole|admin)">
    Options -Indexes
</Location>

Mas ainda gera entradas de log de acesso negado e me proíbe após 5 tentativas.

Responder1

Resolvi o problema configurando 2 hosts virtuais. um para hospedagem de arquivos e outro para pihole. Eu os mantenho separados com duas entradas de DNS diferentes. É uma solução alternativa para a pergunta e realmente não a responde, mas é uma solução com a qual estou mais satisfeito do que pedi.

informação relacionada