Neste post será apresentado como configurar o bloqueio de métodos que muitas vezes não são utilizados e são considerados inseguros .
A requisição será re-escrita para o status 405 (Método não permitido) caso seja diferente de um método permitido (HEAD, GET e POST).
1) Ambiente :
Será utilizado o Apache do repositório no RHEL 7 para o lab .
yum install httpd -y
No link abaixo tem um versão pré compilada nos modos prefork e worker
http://fajlinux.com.br/linux/apache-2-4-12-pacote-compilado/
2) Regra de Rewrite :
Em meu teste adicionei a regra abaixo no /etc/httpd/conf/httpd.conf , porém poderia ser também aplicado em um arquivo de virtual host.
RewriteEngine On RewriteCond %{REQUEST_METHOD} !ˆ(GET|POST|HEAD) RewriteRule .* - [R=405,L]
3) Validando a solução :
curl -X PUT http://localhost
Teste do método não permitido
Teste do método permitido