Eu usei uma combinação de .htaccess e um script simples de php para fornecer uma solução que considero aceitável:
.htaccess
php_value auto_prepend_file /path/to/fail2ban.php
fail2ban.php
- Detecta a presença de
$_REQUEST['pma_{username|password'] - Valida
pma_{username|password}em relação àmysql.usertable - Registra um erro (formato abaixo) se os detalhes forem inválidos
Formato de log
phpMyadmin login failed with username: root; ip: 192.168.1.50; url: http://somedomain.com/phpmyadmin/index.php
phpMyadmin login failed with username: ; ip: 192.168.1.50; url: http://192.168.1.48/phpmyadmin/index.php
Esta solução é adequada para mim, pois posso integrá-la facilmente ao script bash que eu reuni para suavizar a configuração de fail2ban em nossos servidores.
Obrigado a todos que forneceram possíveis soluções!
Como acompanhamento, eu abri uma pergunta sobre os problemas que tive ao criar um filtro fail2ban personalizado para assistir & atue neste novo arquivo de log: Filtro customizado do fail2ban para tentativas de bruteforce do phpMyadmin .