Proteger o manipulador de status do servidor apache2 por senha

2

No meu servidor apache2, acesso /server-status para verificar meu status atual do servidor web. Descobri que mods-available / status.conf contém os snippets responsáveis por mostrar o status.

<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from localhost ip6-localhost
</Location>

A minha pergunta é como posso disponibilizá-lo não apenas para o host local, mas também para o host remoto com autenticação?

    
por Shiplu Mokaddim 09.04.2012 / 10:59

4 respostas

4

Para permitir outros hosts, você pode apenas atualizar a linha:

Allow from localhost ip6-localhost

para ler:

Allow from localhost ip6-localhost 1.2.3.4 1.2.3

Para a parte de autenticação, você adiciona um bloco como:

AuthType Basic
AuthName "Restricted Files"
# (Following line optional)
AuthBasicProvider file
AuthUserFile /usr/local/apache/passwd/passwords
Require user rbowen 

O arquivo passwords precisa ser criado usando o utilitário htpasswd . Dê uma olhada em esta página para obter mais detalhes.

    
por 09.04.2012 / 11:09
4

Na sub-rotina <Location /server-status> , inclua as diretivas Allow from localhost e autenticação. A chave é usar Satisfy Any para especificar que as solicitações do host local podem ignorar a autenticação.

Editar: Exemplo explícito, conforme solicitado (apenas combina tudo o que todos disseram até agora):

<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Satisfy Any

    Allow from localhost ip6-localhost

    AuthType basic
    AuthName "Apache status"
    AuthUserFile /etc/apache2/passwd-server-status
    Require valid-user
</Location>
    
por 09.04.2012 / 11:18
1

Você pode usar algo semelhante:

<Location /server-status>
    SetHandler server-status
    AuthType basic
    AuthName "Apache status"
    AuthUserFile /etc/apache2/passwd-server-status
    Require valid-user
</Location>

Além disso, não se esqueça de criar o arquivo de senhas e se responsabilizar com o seguinte comando (substitua username pelo nome de usuário que preferir):

htpasswd -c /etc/apache2/passwd-server-status username
    
por 09.04.2012 / 11:11
-1

qual é o risco de o apache ter os manipuladores de status do servidor configurados? Eu posso ver esse arquivo no meu servidor     Status do servidor SetHandler     AuthType basic     AuthName "Status do Apache"     AuthUserFile / etc / apache2 / passwd-server-status     Exigir usuário válido

    
por 30.08.2017 / 14:33